<?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>188873</bug_id>
          
          <creation_ts>2018-08-22 17:45:44 -0700</creation_ts>
          <short_desc>[WHLSL] Add more functions to the standard library</short_desc>
          <delta_ts>2018-10-13 15:25:13 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>176199</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>fpizlo</cc>
    
    <cc>rmorisset</cc>
    
    <cc>tdenney</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1452911</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-22 17:45:44 -0700</bug_when>
    <thetext>[WHLSL] Add more functions to the standard library</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452912</commentid>
    <comment_count>1</comment_count>
      <attachid>347885</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-22 17:46:25 -0700</bug_when>
    <thetext>Created attachment 347885
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452945</commentid>
    <comment_count>2</comment_count>
      <attachid>347895</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-22 19:45:56 -0700</bug_when>
    <thetext>Created attachment 347895
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1452962</commentid>
    <comment_count>3</comment_count>
      <attachid>347901</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-22 22:34:17 -0700</bug_when>
    <thetext>Created attachment 347901
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453119</commentid>
    <comment_count>4</comment_count>
      <attachid>347935</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-23 10:41:43 -0700</bug_when>
    <thetext>Created attachment 347935
Matrix types compile</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453121</commentid>
    <comment_count>5</comment_count>
      <attachid>347936</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-23 10:42:28 -0700</bug_when>
    <thetext>Created attachment 347936
Matrix types compile</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453260</commentid>
    <comment_count>6</comment_count>
      <attachid>347963</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-23 15:45:17 -0700</bug_when>
    <thetext>Created attachment 347963
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453262</commentid>
    <comment_count>7</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-23 15:48:25 -0700</bug_when>
    <thetext>*** Bug 188685 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453347</commentid>
    <comment_count>8</comment_count>
      <attachid>347980</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-23 17:35:18 -0700</bug_when>
    <thetext>Created attachment 347980
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453399</commentid>
    <comment_count>9</comment_count>
      <attachid>347993</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-23 23:17:54 -0700</bug_when>
    <thetext>Created attachment 347993
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453452</commentid>
    <comment_count>10</comment_count>
      <attachid>348011</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-24 08:27:56 -0700</bug_when>
    <thetext>Created attachment 348011
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453614</commentid>
    <comment_count>11</comment_count>
      <attachid>348051</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-24 16:05:03 -0700</bug_when>
    <thetext>Created attachment 348051
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453617</commentid>
    <comment_count>12</comment_count>
      <attachid>348053</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-24 16:28:26 -0700</bug_when>
    <thetext>Created attachment 348053
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453677</commentid>
    <comment_count>13</comment_count>
      <attachid>348078</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-25 08:29:32 -0700</bug_when>
    <thetext>Created attachment 348078
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453697</commentid>
    <comment_count>14</comment_count>
      <attachid>348087</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-25 16:25:59 -0700</bug_when>
    <thetext>Created attachment 348087
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453702</commentid>
    <comment_count>15</comment_count>
      <attachid>348088</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-25 21:16:06 -0700</bug_when>
    <thetext>Created attachment 348088
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453710</commentid>
    <comment_count>16</comment_count>
      <attachid>348091</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-26 08:33:17 -0700</bug_when>
    <thetext>Created attachment 348091
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454118</commentid>
    <comment_count>17</comment_count>
      <attachid>348208</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-27 15:09:58 -0700</bug_when>
    <thetext>Created attachment 348208
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454161</commentid>
    <comment_count>18</comment_count>
      <attachid>348224</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-27 15:55:52 -0700</bug_when>
    <thetext>Created attachment 348224
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454767</commentid>
    <comment_count>19</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2018-08-29 07:55:03 -0700</bug_when>
    <thetext>R=me. I had a hard time setting r+, presumably due to the size of the patch. 

One bit of feedback: you could have written JS code that loops over types and operators to generate the repetitive WHLSL code. Particularly for the swizzle operators.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454841</commentid>
    <comment_count>20</comment_count>
      <attachid>348413</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-29 10:56:09 -0700</bug_when>
    <thetext>Created attachment 348413
Patch for committing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454843</commentid>
    <comment_count>21</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-29 10:57:23 -0700</bug_when>
    <thetext>(In reply to Filip Pizlo from comment #19)
&gt; R=me. I had a hard time setting r+, presumably due to the size of the patch. 
&gt; 
&gt; One bit of feedback: you could have written JS code that loops over types
&gt; and operators to generate the repetitive WHLSL code. Particularly for the
&gt; swizzle operators.

Done. Doing this reduces the patch size from 1.63MB to 222KB.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454847</commentid>
    <comment_count>22</comment_count>
      <attachid>348415</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-29 11:04:31 -0700</bug_when>
    <thetext>Created attachment 348415
Patch for committing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454851</commentid>
    <comment_count>23</comment_count>
      <attachid>348415</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-29 11:21:58 -0700</bug_when>
    <thetext>Comment on attachment 348415
Patch for committing

Clearing flags on attachment: 348415

Committed r235469: &lt;https://trac.webkit.org/changeset/235469&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454852</commentid>
    <comment_count>24</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-08-29 11:22:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454853</commentid>
    <comment_count>25</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-08-29 11:22:48 -0700</bug_when>
    <thetext>&lt;rdar://problem/43850256&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455040</commentid>
    <comment_count>26</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-29 17:09:30 -0700</bug_when>
    <thetext>*** Bug 177645 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1455063</commentid>
    <comment_count>27</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-08-29 17:24:08 -0700</bug_when>
    <thetext>*** Bug 188489 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468890</commentid>
    <comment_count>28</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-10-13 15:25:13 -0700</bug_when>
    <thetext>Migrated to https://github.com/gpuweb/WHLSL/issues/91</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347885</attachid>
            <date>2018-08-22 17:46:25 -0700</date>
            <delta_ts>2018-08-22 19:45:55 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-188873-20180822174624.patch</filename>
            <type>text/plain</type>
            <size>187222</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MTgzCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYjIyOTRjOGE5MzFkYTYyNDAwZGNmZjkyODJiMTA1YWNk
NjI3YTc1MC4uMzViMzBmNDFiMTIxMjg5ZDAxOTc3YzY0OGZlODJjMmE0MTY5MTBkYyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1
OCBAQAorMjAxOC0wOC0yMiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29t
PgorCisgICAgICAgIFtXSExTTF0gQWRkIG1vcmUgZnVuY3Rpb25zIHRvIHRoZSBzdGFuZGFyZCBs
aWJyYXJ5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODg4NzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qczoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzOgorICAgICAgICAoQnVpbHRp
blZlY3RvckNvbnN0cnVjdG9ycyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
Q2FsbEV4cHJlc3Npb24uanM6CisgICAgICAgIChDYWxsRXhwcmVzc2lvbi5wcm90b3R5cGUucmVz
b2x2ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhB
cmd1bWVudHMuanM6IENvcGllZCBmcm9tIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5
bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcy4KKyAgICAgICAgKGNoZWNrVHlw
ZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlci5wcm90b3R5cGUudmlzaXRU
eXBlUmVmKToKKyAgICAgICAgKGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1l
bnRzQ2hlY2tlcik6CisgICAgICAgIChjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyk6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qczoKKyAgICAgICAgKENoZWNrZXIu
cHJvdG90eXBlLnZpc2l0UHJvZ3JhbSk6CisgICAgICAgIChDaGVja2VyLnByb3RvdHlwZS52aXNp
dFR5cGVSZWYpOgorICAgICAgICAoQ2hlY2tlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKToK
KyAgICAgICAgKENoZWNrZXIucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgICog
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanM6
CisgICAgICAgIChGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5wcm90b3R5cGUudmlzaXRN
YXRyaXhUeXBlKToKKyAgICAgICAgKEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyKToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qczoKKyAg
ICAgICAgKGluZmVyVHlwZXNGb3JDYWxsKToKKyAgICAgICAgKGluZmVyVHlwZXNGb3JUeXBlQXJn
dW1lbnRzKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpz
OgorICAgICAgICAoSW50cmluc2ljcy5jYXN0KToKKyAgICAgICAgKEludHJpbnNpY3MuYml0d2lz
ZUNhc3QpOgorICAgICAgICAoSW50cmluc2ljcy5jYXN0VG9IYWxmKToKKyAgICAgICAgKEludHJp
bnNpY3MuKToKKyAgICAgICAgKEludHJpbnNpY3MpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL01hdHJpeFR5cGUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9PcGVyYXRvckJvb2wuanMuCisgICAgICAgIChNYXRyaXhUeXBlKToKKyAgICAg
ICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBlbGVtZW50VHlwZSk6CisgICAgICAgIChNYXRy
aXhUeXBlLnByb3RvdHlwZS5nZXQgbnVtUm93cyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3Rv
dHlwZS5nZXQgbnVtQ29sdW1ucyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3RvdHlwZS5nZXQg
bnVtUm93c1ZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBudW1Db2x1
bW5zVmFsdWUpOgorICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUuZ2V0IHNpemUpOgorICAg
ICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUudW5pZnlJbXBsKToKKyAgICAgICAgKE1hdHJpeFR5
cGUucHJvdG90eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUu
cHJvdG90eXBlLnRvU3RyaW5nKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9O
YW1lQ29udGV4dC5qczoKKyAgICAgICAgKE5hbWVDb250ZXh0LnByb3RvdHlwZS5hZGQpOgorICAg
ICAgICAoTmFtZUNvbnRleHQucHJvdG90eXBlLmdldCBsZXQpOgorICAgICAgICAoTmFtZUNvbnRl
eHQudW5kZXJseWluZ1RoaW5ncy5wcm90b3R5cGUuZWxzZSk6CisgICAgICAgIChOYW1lQ29udGV4
dC5wcm90b3R5cGUuU3ltYm9sLml0ZXJhdG9yKToKKyAgICAgICAgKE5hbWVDb250ZXh0KToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVzb2x2ZXIuanM6CisgICAgICAg
IChOYW1lUmVzb2x2ZXIucHJvdG90eXBlLnZpc2l0VHlwZVJlZik6CisgICAgICAgIChOYW1lUmVz
b2x2ZXIucHJvdG90eXBlLnZpc2l0Q2FsbEV4cHJlc3Npb24pOgorICAgICAgICAoTmFtZVJlc29s
dmVyKToKKyAgICAgICAgKE5hbWVSZXNvbHZlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpz
OgorICAgICAgICAoTmF0aXZlVHlwZSk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS5n
ZXQgdHlwZUFyZ3VtZW50cyk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS50b1N0cmlu
Zyk6CisgICAgICAgIChOYXRpdmVUeXBlLmNyZWF0ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanM6IFJlbmFtZWQgZnJvbSBUb29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXguanMuCisgICAgICAgIChP
cGVyYXRvckFuZGVySW5kZXhlci5mdW5jdGlvbnMpOgorICAgICAgICAoT3BlcmF0b3JBbmRlcklu
ZGV4ZXIpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ByZXBhcmUuanM6Cisg
ICAgICAgIChsZXQucHJlcGFyZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UHJvZ3JhbS5qczoKKyAgICAgICAgKFByb2dyYW0ucHJvdG90eXBlLmFkZCk6CisgICAgICAgIChQ
cm9ncmFtLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgIChQcm9ncmFtKToKKyAgICAgICAg
KiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzOiBSZW1vdmVk
LgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVOYW1lcy5qczoKKyAg
ICAgICAgKHJlc29sdmVOYW1lc0luVHlwZXMpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL1Jlc29sdmVPdmVybG9hZEltcGwuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUmVzb2x2ZVR5cGVEZWZzLmpzOgorICAgICAgICAocmVzb2x2ZVR5cGVEZWZzSW5U
eXBlcyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanM6Cisg
ICAgICAgIChSZXdyaXRlci5wcm90b3R5cGUudmlzaXRUeXBlUmVmKToKKyAgICAgICAgKFJld3Jp
dGVyLnByb3RvdHlwZS52aXNpdFZlY3RvclR5cGUpOgorICAgICAgICAoUmV3cml0ZXIucHJvdG90
eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChSZXdyaXRlcik6CisgICAgICAgICogV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbDoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9TdGFuZGFyZExpYnJhcnkuanM6CisgICAgICAgIChvcGVyYXRvci5ib29sKToK
KyAgICAgICAgKGJvb2wub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIub3BlcmF0b3IpOgorICAg
ICAgICAodXNob3J0Lm9wZXJhdG9yKToKKyAgICAgICAgKGNoYXIub3BlcmF0b3IpOgorICAgICAg
ICAoc2hvcnQub3BlcmF0b3IpOgorICAgICAgICAodWludC5vcGVyYXRvcik6CisgICAgICAgIChp
bnQub3BlcmF0b3IpOgorICAgICAgICAoaGFsZi5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdC5v
cGVyYXRvcik6CisgICAgICAgICh1Y2hhcjIub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIzLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVjaGFyNC5vcGVyYXRvcik6CisgICAgICAgICh1c2hvcnQyLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVzaG9ydDMub3BlcmF0b3IpOgorICAgICAgICAodXNob3J0NC5v
cGVyYXRvcik6CisgICAgICAgICh1aW50Mi5vcGVyYXRvcik6CisgICAgICAgICh1aW50My5vcGVy
YXRvcik6CisgICAgICAgICh1aW50NC5vcGVyYXRvcik6CisgICAgICAgIChjaGFyMi5vcGVyYXRv
cik6CisgICAgICAgIChjaGFyMy5vcGVyYXRvcik6CisgICAgICAgIChjaGFyNC5vcGVyYXRvcik6
CisgICAgICAgIChzaG9ydDIub3BlcmF0b3IpOgorICAgICAgICAoc2hvcnQzLm9wZXJhdG9yKToK
KyAgICAgICAgKHNob3J0NC5vcGVyYXRvcik6CisgICAgICAgIChpbnQyLm9wZXJhdG9yKToKKyAg
ICAgICAgKGludDMub3BlcmF0b3IpOgorICAgICAgICAoaW50NC5vcGVyYXRvcik6CisgICAgICAg
IChoYWxmMi5vcGVyYXRvcik6CisgICAgICAgIChoYWxmMy5vcGVyYXRvcik6CisgICAgICAgICho
YWxmNC5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdDIub3BlcmF0b3IpOgorICAgICAgICAoZmxv
YXQzLm9wZXJhdG9yKToKKyAgICAgICAgKGZsb2F0NC5vcGVyYXRvcik6CisgICAgICAgIChoYWxm
MngyLm9wZXJhdG9yKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1l
bnRDbG9uZXIuanM6CisgICAgICAgIChTdGF0ZW1lbnRDbG9uZXIucHJvdG90eXBlLnZpc2l0TmF0
aXZlVHlwZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURl
ZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzOgorICAgICAgICAoc3ludGhlc2l6ZURlZmF1bHRD
b25zdHJ1Y3Rvck9wZXJhdG9yLkZpbmRBbGxUeXBlcy5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBl
KToKKyAgICAgICAgKHN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5GaW5kQWxs
VHlwZXMucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChzeW50aGVzaXplRGVm
YXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuRmluZEFsbFR5cGVzKToKKyAgICAgICAgKHN5bnRoZXNp
emVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qczoKKyAgICAgICAgKHN5bnRoZXNp
emVTdHJ1Y3RBY2Nlc3NvcnMuY3JlYXRlVHlwZVJlZik6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVGVzdC5odG1sOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Rlc3QuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpzLgorICAgICAgICAoVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUpOgorICAgICAgICAoVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1
cmUucHJvdG90eXBlLmdldCB0eXBlKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29sdXRpb25G
YWlsdXJlLnByb3RvdHlwZS5nZXQgcmVhc29uKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVHlwZVJlZi5qczoKKyAgICAgICAgKFR5cGVSZWYud3JhcCk6CisgICAgICAg
IChUeXBlUmVmLnByb3RvdHlwZS5yZXNvbHZlKToKKyAgICAgICAgKFR5cGVSZWYucHJvdG90eXBl
LnRvU3RyaW5nKToKKyAgICAgICAgKFR5cGVSZWYpOgorICAgICAgICAoVHlwZVJlZi5pbnN0YW50
aWF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmlj
YXRpb25Db250ZXh0LmpzOgorICAgICAgICAoVW5pZmljYXRpb25Db250ZXh0LnByb3RvdHlwZS52
ZXJpZnkpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ZlY3RvclR5cGUuanM6
CisgICAgICAgIChWZWN0b3JUeXBlKToKKyAgICAgICAgKFZlY3RvclR5cGUucHJvdG90eXBlLmdl
dCBlbGVtZW50VHlwZSk6CisgICAgICAgIChWZWN0b3JUeXBlLnByb3RvdHlwZS5nZXQgbnVtRWxl
bWVudHMpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUuZ2V0IG51bUVsZW1lbnRzVmFs
dWUpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanM6CisgICAgICAgIChWaXNpdG9yLnBy
b3RvdHlwZS52aXNpdFR5cGVSZWYpOgorICAgICAgICAoVmlzaXRvci5wcm90b3R5cGUudmlzaXRO
YXRpdmVUeXBlKToKKyAgICAgICAgKFZpc2l0b3IucHJvdG90eXBlLnZpc2l0VmVjdG9yVHlwZSk6
CisgICAgICAgIChWaXNpdG9yLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5cGUpOgorICAgICAgICAo
VmlzaXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRtbDoK
KwogMjAxOC0wOC0yMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFJvbGwgb3V0IHIyMzUxMzkgYW5kIHIyMzUxNDYKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0FsbC5qcwppbmRleCA4MTUyNTI3M2FlNjVhMTQ4NjU5NjRhMTNkYTQ1Y2U5NGVm
MTA2ODRhLi5mMDk1ODc4NTE5ODU3YWM0ZGExZDc1NjZjYzZiOGRkYjQ1YzRkMmUwIDEwMDY0NAot
LS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9BbGwuanMKKysrIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzCkBAIC02MCw2ICs2MCw3IEBAIGxvYWQoIkNoZWNr
TG9vcHMuanMiKTsKIGxvYWQoIkNoZWNrUmVjdXJzaW9uLmpzIik7CiBsb2FkKCJDaGVja1JlY3Vy
c2l2ZVR5cGVzLmpzIik7CiBsb2FkKCJDaGVja1JldHVybnMuanMiKTsKK2xvYWQoIkNoZWNrVHlw
ZXNXaXRoQXJndW1lbnRzLmpzIik7CiBsb2FkKCJDaGVja1VucmVhY2hhYmxlQ29kZS5qcyIpOwog
bG9hZCgiQ2hlY2tXcmFwcGVkLmpzIik7CiBsb2FkKCJDaGVja2VyLmpzIik7CkBAIC0xMTIsNiAr
MTEzLDcgQEAgbG9hZCgiTG9naWNhbE5vdC5qcyIpOwogbG9hZCgiTG9vcENoZWNrZXIuanMiKTsK
IGxvYWQoIk1ha2VBcnJheVJlZkV4cHJlc3Npb24uanMiKTsKIGxvYWQoIk1ha2VQdHJFeHByZXNz
aW9uLmpzIik7Citsb2FkKCJNYXRyaXhUeXBlLmpzIik7CiBsb2FkKCJOYW1lQ29udGV4dC5qcyIp
OwogbG9hZCgiTmFtZUZpbmRlci5qcyIpOwogbG9hZCgiTmFtZVJlc29sdmVyLmpzIik7CkBAIC0x
MTksOSArMTIxLDggQEAgbG9hZCgiTmF0aXZlRnVuYy5qcyIpOwogbG9hZCgiTm9ybWFsVXNlUHJv
cGVydHlSZXNvbHZlci5qcyIpOwogbG9hZCgiTnVsbExpdGVyYWwuanMiKTsKIGxvYWQoIk51bGxU
eXBlLmpzIik7Ci1sb2FkKCJPcGVyYXRvckFuZGVySW5kZXguanMiKTsKK2xvYWQoIk9wZXJhdG9y
QW5kZXJJbmRleGVyLmpzIik7CiBsb2FkKCJPcGVyYXRvckFycmF5UmVmTGVuZ3RoLmpzIik7Ci1s
b2FkKCJPcGVyYXRvckJvb2wuanMiKTsKIGxvYWQoIk9yaWdpbktpbmQuanMiKTsKIGxvYWQoIk92
ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiKTsKIGxvYWQoIlBhcnNlLmpzIik7CkBAIC0xMzMs
NyArMTM0LDYgQEAgbG9hZCgiUHRyVHlwZS5qcyIpOwogbG9hZCgiUmVhZE1vZGlmeVdyaXRlRXhw
cmVzc2lvbi5qcyIpOwogbG9hZCgiUmVjdXJzaW9uQ2hlY2tlci5qcyIpOwogbG9hZCgiUmVjdXJz
aXZlVHlwZUNoZWNrZXIuanMiKTsKLWxvYWQoIlJlbW92ZVR5cGVBcmd1bWVudHMuanMiKTsKIGxv
YWQoIlJlc29sdmVOYW1lcy5qcyIpOwogbG9hZCgiUmVzb2x2ZU92ZXJsb2FkSW1wbC5qcyIpOwog
bG9hZCgiUmVzb2x2ZVByb3BlcnRpZXMuanMiKTsKQEAgLTE1MCwxMyArMTUwLDEzIEBAIGxvYWQo
IlN3aXRjaFN0YXRlbWVudC5qcyIpOwogbG9hZCgiU3ludGhlc2l6ZUFycmF5T3BlcmF0b3JMZW5n
dGguanMiKTsKIGxvYWQoIlN5bnRoZXNpemVFbnVtRnVuY3Rpb25zLmpzIik7CiBsb2FkKCJTeW50
aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzIik7Ci1sb2FkKCJTeW50aGVzaXplT3BlcmF0b3JCb29s
LmpzIik7CiBsb2FkKCJTeW50aGVzaXplQ29weUNvbnN0cnVjdG9yT3BlcmF0b3IuanMiKTsKIGxv
YWQoIlN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyIpOwogbG9hZCgiVHJh
cFN0YXRlbWVudC5qcyIpOwogbG9hZCgiVHlwZURlZi5qcyIpOwogbG9hZCgiVHlwZURlZlJlc29s
dmVyLmpzIik7CiBsb2FkKCJUeXBlUmVmLmpzIik7Citsb2FkKCJUeXBlT3ZlcmxvYWRSZXNvbHV0
aW9uRmFpbHVyZS5qcyIpOwogbG9hZCgiVHlwZWRWYWx1ZS5qcyIpOwogbG9hZCgiVWludExpdGVy
YWwuanMiKTsKIGxvYWQoIlVpbnRMaXRlcmFsVHlwZS5qcyIpOwpAQCAtMTcwLDQgKzE3MCw0IEBA
IGxvYWQoIldTeW50YXhFcnJvci5qcyIpOwogbG9hZCgiV1RyYXBFcnJvci5qcyIpOwogbG9hZCgi
V1R5cGVFcnJvci5qcyIpOwogbG9hZCgiV2hpbGVMb29wLmpzIik7Ci1sb2FkKCJXcmFwQ2hlY2tl
ci5qcyIpOwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xvYWQoIldyYXBDaGVja2VyLmpz
Iik7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVj
dG9yQ29uc3RydWN0b3JzLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRp
blZlY3RvckNvbnN0cnVjdG9ycy5qcwppbmRleCAyNzA0YjQzYTA2YzJmYWVkOWRmYTczZGVhZDMz
YmIwYzVjOTU1OTg1Li43NDhkZjBjOTRjMzJkMDdiYmMwMGE1ZTc1Y2E5YTc3ZTM2NjdhOGUxIDEw
MDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29u
c3RydWN0b3JzLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5W
ZWN0b3JDb25zdHJ1Y3RvcnMuanMKQEAgLTgxLDQgKzgxLDQgQEAgY2xhc3MgQnVpbHRpblZlY3Rv
ckNvbnN0cnVjdG9ycyB7CiAgICAgICAgIH07CiAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25E
YXRhID0gdGhpczsKICAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorfQpkaWZm
IC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2FsbEV4cHJlc3Npb24uanMg
Yi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcwppbmRleCBi
MjUzOThmMGIxYjZlYWRlMWI3OWFjOTBlNmE3NjI1MjVmODE5YmQ3Li4zYjE1NDU1OTkyZTY0ZTI2
NzdiYTBiMDNhYjY1NjhlZjQzZDVkODY1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcwpAQCAtNjQsNyArNjQsNiBAQCBjbGFzcyBDYWxsRXhw
cmVzc2lvbiBleHRlbmRzIEV4cHJlc3Npb24gewogICAgICAgICAgICAgICAgIG92ZXJsb2FkLmZ1
bmMgPSBmdW5jOwogICAgICAgICB9CiAKLQogICAgICAgICBpZiAoIW92ZXJsb2FkLmZ1bmMpIHsK
ICAgICAgICAgICAgIGZhaWx1cmVzLnB1c2goLi4ub3ZlcmxvYWQuZmFpbHVyZXMpOwogICAgICAg
ICAgICAgbGV0IG1lc3NhZ2UgPSAiRGlkIG5vdCBmaW5kIGZ1bmN0aW9uIG5hbWVkICIgKyB0aGlz
Lm5hbWUgKyAiIGZvciBjYWxsIHdpdGggIjsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL0NoZWNrVHlwZXNXaXRoQXJndW1lbnRzLmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMmY2
OTE0MmEzNTE3ZDI5NDkwMDUzMGMwY2YwNjZjOWJmZDIyNzdhZgotLS0gL2Rldi9udWxsCisrKyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrVHlwZXNXaXRoQXJndW1lbnRzLmpz
CkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBh
cmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv
dmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJP
VklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElO
RElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9S
CisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4g
CisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworZnVuY3Rpb24gY2hlY2tUeXBlc1dpdGhBcmd1bWVudHMo
cHJvZ3JhbSkKK3sKKyAgICBjbGFzcyBUeXBlV2l0aEFyZ3VtZW50c0NoZWNrZXIgZXh0ZW5kcyBW
aXNpdG9yIHsKKyAgICAgICAgdmlzaXRUeXBlUmVmKG5vZGUpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGlmICgobm9kZS5uYW1lID09ICJ2ZWN0b3IiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5n
dGggIT0gMikKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJtYXRyaXgiICYmIG5v
ZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMykKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5u
YW1lID09ICJUZXh0dXJlMUQiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAg
ICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJSV1RleHR1cmUxRCIgJiYgbm9kZS50eXBl
QXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0g
IlRleHR1cmUxREFycmF5IiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAg
ICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiUldUZXh0dXJlMURBcnJheSIgJiYgbm9kZS50
eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUg
PT0gIlRleHR1cmUyRCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAg
ICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlJXVGV4dHVyZTJEIiAmJiBub2RlLnR5cGVBcmd1
bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiVGV4
dHVyZTJEQXJyYXkiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAg
ICAgICAgICB8fCAobm9kZS5uYW1lID09ICJSV1RleHR1cmUyREFycmF5IiAmJiBub2RlLnR5cGVB
cmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAi
VGV4dHVyZTNEIiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAg
ICAgICAgfHwgKG5vZGUubmFtZSA9PSAiUldUZXh0dXJlM0QiICYmIG5vZGUudHlwZUFyZ3VtZW50
cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJl
Q3ViZSIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKSkKKyAgICAgICAgICAgICAg
ICB0aHJvdyBuZXcgRXJyb3IoYEJ1aWx0aW4gdHlwZSAke25vZGUubmFtZX0gc2hvdWxkIGFsd2F5
cyBoYXZlIHR5cGUgYXJndW1lbnRzLmApOworICAgICAgICB9CisgICAgfQorICAgIHByb2dyYW0u
dmlzaXQobmV3IFR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlcigpKTsKK30KKwpkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qcyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL0NoZWNrZXIuanMKaW5kZXggMWExNGM4NjZhY2VkNDExMmIxODBmNjkx
NTZjMDZkMmI2NjRkODdlMi4uMDAxODhkNzBlYmIxYTZiYzM0NTBmNDYzNjJkMWY5NmFlMzg3Y2Jh
MiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qcwor
KysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DaGVja2VyLmpzCkBAIC00MSw4ICs0
MSwxMyBAQCBjbGFzcyBDaGVja2VyIGV4dGVuZHMgVmlzaXRvciB7CiAgICAgICAgICAgICBzdGF0
ZW1lbnQudmlzaXQodGhpcyk7CiAgICAgICAgIH0KICAgICAgICAgCi0gICAgICAgIGZvciAobGV0
IHR5cGUgb2Ygbm9kZS50eXBlcy52YWx1ZXMoKSkKLSAgICAgICAgICAgIGRvU3RhdGVtZW50KHR5
cGUpOworICAgICAgICBmb3IgKGxldCB0eXBlIG9mIG5vZGUudHlwZXMudmFsdWVzKCkpIHsKKyAg
ICAgICAgICAgIGlmICh0eXBlIGluc3RhbmNlb2YgQXJyYXkpIHsKKyAgICAgICAgICAgICAgICBm
b3IgKGxldCBjb25zdGl0dWVudFR5cGUgb2YgdHlwZSkKKyAgICAgICAgICAgICAgICAgICAgZG9T
dGF0ZW1lbnQoY29uc3RpdHVlbnRUeXBlKTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAg
ICAgICAgIGRvU3RhdGVtZW50KHR5cGUpOworICAgICAgICB9CiAgICAgICAgIGZvciAobGV0IGZ1
bmNzIG9mIG5vZGUuZnVuY3Rpb25zLnZhbHVlcygpKSB7CiAgICAgICAgICAgICBmb3IgKGxldCBm
dW5jIG9mIGZ1bmNzKSB7CiAgICAgICAgICAgICAgICAgdGhpcy52aXNpdEZ1bmMoZnVuYyk7CkBA
IC0yNDcsNiArMjUyLDEwIEBAIGNsYXNzIENoZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICB7
CiAgICAgICAgIGlmICghbm9kZS50eXBlKQogICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJU
eXBlIHJlZmVyZW5jZSB3aXRob3V0IGEgdHlwZSBpbiBjaGVja2VyOiAiICsgbm9kZSArICIgYXQg
IiArIG5vZGUub3JpZ2luKTsKKyAgICAgICAgLy8gQWxsIHRoZSBzdHJ1Y3RzIHdpbGwgYmUgdmlz
aXRlZCBieSB2aXNpdFByb2dyYW0oKSBpdGVyYXRpbmcgdGhyb3VnaCBlYWNoIHRvcC1sZXZlbCB0
eXBlLgorICAgICAgICAvLyBXZSBkb24ndCB3YW50IHRvIHJlY3Vyc2UgaGVyZSBiZWNhdXNlIHRo
ZSBjb250ZW50cyBvZiBzdHJ1Y3RzIGNhbiByZWZlciB0byB0aGVtc2VsdmVzIChlLmcuIGEgbGlu
a2VkIGxpc3QpLAorICAgICAgICAvLyBhbmQgdGhpcyB3b3VsZCBjYW4gYW4gaW5maW5pdGUgbG9v
cC4KKyAgICAgICAgLy8gVHlwZWRlZnMgY2FuJ3QgcmVmZXIgdG8gdGhlbXNlbHZlcyBiZWNhdXNl
IHdlIGNoZWNrIHRoYXQgaW4gVHlwZURlZlJlc29sdmVyLgogICAgICAgICBpZiAoIShub2RlLnR5
cGUgaW5zdGFuY2VvZiBTdHJ1Y3RUeXBlKSkKICAgICAgICAgICAgIG5vZGUudHlwZS52aXNpdCh0
aGlzKTsKICAgICB9CkBAIC0yNTQsNiArMjYzLDcgQEAgY2xhc3MgQ2hlY2tlciBleHRlbmRzIFZp
c2l0b3IgewogICAgIHZpc2l0VmVjdG9yVHlwZShub2RlKQogICAgIHsKICAgICAgICAgbm9kZS5l
bGVtZW50VHlwZS52aXNpdCh0aGlzKTsKKyAgICAgICAgbm9kZS5udW1FbGVtZW50cy52aXNpdCh0
aGlzKTsKIAogICAgICAgICBsZXQgaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVtZW50VHlwZSA9IGZh
bHNlOwogICAgICAgICBmb3IgKGxldCB2ZWN0b3JFbGVtZW50VHlwZU5hbWUgb2YgVmVjdG9yRWxl
bWVudFR5cGVzKSB7CkBAIC0yNjgsNiArMjc4LDMzIEBAIGNsYXNzIENoZWNrZXIgZXh0ZW5kcyBW
aXNpdG9yIHsKIAogICAgICAgICBpZiAoIWlzS25vd25BbGxvd2VkVmVjdG9yRWxlbWVudFR5cGUp
CiAgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcihgJHtub2RlLmVsZW1lbnRUeXBlfSBp
cyBub3QgYSBwZXJtaXR0ZWQgdmVjdG9yIGVsZW1lbnQgdHlwZS5gKTsKKyAgICAgICAgaWYgKG5v
ZGUubnVtRWxlbWVudHNWYWx1ZSAhPSAyICYmIG5vZGUubnVtRWxlbWVudHNWYWx1ZSAhPSAzICYm
IG5vZGUubnVtRWxlbWVudHNWYWx1ZSAhPSA0KQorICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBl
RXJyb3IoYCR7bm9kZS50b1N0cmluZygpfTogJHtub2RlLm51bUVsZW1lbnRzVmFsdWV9IGlzIG5v
dCAyLCAzLCBvciA0LmApOworICAgIH0KKworICAgIHZpc2l0TWF0cml4VHlwZShub2RlKQorICAg
IHsKKyAgICAgICAgbm9kZS5lbGVtZW50VHlwZS52aXNpdCh0aGlzKTsKKyAgICAgICAgbm9kZS5u
dW1Sb3dzLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bUNvbHVtbnMudmlzaXQodGhpcyk7
CisKKyAgICAgICAgbGV0IGlzS25vd25BbGxvd2VkVmVjdG9yRWxlbWVudFR5cGUgPSBmYWxzZTsK
KyAgICAgICAgZm9yIChsZXQgZWxlbWVudFR5cGVOYW1lIG9mIFsiaGFsZiIsICJmbG9hdCJdKSB7
CisgICAgICAgICAgICBjb25zdCBlbGVtZW50VHlwZSA9IHRoaXMuX3Byb2dyYW0uZ2xvYmFsTmFt
ZUNvbnRleHQuZ2V0KFR5cGUsIGVsZW1lbnRUeXBlTmFtZSk7CisgICAgICAgICAgICBpZiAoIWVs
ZW1lbnRUeXBlKQorICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKGAke2VsZW1l
bnRUeXBlTmFtZX0gaXMgbm90IGEga25vd24gbmF0aXZlIHR5cGUgaW4gdGhlIHN0YW5kYXJkIGxp
YnJhcnkgb3IgaW50cmluc2ljcy5gKTsKKyAgICAgICAgICAgIGlmIChlbGVtZW50VHlwZS5lcXVh
bHMobm9kZS5lbGVtZW50VHlwZSkpIHsKKyAgICAgICAgICAgICAgICBpc0tub3duQWxsb3dlZFZl
Y3RvckVsZW1lbnRUeXBlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGlmICghaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVt
ZW50VHlwZSkKKyAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKGAke25vZGUuZWxlbWVu
dFR5cGV9IGlzIG5vdCBhIHBlcm1pdHRlZCB2ZWN0b3IgZWxlbWVudCB0eXBlLmApOworICAgICAg
ICBpZiAobm9kZS5udW1Sb3dzVmFsdWUgIT0gMiAmJiBub2RlLm51bVJvd3NWYWx1ZSAhPSAzICYm
IG5vZGUubnVtUm93c1ZhbHVlICE9IDQpCisgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJv
cihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUubnVtUm93c1ZhbHVlfSBpcyBub3QgMiwgMywg
b3IgNC5gKTsKKyAgICAgICAgaWYgKG5vZGUubnVtQ29sdW1uc1ZhbHVlICE9IDIgJiYgbm9kZS5u
dW1Db2x1bW5zVmFsdWUgIT0gMyAmJiBub2RlLm51bUNvbHVtbnNWYWx1ZSAhPSA0KQorICAgICAg
ICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7bm9kZS50b1N0cmluZygpfTogJHtub2RlLm51
bUNvbHVtbnNWYWx1ZX0gaXMgbm90IDIsIDMsIG9yIDQuYCk7CiAgICAgfQogICAgIAogICAgIHZp
c2l0QXJyYXlUeXBlKG5vZGUpCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9GbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzCmluZGV4IDE5NzBm
OGVkOTMyY2QzNTMwYTQ4ZGMzMWFmOGM5YzQyNDBkZGU4ZDAuLmUwZTE2MWZmMTBjY2QzYzA5OTJi
OWE5MjY0OWY0ZTNhMDBiYTExMTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzCkBAIC03
NCw1ICs3NCwxNyBAQCBjbGFzcyBGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlciBleHRlbmRz
IFZpc2l0b3IgewogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0KICAgICB9CisKKyAgICB2aXNp
dE1hdHJpeFR5cGUobm9kZSkKKyAgICB7CisgICAgICAgIGNvbnN0IGZpZWxkTmFtZXMgPSBbICJy
b3cwIiwgInJvdzEiLCAicm93MiIsICJyb3czIiBdOworICAgICAgICBmb3IgKGxldCBpID0gMDsg
aSA8IG5vZGUubnVtUm93c1ZhbHVlOyBpKyspIHsKKyAgICAgICAgICAgIHRoaXMuX3Jlc3VsdC5w
dXNoKHsKKyAgICAgICAgICAgICAgICBuYW1lOiB0aGlzLl9uYW1lLmpvaW4oIi4iKSArICIuIiAr
IGZpZWxkTmFtZXNbaV0sCisgICAgICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLl9vZmZzZXQgKyBp
ICogbm9kZS5lbGVtZW50VHlwZS5zaXplICogbm9kZS5udW1Db2x1bW5zVmFsdWUsCisgICAgICAg
ICAgICAgICAgdHlwZTogbm9kZS5lbGVtZW50VHlwZS5uYW1lICsgbm9kZS5udW1Db2x1bW5zVmFs
dWUudG9TdHJpbmcoKQorICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKyAgICB9CiB9CiAKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0luZmVyVHlwZXNGb3JDYWxs
LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJUeXBlc0ZvckNhbGwuanMK
aW5kZXggNWYzMmVkMWM0OTBhN2RmODk0MWU5MTljMTMwY2Y2NWVhYThiNmE0ZC4uYmNmZWI5ODZj
YWZmNDlmMDI4N2E4MzY3OGJmMTE1NjI4NDdmMDM4OSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJUeXBlc0ZvckNhbGwuanMKKysrIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJUeXBlc0ZvckNhbGwuanMKQEAgLTM2LDEyICszNiw4IEBA
IGZ1bmN0aW9uIGluZmVyVHlwZXNGb3JDYWxsKGZ1bmMsIGFyZ3VtZW50VHlwZXMsIHJldHVyblR5
cGUpCiAgICAgICAgIGlmICghYXJndW1lbnRUeXBlc1tpXS51bmlmeSh1bmlmaWNhdGlvbkNvbnRl
eHQsIGZ1bmMucGFyYW1ldGVyc1tpXS50eXBlKSkKICAgICAgICAgICAgIHJldHVybiB7ZmFpbHVy
ZTogbmV3IE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUoZnVuYywgIkFyZ3VtZW50ICMiICsgKGkg
KyAxKSArICIgIiArIChmdW5jLnBhcmFtZXRlcnNbaV0ubmFtZSA/ICJmb3IgcGFyYW1ldGVyICIg
KyBmdW5jLnBhcmFtZXRlcnNbaV0ubmFtZSArICIgIiA6ICIiKSArICJkb2VzIG5vdCBtYXRjaCAo
cGFzc2VkICIgKyBhcmd1bWVudFR5cGVzW2ldICsgIiwgcmVxdWlyZSAiICsgZnVuYy5wYXJhbWV0
ZXJzW2ldLnR5cGUgKyAiKSIpfTsKICAgICB9Ci0gICAgaWYgKHJldHVyblR5cGUgJiYgIXJldHVy
blR5cGUudW5pZnkodW5pZmljYXRpb25Db250ZXh0LCBmdW5jLnJldHVyblR5cGUpKSB7Ci0gICAg
ICAgIGlmIChmdW5jLnJldHVyblR5cGUudG9TdHJpbmcoKSA9PSAidmVjdG9yIikgewotICAgICAg
ICAgICAgcmV0dXJuVHlwZS51bmlmeSh1bmlmaWNhdGlvbkNvbnRleHQsIGZ1bmMucmV0dXJuVHlw
ZSkKLSAgICAgICAgfQorICAgIGlmIChyZXR1cm5UeXBlICYmICFyZXR1cm5UeXBlLnVuaWZ5KHVu
aWZpY2F0aW9uQ29udGV4dCwgZnVuYy5yZXR1cm5UeXBlKSkKICAgICAgICAgcmV0dXJuIHtmYWls
dXJlOiBuZXcgT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZShmdW5jLCAiUmV0dXJuIHR5cGUgIiAr
IGZ1bmMucmV0dXJuVHlwZSArICIgZG9lcyBub3QgbWF0Y2ggIiArIHJldHVyblR5cGUpfTsKLSAg
ICB9CiAgICAgbGV0IHZlcmlmaWNhdGlvblJlc3VsdCA9IHVuaWZpY2F0aW9uQ29udGV4dC52ZXJp
ZnkoKTsKICAgICBpZiAoIXZlcmlmaWNhdGlvblJlc3VsdC5yZXN1bHQpCiAgICAgICAgIHJldHVy
biB7ZmFpbHVyZTogbmV3IE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUoZnVuYywgdmVyaWZpY2F0
aW9uUmVzdWx0LnJlYXNvbil9OwpAQCAtNDksMyArNDUsMjEgQEAgZnVuY3Rpb24gaW5mZXJUeXBl
c0ZvckNhbGwoZnVuYywgYXJndW1lbnRUeXBlcywgcmV0dXJuVHlwZSkKICAgICByZXR1cm4ge2Z1
bmMsIHVuaWZpY2F0aW9uQ29udGV4dH07CiB9CiAKK2Z1bmN0aW9uIGluZmVyVHlwZXNGb3JUeXBl
QXJndW1lbnRzKHR5cGUsIHR5cGVBcmd1bWVudHMpCit7CisgICAgaWYgKHR5cGVBcmd1bWVudHMu
bGVuZ3RoICE9IHR5cGUudHlwZUFyZ3VtZW50cy5sZW5ndGgpCisgICAgICAgIHJldHVybiB7ZmFp
bHVyZTogbmV3IFR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKHR5cGUsICJXcm9uZyBudW1i
ZXIgb2YgYXJndW1lbnRzIChwYXNzZWQgIiArIHR5cGVBcmd1bWVudHMubGVuZ3RoICsgIiwgcmVx
dWlyZSAiICsgdHlwZS50eXBlQXJndW1lbnRzLmxlbmd0aCArICIpIil9OworICAgIGxldCB1bmlm
aWNhdGlvbkNvbnRleHQgPSBuZXcgVW5pZmljYXRpb25Db250ZXh0KCk7CisKKyAgICBmb3IgKGxl
dCBpID0gMDsgaSA8IHR5cGVBcmd1bWVudHMubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgaWYgKCF0
eXBlQXJndW1lbnRzW2ldKQorICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJOdWxsIHR5cGUg
YXJndW1lbnQgYXQgaSA9ICIgKyBpKTsKKyAgICAgICAgaWYgKCF0eXBlQXJndW1lbnRzW2ldLnVu
aWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgdHlwZS50eXBlQXJndW1lbnRzW2ldKSkKKyAgICAgICAg
ICAgIHJldHVybiB7ZmFpbHVyZTogbmV3IFR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKHR5
cGUsICJBcmd1bWVudCAjIiArIChpICsgMSkgKyAiICIgKyAodHlwZS50eXBlQXJndW1lbnRzW2ld
Lm5hbWUgPyAiZm9yIHBhcmFtZXRlciAiICsgdHlwZS50eXBlQXJndW1lbnRzW2ldLm5hbWUgKyAi
ICIgOiAiIikgKyAiZG9lcyBub3QgbWF0Y2ggKHBhc3NlZCAiICsgdHlwZUFyZ3VtZW50c1tpXSAr
ICIsIHJlcXVpcmUgIiArIHR5cGUudHlwZUFyZ3VtZW50c1tpXS50eXBlICsgIikiKX07CisgICAg
fQorICAgIGxldCB2ZXJpZmljYXRpb25SZXN1bHQgPSB1bmlmaWNhdGlvbkNvbnRleHQudmVyaWZ5
KCk7CisgICAgaWYgKCF2ZXJpZmljYXRpb25SZXN1bHQucmVzdWx0KQorICAgICAgICByZXR1cm4g
e2ZhaWx1cmU6IG5ldyBUeXBlT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZSh0eXBlLCB2ZXJpZmlj
YXRpb25SZXN1bHQucmVhc29uKX07CisKKyAgICByZXR1cm4ge3R5cGUsIHVuaWZpY2F0aW9uQ29u
dGV4dH07Cit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRy
aW5zaWNzLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW50cmluc2ljcy5qcwpp
bmRleCA1MGQ0MGMwYzBlNDdlMTEyYmM3NGNjZmNjYjcwNDk0MjcxMTZiMGZiLi4wMGQwODQzMTc4
ZjE4NDE5ZDE4NDQyM2ExM2YwOTY5YjMzZjg1NjU3IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0ludHJpbnNpY3MuanMKQEAgLTMzLDE1ICszMyw3IEBAIGNsYXNzIEludHJpbnNp
Y3MgewogICAgICAgICAvLyB0byBjYXRjaCB0aGUgaW50cmluc2ljcyBtdXN0IGJlIGJhc2VkIG9u
IHRoZSB0eXBlIG5hbWVzIHRoYXQgU3RhbmRhcmRMaWJyYXJ5LmpzIHVzZXMuCiAgICAgICAgIC8v
IEZvciBleGFtcGxlLCBpZiBhIG5hdGl2ZSBmdW5jdGlvbiBpcyBkZWNsYXJlZCB1c2luZyAiaW50
IiByYXRoZXIgdGhhbiAiaW50IiwgdGhlbiB3ZSBtdXN0CiAgICAgICAgIC8vIHVzZSAiaW50IiBo
ZXJlLCBzaW5jZSB3ZSBkb24ndCB5ZXQga25vdyB0aGF0IHRoZXkgYXJlIHRoZSBzYW1lIHR5cGUu
Ci0gICAgICAgIAotICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB0
eXBlZGVmIHZvaWQiLAotICAgICAgICAgICAgdHlwZSA9PiB7Ci0gICAgICAgICAgICAgICAgdGhp
cy52b2lkID0gdHlwZTsKLSAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAwOwotICAgICAgICAg
ICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoKSA9PiB7IH07Ci0gICAgICAgICAg
ICB9KTsKLSAgICAgICAgCisKICAgICAgICAgZnVuY3Rpb24gaXNCaXR3aXNlRXF1aXZhbGVudChs
ZWZ0LCByaWdodCkKICAgICAgICAgewogICAgICAgICAgICAgbGV0IGRvdWJsZUFycmF5ID0gbmV3
IEZsb2F0NjRBcnJheSgxKTsKQEAgLTU2LDU4ICs0OCw4MyBAQCBjbGFzcyBJbnRyaW5zaWNzIHsK
ICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB9CiAKKyAgICAgICAgZnVuY3Rpb24g
Y2FzdCh0eXBlZEFycmF5Q29uc3RydWN0b3IsIG51bWJlcikKKyAgICAgICAgeworICAgICAgICAg
ICAgdmFyIGFycmF5ID0gbmV3IHR5cGVkQXJyYXlDb25zdHJ1Y3RvcigxKTsKKyAgICAgICAgICAg
IGFycmF5WzBdID0gbnVtYmVyOworICAgICAgICAgICAgcmV0dXJuIGFycmF5WzBdOworICAgICAg
ICB9CisKKyAgICAgICAgZnVuY3Rpb24gYml0d2lzZUNhc3QodHlwZWRBcnJheUNvbnN0cnVjdG9y
MSwgdHlwZWRBcnJheUNvbnN0cnVjdG9yMiwgdmFsdWUpCisgICAgICAgIHsKKyAgICAgICAgICAg
IGxldCB0eXBlZEFycmF5MSA9IG5ldyB0eXBlZEFycmF5Q29uc3RydWN0b3IxKDEpOworICAgICAg
ICAgICAgbGV0IHR5cGVkQXJyYXkyID0gbmV3IHR5cGVkQXJyYXlDb25zdHJ1Y3RvcjIodHlwZWRB
cnJheTEuYnVmZmVyKTsKKyAgICAgICAgICAgIHR5cGVkQXJyYXkxWzBdID0gdmFsdWU7CisgICAg
ICAgICAgICByZXR1cm4gdHlwZWRBcnJheTJbMF07CisgICAgICAgIH0KKworICAgICAgICBmdW5j
dGlvbiBjYXN0VG9IYWxmKG51bWJlcikKKyAgICAgICAgeworICAgICAgICAgICAgLy8gRklYTUU6
IE1ha2UgdGhpcyBtYXRoIG9iZXkgSUVFRSA3NTQuCisgICAgICAgICAgICBpZiAoTnVtYmVyLmlz
TmFOKG51bWJlcikpCisgICAgICAgICAgICAgICByZXR1cm4gbnVtYmVyCisgICAgICAgICAgICBp
ZiAobnVtYmVyID4gNjU1MDQpCisgICAgICAgICAgICAgICAgcmV0dXJuIE51bWJlci5QT1NJVElW
RV9JTkZJTklUWTsKKyAgICAgICAgICAgIGlmIChudW1iZXIgPCAtNjU1MDQpCisgICAgICAgICAg
ICAgICAgcmV0dXJuIE51bWJlci5ORUdBVElWRV9JTkZJTklUWTsKKyAgICAgICAgICAgIGlmIChu
dW1iZXIgPiAwICYmIG51bWJlciA8IE1hdGgucG93KDIsIC0yNCkpCisgICAgICAgICAgICAgICAg
cmV0dXJuIDA7CisgICAgICAgICAgICBpZiAobnVtYmVyIDwgMCAmJiBudW1iZXIgPiAtTWF0aC5w
b3coMiwgLTI0KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTA7CisgICAgICAgICAgICBsZXQg
ZG91YmxlQXJyYXkgPSBuZXcgRmxvYXQ2NEFycmF5KDEpOworICAgICAgICAgICAgbGV0IHVpbnRB
cnJheSA9IG5ldyBVaW50OEFycmF5KGRvdWJsZUFycmF5LmJ1ZmZlcik7CisgICAgICAgICAgICBk
b3VibGVBcnJheVswXSA9IG51bWJlcjsKKyAgICAgICAgICAgIGxldCBzaWduID0gdWludEFycmF5
WzddICYgMHg4MDsKKyAgICAgICAgICAgIGxldCBleHBvbmVudCA9ICgodWludEFycmF5WzddICYg
MHg3ZikgPDwgNCkgfCAoKHVpbnRBcnJheVs2XSAmIDB4ZjApID4+PiA0KTsKKyAgICAgICAgICAg
IGxldCBzaWduaWZpY2FuZCA9ICgodWludEFycmF5WzZdICYgMHgwZikgPDwgNikgfCAoKHVpbnRB
cnJheVs1XSAmIDB4ZmMpID4+PiAyKTsKKworICAgICAgICAgICAgaWYgKChleHBvbmVudCAtIDEw
MjMpIDwgLTE0KSB7CisgICAgICAgICAgICAgICAgZXhwb25lbnQgPSAwOworICAgICAgICAgICAg
ICAgIHNpZ25pZmljYW5kID0gKE1hdGguYWJzKG51bWJlcikgKiBNYXRoLnBvdygyLCAyNCkpID4+
PiAwOworICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IE1hdGgucG93KDIsIC0xNCkgKiBzaWdu
aWZpY2FuZCAvIDEwMjQ7CisgICAgICAgICAgICAgICAgaWYgKHNpZ24gIT0gMCkKKyAgICAgICAg
ICAgICAgICAgICAgdmFsdWUgKj0gLTE7CisgICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlOwor
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICBkb3VibGVBcnJheVswXSA9IDA7CisKKyAgICAg
ICAgICAgIHVpbnRBcnJheVs3XSB8PSBzaWduOworICAgICAgICAgICAgdWludEFycmF5WzddIHw9
IChleHBvbmVudCA+Pj4gNCk7CisgICAgICAgICAgICB1aW50QXJyYXlbNl0gfD0gKChleHBvbmVu
dCA8PCA0KSAmIDB4ZjApOworICAgICAgICAgICAgdWludEFycmF5WzZdIHw9IChzaWduaWZpY2Fu
ZCA+Pj4gNik7CisgICAgICAgICAgICB1aW50QXJyYXlbNV0gfD0gKChzaWduaWZpY2FuZCA8PCAy
KSAmIDB4ZmMpOworCisgICAgICAgICAgICByZXR1cm4gZG91YmxlQXJyYXlbMF07CisgICAgICAg
IH0KKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVm
IGludCIsCisgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgdm9pZCIsCiAgICAgICAgICAgICB0
eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0aGlzLmludCA9IHR5cGU7Ci0gICAgICAgICAgICAg
ICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc0ludCA9
IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7Ci0gICAgICAgICAg
ICAgICAgdHlwZS5pc1NpZ25lZCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5jYW5SZXBy
ZXNlbnQgPSB2YWx1ZSA9PiBpc0JpdHdpc2VFcXVpdmFsZW50KHZhbHVlIHwgMCwgdmFsdWUpOwot
ICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7Ci0gICAgICAgICAgICAgICAgdHlwZS5kZWZh
dWx0VmFsdWUgPSAwOwotICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRlTGl0ZXJhbCA9IChvcmln
aW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwgdmFsdWUgfCAwLCB0eXBl
KTsKLSAgICAgICAgICAgICAgICB0eXBlLnN1Y2Nlc3NvclZhbHVlID0gdmFsdWUgPT4gKHZhbHVl
ICsgMSkgfCAwOwotICAgICAgICAgICAgICAgIHR5cGUudmFsdWVzRXF1YWwgPSAoYSwgYikgPT4g
YSA9PT0gYjsKLSAgICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1
ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7Ci0gICAgICAgICAgICAgICAg
dHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWUgfCAwOwotICAg
ICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9PiB2
YWx1ZSB8IDA7Ci0gICAgICAgICAgICAgICAgdHlwZS5hbGxWYWx1ZXMgPSBmdW5jdGlvbiooKSB7
IAotICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSAweGZmZmZmZmZmOyAr
K2kpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IGkgfCAwOwotICAgICAg
ICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiB2YWx1ZSwgbmFtZTogdmFsdWV9OwotICAg
ICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICAgICB0
aGlzLnZvaWQgPSB0eXBlOworICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDA7CisgICAgICAg
ICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9ICgpID0+IHsgfTsKICAgICAgICAg
ICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHR5
cGVkZWYgdWludCIsCisgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgYm9vbCIsCiAgICAgICAg
ICAgICB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0aGlzLnVpbnQgPSB0eXBlOworICAgICAg
ICAgICAgICAgIHRoaXMuYm9vbCA9IHR5cGU7CiAgICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1p
dGl2ZSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc0ludCA9IHRydWU7Ci0gICAgICAg
ICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc1Np
Z25lZCA9IGZhbHNlOwotICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUg
PT4gaXNCaXR3aXNlRXF1aXZhbGVudCh2YWx1ZSA+Pj4gMCwgdmFsdWUpOwogICAgICAgICAgICAg
ICAgIHR5cGUuc2l6ZSA9IDE7Ci0gICAgICAgICAgICAgICAgdHlwZS5kZWZhdWx0VmFsdWUgPSAw
OwotICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRlTGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9
PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwgdmFsdWUgPj4+IDAsIHR5cGUpOwotICAgICAg
ICAgICAgICAgIHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiAodmFsdWUgKyAxKSA+Pj4g
MDsKLSAgICAgICAgICAgICAgICB0eXBlLnZhbHVlc0VxdWFsID0gKGEsIGIpID0+IGEgPT09IGI7
Ci0gICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9m
ZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOwotICAgICAgICAgICAgICAgIHR5cGUuZm9y
bWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlID4+PiAwOwotICAgICAgICAg
ICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSA+
Pj4gMDsKLSAgICAgICAgICAgICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1bmN0aW9uKigpIHsgCi0g
ICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDB4ZmZmZmZmZmY7ICsraSkK
LSAgICAgICAgICAgICAgICAgICAgICAgIHlpZWxkIHt2YWx1ZTogaSwgbmFtZTogaX07Ci0gICAg
ICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVl
ID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgZmFsc2UpOwogICAgICAg
ICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUg
dHlwZWRlZiB1Y2hhciIsCiAgICAgICAgICAgICB0eXBlID0+IHsKICAgICAgICAgICAgICAgICB0
aGlzLnVjaGFyID0gdHlwZTsKKyAgICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1
ZTsKICAgICAgICAgICAgICAgICB0eXBlLmlzSW50ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICB0
eXBlLmlzTnVtYmVyID0gdHJ1ZTsKICAgICAgICAgICAgICAgICB0eXBlLmlzU2lnbmVkID0gZmFs
c2U7CkBAIC0xMjYsMzg0ICsxNDMsNzU3IEBAIGNsYXNzIEludHJpbnNpY3MgewogICAgICAgICAg
ICAgICAgIH07CiAgICAgICAgICAgICB9KTsKIAorCisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0
KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiB1c2hvcnQiLAorICAgICAgICAgICAgIHR5
cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLnVzaG9ydCA9IHR5cGU7CisgICAgICAgICAg
ICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlz
SW50ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7CisgICAg
ICAgICAgICAgICAgIHR5cGUuaXNTaWduZWQgPSBmYWxzZTsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBpc0JpdHdpc2VFcXVpdmFsZW50KHZhbHVlICYgMHhm
ZmZmLCB2YWx1ZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7CisgICAgICAgICAg
ICAgICAgIHR5cGUuZGVmYXVsdFZhbHVlID0gMDsKKyAgICAgICAgICAgICAgICAgdHlwZS5jcmVh
dGVMaXRlcmFsID0gKG9yaWdpbiwgdmFsdWUpID0+IEludExpdGVyYWwud2l0aFR5cGUob3JpZ2lu
LCB2YWx1ZSAmIDB4ZmZmZiwgdHlwZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29y
VmFsdWUgPSB2YWx1ZSA9PiAodmFsdWUgKyAxKSAmIDB4ZmZmZjsKKyAgICAgICAgICAgICAgICAg
dHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09PSBiOworICAgICAgICAgICAgICAgICB0
eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0
KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tSW50TGl0
ZXJhbCA9IHZhbHVlID0+IHZhbHVlICYgMHhmZmZmOworICAgICAgICAgICAgICAgICB0eXBlLmZv
cm1hdFZhbHVlRnJvbVVpbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWUgJiAweGZmZmY7CisgICAg
ICAgICAgICAgICAgIHR5cGUuYWxsVmFsdWVzID0gZnVuY3Rpb24qKCkgeworICAgICAgICAgICAg
ICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPD0gMHhmZmZmOyArK2kpCisgICAgICAgICAgICAg
ICAgICAgICAgICAgeWllbGQge3ZhbHVlOiBpLCBuYW1lOiBpfTsKKyAgICAgICAgICAgICAgICAg
fTsKKyAgICAgICAgICAgICB9KTsKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAg
ICAgIm5hdGl2ZSB0eXBlZGVmIGZsb2F0IiwKLSAgICAgICAgICAgIHR5cGUgPT4gewotICAgICAg
ICAgICAgICAgIHRoaXMuZmxvYXQgPSB0eXBlOwotICAgICAgICAgICAgICAgIHR5cGUuaXNQcmlt
aXRpdmUgPSB0cnVlOwotICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7Ci0gICAgICAgICAg
ICAgICAgdHlwZS5pc0Zsb2F0aW5nID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmlzTnVt
YmVyID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2VudCA9IHZhbHVlID0+
IGlzQml0d2lzZUVxdWl2YWxlbnQoTWF0aC5mcm91bmQodmFsdWUpLCB2YWx1ZSk7Ci0gICAgICAg
ICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4g
YnVmZmVyLnNldChvZmZzZXQsIDApOwotICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVG
cm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOwotICAgICAgICAgICAgICAgIHR5cGUuZm9y
bWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZTsKLSAgICAgICAgICAgICAg
ICB0eXBlLmZvcm1hdFZhbHVlRnJvbUZsb2F0TGl0ZXJhbCA9IHZhbHVlID0+IE1hdGguZnJvdW5k
KHZhbHVlKTsKLSAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiB1
aW50IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAgdGhpcy51aW50
ID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7CisgICAg
ICAgICAgICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlz
TnVtYmVyID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1NpZ25lZCA9IGZhbHNlOwor
ICAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2VudCA9IHZhbHVlID0+IGlzQml0d2lzZUVx
dWl2YWxlbnQodmFsdWUgPj4+IDAsIHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5zaXpl
ID0gMTsKKyAgICAgICAgICAgICAgICAgdHlwZS5kZWZhdWx0VmFsdWUgPSAwOworICAgICAgICAg
ICAgICAgICB0eXBlLmNyZWF0ZUxpdGVyYWwgPSAob3JpZ2luLCB2YWx1ZSkgPT4gSW50TGl0ZXJh
bC53aXRoVHlwZShvcmlnaW4sIHZhbHVlID4+PiAwLCB0eXBlKTsKKyAgICAgICAgICAgICAgICAg
dHlwZS5zdWNjZXNzb3JWYWx1ZSA9IHZhbHVlID0+ICh2YWx1ZSArIDEpID4+PiAwOworICAgICAg
ICAgICAgICAgICB0eXBlLnZhbHVlc0VxdWFsID0gKGEsIGIpID0+IGEgPT09IGI7CisgICAgICAg
ICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVyLCBvZmZzZXQpID0+
IGJ1ZmZlci5zZXQob2Zmc2V0LCAwKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1
ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWUgPj4+IDA7CisgICAgICAgICAgICAgICAg
IHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSA+Pj4gMDsK
KyAgICAgICAgICAgICAgICAgdHlwZS5hbGxWYWx1ZXMgPSBmdW5jdGlvbiooKSB7CisgICAgICAg
ICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSAweGZmZmZmZmZmOyArK2kpCisgICAg
ICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiBpLCBuYW1lOiBpfTsKKyAgICAgICAg
ICAgICAgICAgfTsKKyAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGJvb2wiLAotICAgICAgICAgICAgdHlwZSA9PiB7
Ci0gICAgICAgICAgICAgICAgdGhpcy5ib29sID0gdHlwZTsKLSAgICAgICAgICAgICAgICB0eXBl
LmlzUHJpbWl0aXZlID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOwotICAg
ICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVyLCBvZmZzZXQp
ID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCBmYWxzZSk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAg
ICAgICAibmF0aXZlIHR5cGVkZWYgY2hhciIsCisgICAgICAgICAgICAgdHlwZSA9PiB7CisgICAg
ICAgICAgICAgICAgIHRoaXMuY2hhciA9IHR5cGU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNQ
cmltaXRpdmUgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzSW50ID0gdHJ1ZTsKKyAg
ICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5
cGUuaXNTaWduZWQgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2VudCA9
IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQoY2FzdChJbnQ4QXJyYXksIHZhbHVlKSwgdmFs
dWUpOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOworICAgICAgICAgICAgICAgICB0
eXBlLmRlZmF1bHRWYWx1ZSA9IDA7CisgICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRlTGl0ZXJh
bCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwgY2FzdChJ
bnQ4QXJyYXksIHZhbHVlKSwgdHlwZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29y
VmFsdWUgPSB2YWx1ZSA9PiBjYXN0KEludDhBcnJheSwgdmFsdWUgKyAxKTsKKyAgICAgICAgICAg
ICAgICAgdHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09PSBiOworICAgICAgICAgICAg
ICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZm
ZXIuc2V0KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9t
SW50TGl0ZXJhbCA9IHZhbHVlID0+IGNhc3QoSW50OEFycmF5LCB2YWx1ZSk7CisgICAgICAgICAg
ICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9PiBjYXN0KElu
dDhBcnJheSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1bmN0
aW9uKigpIHsKKyAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDB4ZmY7
ICsraSkgeworICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IGNhc3QoSW50OEFy
cmF5LCBpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICB5aWVsZCB7dmFsdWU6IHZhbHVlLCBu
YW1lOiB2YWx1ZX07CisgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgIH07
CisgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAg
ICAibmF0aXZlIHR5cGVkZWYgc2hvcnQiLAorICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAg
ICAgICAgICAgICB0aGlzLnNob3J0ID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1By
aW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOworICAg
ICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5pc1NpZ25lZCA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50ID0g
dmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudChjYXN0KEludDE2QXJyYXksIHZhbHVlKSwgdmFs
dWUpOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOworICAgICAgICAgICAgICAgICB0
eXBlLmRlZmF1bHRWYWx1ZSA9IDA7CisgICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRlTGl0ZXJh
bCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwgY2FzdChJ
bnQxNkFycmF5LCB2YWx1ZSksIHR5cGUpOworICAgICAgICAgICAgICAgICB0eXBlLnN1Y2Nlc3Nv
clZhbHVlID0gdmFsdWUgPT4gY2FzdChJbnQxNkFycmF5LCB2YWx1ZSArIDEpOworICAgICAgICAg
ICAgICAgICB0eXBlLnZhbHVlc0VxdWFsID0gKGEsIGIpID0+IGEgPT09IGI7CisgICAgICAgICAg
ICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVyLCBvZmZzZXQpID0+IGJ1
ZmZlci5zZXQob2Zmc2V0LCAwKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZy
b21JbnRMaXRlcmFsID0gdmFsdWUgPT4gY2FzdChJbnQxNkFycmF5LCB2YWx1ZSk7CisgICAgICAg
ICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9PiBjYXN0
KEludDE2QXJyYXksIHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5hbGxWYWx1ZXMgPSBm
dW5jdGlvbiooKSB7CisgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSAw
eGZmZmY7ICsraSkgeworICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IGNhc3Qo
SW50MTZBcnJheSwgaSk7CisgICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiB2
YWx1ZSwgbmFtZTogdmFsdWV9OworICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgICB9OworICAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAg
ICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGludCIsCisgICAgICAgICAgICAgdHlwZSA9PiB7Cisg
ICAgICAgICAgICAgICAgIHRoaXMuaW50ID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5p
c1ByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOwor
ICAgICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAg
dHlwZS5pc1NpZ25lZCA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50
ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudCh2YWx1ZSB8IDAsIHZhbHVlKTsKKyAgICAg
ICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKKyAgICAgICAgICAgICAgICAgdHlwZS5kZWZhdWx0
VmFsdWUgPSAwOworICAgICAgICAgICAgICAgICB0eXBlLmNyZWF0ZUxpdGVyYWwgPSAob3JpZ2lu
LCB2YWx1ZSkgPT4gSW50TGl0ZXJhbC53aXRoVHlwZShvcmlnaW4sIHZhbHVlIHwgMCwgdHlwZSk7
CisgICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiAodmFsdWUg
KyAxKSB8IDA7CisgICAgICAgICAgICAgICAgIHR5cGUudmFsdWVzRXF1YWwgPSAoYSwgYikgPT4g
YSA9PT0gYjsKKyAgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChi
dWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOworICAgICAgICAgICAgICAg
ICB0eXBlLmZvcm1hdFZhbHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSB8IDA7Cisg
ICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9
PiB2YWx1ZSB8IDA7CisgICAgICAgICAgICAgICAgIHR5cGUuYWxsVmFsdWVzID0gZnVuY3Rpb24q
KCkgeworICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPD0gMHhmZmZmZmZm
ZjsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gaSB8IDA7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiB2YWx1ZSwgbmFtZTogdmFsdWV9
OworICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICB9OworICAgICAgICAg
ICAgIH0pOworCisgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUg
dHlwZWRlZiBoYWxmIiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAg
dGhpcy5oYWxmID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRy
dWU7CisgICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7CisgICAgICAgICAgICAgICAgIHR5
cGUuaXNGbG9hdGluZyA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNOdW1iZXIgPSB0
cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2VudCA9IHZhbHVlID0+IGlzQml0
d2lzZUVxdWl2YWxlbnQoY2FzdFRvSGFsZih2YWx1ZSksIHZhbHVlKTsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVy
LnNldChvZmZzZXQsIDApOworICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUlu
dExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRW
YWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOworICAgICAgICAgICAgICAgICB0
eXBlLmZvcm1hdFZhbHVlRnJvbUZsb2F0TGl0ZXJhbCA9IHZhbHVlID0+IGNhc3RUb0hhbGYodmFs
dWUpOworICAgICAgICAgICAgIH0pOworCisgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAg
ICAgICAgICJuYXRpdmUgdHlwZWRlZiBmbG9hdCIsCisgICAgICAgICAgICAgdHlwZSA9PiB7Cisg
ICAgICAgICAgICAgICAgIHRoaXMuZmxvYXQgPSB0eXBlOworICAgICAgICAgICAgICAgICB0eXBl
LmlzUHJpbWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKKyAg
ICAgICAgICAgICAgICAgdHlwZS5pc0Zsb2F0aW5nID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAg
dHlwZS5pc051bWJlciA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50
ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudChNYXRoLmZyb3VuZCh2YWx1ZSksIHZhbHVl
KTsKKyAgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIs
IG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOworICAgICAgICAgICAgICAgICB0eXBl
LmZvcm1hdFZhbHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZTsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOwor
ICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUZsb2F0TGl0ZXJhbCA9IHZhbHVl
ID0+IE1hdGguZnJvdW5kKHZhbHVlKTsKKyAgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlz
Ll9tYXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBhdG9taWNfaW50IiwKKyAg
ICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAgdGhpcy5hdG9taWNfaW50ID0g
dHlwZTsKKyAgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAg
ICAgICAgICJuYXRpdmUgdHlwZWRlZiBhdG9taWNfdWludCIsCisgICAgICAgICAgICAgdHlwZSA9
PiB7CisgICAgICAgICAgICAgICAgIHRoaXMuYXRvbWljX3VpbnQgPSB0eXBlOworICAgICAgICAg
ICAgIH0pOwogCiAgICAgICAgIGZvciAobGV0IHZlY3RvclR5cGUgb2YgVmVjdG9yRWxlbWVudFR5
cGVzKSB7Ci0gICAgICAgICAgICBmb3IgKGxldCB2ZWN0b3JTaXplIG9mIFZlY3RvckVsZW1lbnRT
aXplcykKLSAgICAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGBuYXRpdmUgdHlwZWRlZiB2ZWN0
b3I8JHt2ZWN0b3JUeXBlfSwgJHt2ZWN0b3JTaXplfT5gLCB0eXBlID0+IHt9KTsKKyAgICAgICAg
ICAgIGZvciAobGV0IHZlY3RvclNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVzKSB7CisgICAgICAg
ICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYgdmVjdG9yPCR7dmVjdG9yVHlw
ZX0sICR7dmVjdG9yU2l6ZX0+YCwgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgICAgIHRoaXNb
YHZlY3Rvcjwke3ZlY3RvclR5cGV9LCAke3ZlY3RvclNpemV9PmBdID0gdHlwZTsKKyAgICAgICAg
ICAgICAgICB9KTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICAKKworICAgICAg
ICBmb3IgKGxldCB0eXBlIG9mIFsiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICBmb3Ig
KGxldCBoZWlnaHQgPSAyOyBoZWlnaHQgPD0gNDsgKytoZWlnaHQpIHsKKyAgICAgICAgICAgICAg
ICBmb3IgKGxldCB3aWR0aCA9IDI7IHdpZHRoIDw9IDQ7ICsrd2lkdGgpIHsKKyAgICAgICAgICAg
ICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYgbWF0cml4PCR7dHlwZX0sICR7
aGVpZ2h0fSwgJHt3aWR0aH0+YCwgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgICAgICAgICB0
aGlzW2BtYXRyaXg8JHt0eXBlfSwgJHtoZWlnaHR9LCAke3dpZHRofT5gXSA9IHR5cGU7CisgICAg
ICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfQorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9w
ZXJhdG9yIGludCh1aW50KSIsCi0gICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRW
YWx1ZSgpIHwgMCk7CisgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgc2FtcGxlciIsCisgICAg
ICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICB0aGlzLnNhbXBsZXIgPSB0eXBlOwor
ICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBGaWd1cmUgb3V0IHdoYXQgdG8gcHV0IGhlcmUuCiAg
ICAgICAgICAgICB9KTsKLSAgICAgICAgCisKKyAgICAgICAgZm9yIChsZXQgdGV4dHVyZVR5cGUg
b2YgWyJUZXh0dXJlMUQiLCAiUldUZXh0dXJlMUQiLCAiVGV4dHVyZTFEQXJyYXkiLCAiUldUZXh0
dXJlMURBcnJheSIsICJUZXh0dXJlMkQiLCAiUldUZXh0dXJlMkQiLCAiVGV4dHVyZTJEQXJyYXki
LCAiUldUZXh0dXJlMkRBcnJheSIsICJUZXh0dXJlM0QiLCAiUldUZXh0dXJlM0QiLCAiVGV4dHVy
ZUN1YmUiXSkgeworICAgICAgICAgICAgZm9yIChsZXQgdHlwZUFyZ3VtZW50IG9mIFsiYm9vbCIs
ICJ1Y2hhciIsICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNob3J0IiwgImludCIsICJoYWxm
IiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAg
ICAgICAgICAgICBgbmF0aXZlIHR5cGVkZWYgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1lbnR9
PmAsCisgICAgICAgICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICAgICAg
ICAgdGhpc1tgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1lbnR9PmBdID0gdHlwZTsKKyAgICAg
ICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDI7IGkgPD0g
NDsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAg
ICAgICAgICAgICAgICBgbmF0aXZlIHR5cGVkZWYgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1l
bnR9JHtpfT5gLAorICAgICAgICAgICAgICAgICAgICAgICAgdHlwZSA9PiB7CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdGhpc1tgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1lbnR9JHtp
fT5gXSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCB0ZXh0dXJl
VHlwZSBvZiBbIlRleHR1cmVEZXB0aDJEIiwgIlJXVGV4dHVyZURlcHRoMkQiLCAiVGV4dHVyZURl
cHRoMkRBcnJheSIsICJSV1RleHR1cmVEZXB0aDJEQXJyYXkiLCAiVGV4dHVyZURlcHRoQ3ViZSJd
KSB7CisgICAgICAgICAgICBmb3IgKGxldCB0eXBlQXJndW1lbnQgb2YgWyJmbG9hdCIsICJoYWxm
Il0pIHsKKyAgICAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgICAg
ICBgbmF0aXZlIHR5cGVkZWYgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1lbnR9PmAsCisgICAg
ICAgICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICAgICAgICAgdGhpc1tg
JHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1lbnR9PmBdID0gdHlwZTsKKyAgICAgICAgICAgICAg
ICAgICAgfSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCBw
cmltaXRpdmVUeXBlIG9mIFsidXNob3J0IiwgInVpbnQiLCAiY2hhciIsICJzaG9ydCIsICJpbnQi
LCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAg
ICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgdWNoYXIoJHtwcmltaXRpdmVUeXBlfSlgLAorICAg
ICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpICYgMHhmZik7
CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCBwcmlt
aXRpdmVUeXBlIG9mIFsidWNoYXIiLCAidWludCIsICJjaGFyIiwgInNob3J0IiwgImludCIsICJo
YWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAg
ICAgICAgYG5hdGl2ZSBvcGVyYXRvciB1c2hvcnQoJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAg
ICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpICYgMHhmZmZmKTsK
KyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHByaW1p
dGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAiY2hhciIsICJzaG9ydCIsICJpbnQiLCAi
aGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAg
ICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgdWludCgke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAg
ICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgPj4+IDApOworICAg
ICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZl
VHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIsICJ1aW50IiwgInNob3J0IiwgImludCIsICJoYWxm
IiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAg
ICAgYG5hdGl2ZSBvcGVyYXRvciBjaGFyKCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbdmFsdWVdKSA9PiBFUHRyLmJveChjYXN0KEludDhBcnJheSwgdmFsdWUubG9hZFZhbHVlKCkp
KTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHBy
aW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgImludCIs
ICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAg
ICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBzaG9ydCgke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAg
ICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50
YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goY2FzdChJbnQxNkFycmF5LCB2YWx1ZS5sb2Fk
VmFsdWUoKSkpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9y
IChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIsICJ1aW50IiwgImNoYXIi
LCAic2hvcnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0
KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgaW50KCR7cHJpbWl0aXZlVHlwZX0p
YCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChjYXN0KEludDMyQXJyYXksIHZh
bHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKworICAg
ICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAidXNob3J0IiwgInVpbnQi
LCAiY2hhciIsICJzaG9ydCIsICJpbnQiLCAiZmxvYXQiXSkgeworICAgICAgICAgICAgdGhpcy5f
bWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIGhhbGYoJHtwcmltaXRp
dmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KGNhc3RUb0hhbGYo
dmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisg
ICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAidWlu
dCIsICJjaGFyIiwgInNob3J0IiwgImludCIsICJoYWxmIl0pIHsKKyAgICAgICAgICAgIHRoaXMu
X21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBmbG9hdCgke3ByaW1p
dGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goTWF0aC5mcm91
bmQodmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQor
CiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9yIGlu
dCh1Y2hhcikiLAorICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBpbnQoYXRvbWljX2ludClg
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSB8IDApOworICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3go
dmFsdWUubG9hZFZhbHVlKCkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAg
IHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9yIGludChmbG9hdCki
LAorICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciB1aW50KGF0b21pY191aW50KWAsCiAgICAg
ICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpIHwgMCk7CisgICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5s
b2FkVmFsdWUoKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5f
bWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgdWludChpbnQpIiwKKyAgICAg
ICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KGJvb2wsYm9vbCkiLAogICAgICAgICAgICAg
ZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVd
KSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKICAg
ICAgICAgICAgIH0pOwotICAgICAgICAKKworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBl
IG9mIFsidWludCIsICJpbnQiLCAiZmxvYXQiXSkgeworICAgICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I9PSgke3ByaW1pdGl2ZVR5
cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAg
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9Pgor
ICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA9PSByaWdo
dC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgICAgIHRoaXMu
X21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9wZXJhdG9yPCgke3ByaW1p
dGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsK
KyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRd
KSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8
IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAg
dGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I8PSgk
e3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5j
ID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwg
cmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFs
dWUoKSA8PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgfSk7CisKKyAgICAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9wZXJh
dG9yPigke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAg
ICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
bGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5s
b2FkVmFsdWUoKSA+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICB9KTsKKwor
ICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJvb2wg
b3BlcmF0b3I+PSgke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAg
ICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlv
biA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
bGVmdC5sb2FkVmFsdWUoKSA+PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAg
fSk7CisgICAgICAgIH0KKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSBvcGVyYXRvciB1aW50KHVjaGFyKSIsCisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVy
YXRvci0oaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgp
ID4+PiAwKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0p
ID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KCgtdmFsdWUubG9hZFZhbHVlKCkpIHwg
MCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgK
LSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCkiLAorICAgICAgICAgICAg
Im5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewot
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5i
b3godmFsdWUubG9hZFZhbHVlKCkgPj4+IDApOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0
aC5mcm91bmQoLXZhbHVlLmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAg
CisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3Ig
dWNoYXIoaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcisoaW50LGludCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSAmIDB4ZmYpOwor
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
KyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5s
b2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0
aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hhcih1aW50KSIs
CisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvci0oaW50LGludCkiLAogICAgICAgICAg
ICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSAmIDB4ZmYpOworICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSByaWdodC5sb2FkVmFsdWUoKSkg
fCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hhcihmbG9hdCkiLAorICAgICAgICAg
ICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3IqKGludCxpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4g
ewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0
ci5ib3godmFsdWUubG9hZFZhbHVlKCkgJiAweGZmKTsKKyAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQ
dHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICogcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAg
ICAgICJuYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGlu
dCBvcGVyYXRvci8oaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChNYXRoLmZy
b3VuZCh2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50
YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
KGxlZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAg
IH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSBvcGVyYXRvciBmbG9hdCh1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3Bl
cmF0b3IrKHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChNYXRoLmZyb3Vu
ZCh2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxl
ZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIG9wZXJhdG9yIGZsb2F0KHVjaGFyKSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3Bl
cmF0b3ItKHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChNYXRoLmZyb3Vu
ZCh2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxl
ZnQubG9hZFZhbHVlKCkgLSByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIGludCBvcGVyYXRvcisoaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9w
ZXJhdG9yKih1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkg
fCAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKiBy
aWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3Ir
KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yLyh1aW50LHVp
bnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3goKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOworICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRWYWx1
ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5f
bWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgb3BlcmF0b3IrKGZsb2F0LGZsb2F0
KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkpOwogICAg
ICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIGludCBvcGVyYXRvci0oaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2
ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewog
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
LSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSByaWdodC5s
b2FkVmFsdWUoKSkgfCAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91
bmQobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9
KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRp
dmUgdWludCBvcGVyYXRvci0odWludCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0
IG9wZXJhdG9yKihmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1
ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKGxl
ZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkpOwogICAgICAgICAgICAgfSk7Ci0g
ICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGZs
b2F0IG9wZXJhdG9yLShmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBv
cGVyYXRvci8oZmxvYXQsZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAg
ICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0
LmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5k
KGxlZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkpOwogICAgICAgICAgICAgfSk7
Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IGludCBvcGVyYXRvciooaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0
b3ImKGludCxpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4gewotICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUo
KSkgfCAwKTsKLSAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3goKGxlZnQubG9hZFZhbHVlKCkgJiByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAg
ICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAg
Im5hdGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUg
aW50IG9wZXJhdG9yfChpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICogcmlnaHQubG9hZFZhbHVl
KCkpID4+PiAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVl
KCkgfCByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAK
KwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVy
YXRvciooZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yXihp
bnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQ
dHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkp
OworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSBeIHJpZ2h0
LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAg
IHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvci8oaW50LGlu
dCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3J+KGludCkiLAogICAgICAgICAg
ICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVm
dCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFs
dWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goKH52YWx1ZS5sb2FkVmFsdWUoKSkg
fCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yLyh1aW50LHVpbnQpIiwKKyAgICAg
ICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yPDwoaW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1
bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJp
Z2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkg
LyByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJv
eCgobGVmdC5sb2FkVmFsdWUoKSA8PCByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAg
ICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAg
Im5hdGl2ZSBpbnQgb3BlcmF0b3ImKGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50
IG9wZXJhdG9yPj4oaW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAg
ICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSAmIHJpZ2h0LmxvYWRWYWx1ZSgp
KTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgPj4gcmln
aHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvciYodWlu
dCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAgICAgICAgIEVQ
dHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICYgcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsKICAg
ICAgICAgICAgIH0pOwotICAgICAgICAKLSAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAg
ICAgICJuYXRpdmUgaW50IG9wZXJhdG9yfChpbnQsaW50KSIsCi0gICAgICAgICAgICBmdW5jID0+
IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0p
ID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgfCByaWdo
dC5sb2FkVmFsdWUoKSk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcnwodWludCx1aW50
KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KChsZWZ0LmxvYWRWYWx1ZSgpIHwgcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsKICAgICAgICAg
ICAgIH0pOwotICAgICAgICAKLSAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJu
YXRpdmUgaW50IG9wZXJhdG9yXihpbnQsaW50KSIsCi0gICAgICAgICAgICBmdW5jID0+IHsKLSAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0g
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgXiByaWdodC5sb2Fk
VmFsdWUoKSk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFw
LnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcl4odWludCx1aW50KSIsCiAg
ICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0
LmxvYWRWYWx1ZSgpIF4gcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsKICAgICAgICAgICAgIH0p
OwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2
ZSBpbnQgb3BlcmF0b3I8PChpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9w
ZXJhdG9yfih1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAg
ICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPDwgcmlnaHQubG9hZFZhbHVlKCkpOworICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3go
KH52YWx1ZS5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAor
CiAgICAgICAgIHRoaXMuX21hcC5zZXQoCiAgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0
b3I8PCh1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KICAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgPDwgcmlnaHQubG9hZFZhbHVlKCkpID4+
PiAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3I+PihpbnQsdWludCkiLAorICAgICAg
ICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCx1aW50KSIsCiAgICAgICAgICAgICBm
dW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCBy
aWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkg
Pj4gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVm
dC5sb2FkVmFsdWUoKSA+Pj4gcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsKICAgICAgICAgICAg
IH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZs
b2F0IGNvcyhmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID4+PiByaWdodC5sb2FkVmFsdWUoKSk7Cisg
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmNvcyh2YWx1ZS5sb2FkVmFs
dWUoKSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAu
c2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3J+KGludCkiLAorICAgICAgICAg
ICAgIm5hdGl2ZSBmbG9hdCBzaW4oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3go
fnZhbHVlLmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5k
KE1hdGguc2luKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAg
IAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHVpbnQgb3Bl
cmF0b3J+KHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgdGFuKGZsb2F0KSIsCiAg
ICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KCh+dmFsdWUubG9hZFZhbHVlKCkpID4+PiAwKTsKKyAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgudGFuKHZhbHVlLmxvYWRWYWx1
ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5z
ZXQoCi0gICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yLyhmbG9hdCxmbG9hdCkiLAor
ICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhY29zKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5j
ID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdo
dF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9h
ZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
TWF0aC5mcm91bmQoTWF0aC5hY29zKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIGJvb2wgb3BlcmF0b3I9PShpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0
IGFzaW4oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA9PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmFzaW4odmFsdWUubG9hZFZhbHVl
KCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KHVpbnQsdWludCkiLAorICAg
ICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhdGFuKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+
IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0p
ID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmln
aHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0
aC5hdGFuKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAor
CiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0
b3I9PShib29sLGJvb2wpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgY29zaChmbG9hdCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChs
ZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQ
dHIuYm94KE1hdGguZnJvdW5kKE1hdGguY29zaCh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAg
ICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAg
ICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPT0oZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJu
YXRpdmUgZmxvYXQgc2luaChmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0LmxvYWRWYWx1
ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+
CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguc2luaCh2YWx1
ZS5sb2FkVmFsdWUoKSkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5z
ZXQoCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHRhbmgoZmxvYXQpIiwKKyAgICAgICAgICAg
IGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC50YW5o
KHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAg
ICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8KGlu
dCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgY2VpbChmbG9hdCkiLAogICAgICAg
ICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
bGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRW
YWx1ZSgpIDwgcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0
aC5mcm91bmQoTWF0aC5jZWlsKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7
Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IGJvb2wgb3BlcmF0b3I8KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBl
eHAoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAg
ICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguZXhwKHZhbHVlLmxvYWRWYWx1ZSgpKSkp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8KGZsb2F0LGZsb2F0KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGZsb2F0IGZsb29yKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsK
LSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+
Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPCByaWdodC5s
b2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmZs
b29yKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8
PShpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGxvZyhmbG9hdCkiLAogICAg
ICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0Lmxv
YWRWYWx1ZSgpIDw9IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KE1hdGguZnJvdW5kKE1hdGgubG9nKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIGJvb2wgb3BlcmF0b3I8PSh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxv
YXQgcm91bmQoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5sb2FkVmFsdWUoKSk7Cisg
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLnJvdW5kKHZhbHVlLmxvYWRW
YWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21h
cC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8PShmbG9hdCxmbG9hdCki
LAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBzcXJ0KGZsb2F0KSIsCiAgICAgICAgICAgICBm
dW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCBy
aWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkg
PD0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91
bmQoTWF0aC5zcXJ0KHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wg
b3BlcmF0b3I+KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgdHJ1bmMoZmxv
YXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgudHJ1bmModmFsdWUubG9hZFZhbHVlKCkpKSk7CiAg
ICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAg
ICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj4odWludCx1aW50KSIsCisgICAgICAgICAgICAi
bmF0aXZlIGZsb2F0IGRkeChmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID4gcmlnaHQubG9hZFZhbHVl
KCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4g
RVB0ci5ib3goMCk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAor
ICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBkZHkoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMg
PT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4g
RVB0ci5ib3goMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5f
bWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj4oZmxvYXQsZmxvYXQp
IiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgcG93KGZsb2F0LGZsb2F0KSIsCiAgICAgICAg
ICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFts
ZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZh
bHVlKCkgPiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KE1hdGguZnJvdW5kKE1hdGgucG93KGxlZnQubG9hZFZhbHVlKCksIHJpZ2h0LmxvYWRWYWx1ZSgp
KSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQo
Ci0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I+PShpbnQsaW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGJvb2wgaXNmaW5pdGUoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4g
ewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkg
PT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+PSByaWdo
dC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
dmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChOdW1iZXIuaXNGaW5pdGUo
dmFsdWUubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAg
ICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPj0odWlu
dCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGJvb2wgaXNpbmYoZmxvYXQpIiwKICAgICAg
ICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2Fk
VmFsdWUoKSA+PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgo
dmFsdWUubG9hZFZhbHVlKCkgPT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKSB8fCAodmFsdWUu
bG9hZFZhbHVlKCkgPT0gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZKSk7CisgICAgICAgICAgICB9
KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSBib29sIGlz
bmFuKGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIu
Ym94KE51bWJlci5pc05hTih2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgfSk7CisK
KyAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGlzLgorICAgICAgICB0aGlzLl9tYXAuc2V0
KAorICAgICAgICAgICAgIm5hdGl2ZSBib29sIGlzbm9ybWFsKGhhbGYpIiwKKyAgICAgICAgICAg
IGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goaXNOYU4odmFsdWUubG9hZFZhbHVl
KCkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKworICAgICAgICAvLyBGSVhNRTogSW1w
bGVtZW50IHRoaXMuCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IGJvb2wgb3BlcmF0b3I+PShmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBib29s
IGlzbm9ybWFsKGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGlzTmFOKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICB9KTsKKwor
ICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhdGFuMihm
bG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVu
Yy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAg
ICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID49IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAg
ICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5hdGFuMihsZWZ0LmxvYWRW
YWx1ZSgpLCByaWdodC5sb2FkVmFsdWUoKSkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAg
IHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGludCBhc2ludChmbG9hdCkiLAor
ICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlv
biA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChiaXR3aXNlQ2Fz
dChGbG9hdDMyQXJyYXksIEludDMyQXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAg
ICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSB1
aW50IGFzdWludChmbG9hdCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAg
ICBFUHRyLmJveChiaXR3aXNlQ2FzdChGbG9hdDMyQXJyYXksIFVpbnQzMkFycmF5LCB2YWx1ZS5s
b2FkVmFsdWUoKSkpOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgK
KyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgYXNmbG9hdChpbnQpIiwKKyAgICAgICAgICAgIGZ1
bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkg
PT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goYml0d2lzZUNhc3QoSW50MzJBcnJheSwg
RmxvYXQzMkFycmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgfSk7CisKKyAg
ICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgYXNmbG9hdCh1
aW50KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxl
bWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGJp
dHdpc2VDYXN0KFVpbnQzMkFycmF5LCBGbG9hdDMyQXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7
CisgICAgICAgICAgICB9KTsKKworICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMuCisg
ICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGYxNnRvZjMy
KHVpbnQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
MCk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMu
CisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgZjMydG9m
MTYoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3goMCk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAg
ICAgICAgIm5hdGl2ZSB2b2lkIEFsbE1lbW9yeUJhcnJpZXJXaXRoR3JvdXBTeW5jKCkiLAorICAg
ICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IGZ1bmN0aW9uKCkge307CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0
KAorICAgICAgICAgICAgIm5hdGl2ZSB2b2lkIERldmljZU1lbW9yeUJhcnJpZXJXaXRoR3JvdXBT
eW5jKCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IGZ1bmN0aW9uKCkge307CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0
aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSB2b2lkIEdyb3VwTWVtb3J5QmFycmll
cldpdGhHcm91cFN5bmMoKSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gZnVuY3Rpb24oKSB7fTsKICAgICAgICAgICAgIH0pOwog
CiAgICAgICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5cGVOYW1lIG9mIGFsbFZlY3RvclR5cGVO
YW1lcygpKQpAQCAtNTE0LDkgKzkwNCw2IEBAIGNsYXNzIEludHJpbnNpY3MgewogICAgICAgICBm
b3IgKGxldCBzd2l6emxlIG9mIFN3aXp6bGVPcC5mdW5jdGlvbnMoKSkKICAgICAgICAgICAgIHRo
aXMuX21hcC5zZXQoc3dpenpsZS50b1N0cmluZygpLCBmdW5jID0+IHN3aXp6bGUuaW5zdGFudGlh
dGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CiAKLSAgICAgICAgZm9yIChsZXQgYm9vbE9wIG9mIE9w
ZXJhdG9yQm9vbC5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoYm9vbE9w
LnRvU3RyaW5nKCksIGZ1bmMgPT4gYm9vbE9wLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykpOwotCiAgICAgICAgIGZvciAobGV0IGFuZGVySW5kZXggb2YgT3BlcmF0b3JBbmRlckluZGV4
ZXIuZnVuY3Rpb25zKCkpCiAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGFuZGVySW5kZXgudG9T
dHJpbmcoKSwgZnVuYyA9PiBhbmRlckluZGV4Lmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykpOwogCkBAIC01MzgsNyArOTI1LDcgQEAgY2xhc3MgSW50cmluc2ljcyB7CiAgICAgICAgIGZv
ciAobGV0IHNldHRlciBvZiBCdWlsdGluVmVjdG9yU2V0dGVyLmZ1bmN0aW9ucygpKQogICAgICAg
ICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwgZnVuYyA9PiBzZXR0ZXIuaW5z
dGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CiAgICAgfQotICAgIAorCiAgICAgYWRkKHRo
aW5nKQogICAgIHsKICAgICAgICAgbGV0IGludHJpbnNpYyA9IHRoaXMuX21hcC5nZXQodGhpbmcu
dG9TdHJpbmcoKSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9N
YXRyaXhUeXBlLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4VHlwZS5q
cwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4zZDFlZjY0MDNjMDc5MjZmMTExM2VlNjhlNGY1YjMwZTliYzM3MDQwCi0t
LSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4VHlw
ZS5qcwpAQCAtMCwwICsxLDYyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworY2xhc3MgTWF0cml4VHlwZSBleHRlbmRzIE5hdGl2
ZVR5cGUgeworICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cykKKyAg
ICB7CisgICAgICAgIHN1cGVyKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CisgICAgfQor
CisgICAgZ2V0IGVsZW1lbnRUeXBlKCkgeyByZXR1cm4gdGhpcy50eXBlQXJndW1lbnRzWzBdOyB9
CisgICAgZ2V0IG51bVJvd3MoKSB7IHJldHVybiB0aGlzLnR5cGVBcmd1bWVudHNbMV07IH0KKyAg
ICBnZXQgbnVtQ29sdW1ucygpIHsgcmV0dXJuIHRoaXMudHlwZUFyZ3VtZW50c1syXTsgfQorICAg
IGdldCBudW1Sb3dzVmFsdWUoKSB7IHJldHVybiB0aGlzLm51bVJvd3MudmFsdWU7IH0KKyAgICBn
ZXQgbnVtQ29sdW1uc1ZhbHVlKCkgeyByZXR1cm4gdGhpcy5udW1Db2x1bW5zLnZhbHVlOyB9Cisg
ICAgZ2V0IHNpemUoKSB7IHJldHVybiB0aGlzLmVsZW1lbnRUeXBlLnNpemUgKiB0aGlzLm51bVJv
d3NWYWx1ZSAqIHRoaXMubnVtQ29sdW1uc1ZhbHVlOyB9CisKKyAgICB1bmlmeUltcGwodW5pZmlj
YXRpb25Db250ZXh0LCBvdGhlcikKKyAgICB7CisgICAgICAgIGlmICghKG90aGVyIGluc3RhbmNl
b2YgTWF0cml4VHlwZSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAgaWYg
KHRoaXMubnVtUm93c1ZhbHVlICE9PSBvdGhlci5udW1Sb3dzVmFsdWUgfHwgdGhpcy5ydW5Db2x1
bW5zVmFsdWUgIT09IG90aGVyLm51bUNvbHVtbnNWYWx1ZSkKKyAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKKworICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50VHlwZS51bmlmeSh1bmlmaWNhdGlv
bkNvbnRleHQsIG90aGVyLmVsZW1lbnRUeXBlKTsKKyAgICB9CisKKyAgICBwb3B1bGF0ZURlZmF1
bHRWYWx1ZShidWZmZXIsIG9mZnNldCkKKyAgICB7CisgICAgICAgIGZvciAobGV0IGkgPSAwOyBp
IDwgdGhpcy5udW1Sb3dzVmFsdWUgKiB0aGlzLnJ1bkNvbHVtbnNWYWx1ZTsgKytpKQorICAgICAg
ICAgICAgdGhpcy5lbGVtZW50VHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZShidWZmZXIsIG9mZnNl
dCArIGkgKiB0aGlzLmVsZW1lbnRUeXBlLnNpemUpOworICAgIH0KKworICAgIHRvU3RyaW5nKCkK
KyAgICB7CisgICAgICAgIHJldHVybiBgbmF0aXZlIHR5cGVkZWYgbWF0cml4PCR7dGhpcy5lbGVt
ZW50VHlwZX0sICR7dGhpcy5udW1Sb3dzVmFsdWV9LCAke3RoaXMubnVtQ29sdW1uc1ZhbHVlfT5g
OworICAgIH0KK30KKwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
TmFtZUNvbnRleHQuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4
dC5qcwppbmRleCAxYmFiM2ZjNTYwMjYwMTA3N2IzZmE4ODVhNjA1NGFiODYwYjBhMTkzLi5jODk5
NjhjNzc5NjA3YjdjYWJjYzZhNWY5NjliNGFiOTEzZTcyNjNlIDEwMDY0NAotLS0gYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5qcworKysgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5qcwpAQCAtNjksMTEgKzY5LDMzIEBAIGNsYXNz
IE5hbWVDb250ZXh0IHsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogCisgICAgICAg
IGlmICh0aGluZy5raW5kID09IFR5cGUpIHsKKyAgICAgICAgICAgIHRoaXMuX3NldC5hZGQodGhp
bmcpOworICAgICAgICAgICAgaWYgKHRoaW5nLnR5cGVBcmd1bWVudHMgJiYgdGhpbmcudHlwZUFy
Z3VtZW50cy5sZW5ndGggIT0gMCkgeworICAgICAgICAgICAgICAgIGxldCBhcnJheSA9IHRoaXMu
X21hcC5nZXQodGhpbmcubmFtZSk7CisgICAgICAgICAgICAgICAgaWYgKCFhcnJheSkgeworICAg
ICAgICAgICAgICAgICAgICBhcnJheSA9IFtdOworICAgICAgICAgICAgICAgICAgICBhcnJheS5r
aW5kID0gVHlwZTsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldCh0aGluZy5uYW1l
LCBhcnJheSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGlmIChhcnJheS5r
aW5kICE9IFR5cGUpCisgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRo
aW5nLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJDYW5ub3QgcmV1c2UgdHlwZSBuYW1lIGZvciBmdW5j
dGlvbjogIiArIHRoaW5nLm5hbWUpOworICAgICAgICAgICAgICAgIGFycmF5LnB1c2godGhpbmcp
OworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICAgICAgaWYgKHRoaXMuX21hcC5oYXModGhpbmcubmFtZSkpCisgICAgICAgICAgICAgICAg
ICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRoaW5nLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJEdXBs
aWNhdGUgbmFtZTogIiArIHRoaW5nLm5hbWUpOworICAgICAgICAgICAgICAgIHRoaXMuX21hcC5z
ZXQodGhpbmcubmFtZSwgdGhpbmcpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CisgICAgICAgIAogICAgICAgICBpZiAodGhpcy5fbWFwLmhhcyh0aGluZy5u
YW1lKSkKICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRoaW5nLm9yaWdpbi5vcmln
aW5TdHJpbmcsICJEdXBsaWNhdGUgbmFtZTogIiArIHRoaW5nLm5hbWUpOwogCiAgICAgICAgIHRo
aXMuX3NldC5hZGQodGhpbmcpOwogICAgICAgICB0aGlzLl9tYXAuc2V0KHRoaW5nLm5hbWUsIHRo
aW5nKTsKKwogICAgIH0KICAgICAKICAgICBnZXQoa2luZCwgbmFtZSkKQEAgLTEwMiw2ICsxMjQs
MTAgQEAgY2xhc3MgTmFtZUNvbnRleHQgewogICAgICAgICAgICAgZm9yIChsZXQgZnVuYyBvZiB0
aGluZykKICAgICAgICAgICAgICAgICB5aWVsZCBmdW5jOwogICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICB9IGVsc2UgaWYgKHRoaW5nLmtpbmQgPT09IFR5cGUgJiYgKHRoaW5nIGluc3RhbmNl
b2YgQXJyYXkpKSB7CisgICAgICAgICAgICBmb3IgKGxldCB0eXBlIG9mIHRoaW5nKQorICAgICAg
ICAgICAgICAgIHlpZWxkIHR5cGU7CisgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KICAg
ICAgICAgeWllbGQgdGhpbmc7CiAgICAgfQpAQCAtMTYzLDggKzE4OSw4IEBAIGNsYXNzIE5hbWVD
b250ZXh0IHsKICAgICB7CiAgICAgICAgIGZvciAobGV0IHZhbHVlIG9mIHRoaXMuX21hcC52YWx1
ZXMoKSkgewogICAgICAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQXJyYXkpIHsKLSAgICAg
ICAgICAgICAgICBmb3IgKGxldCBmdW5jIG9mIHZhbHVlKQotICAgICAgICAgICAgICAgICAgICB5
aWVsZCBmdW5jOworICAgICAgICAgICAgICAgIGZvciAobGV0IHRoaW5nIG9mIHZhbHVlKQorICAg
ICAgICAgICAgICAgICAgICB5aWVsZCB0aGluZzsKICAgICAgICAgICAgICAgICBjb250aW51ZTsK
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHlpZWxkIHZhbHVlOwpkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZVJlc29sdmVyLmpzIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvTmFtZVJlc29sdmVyLmpzCmluZGV4IGY2MTVhMmZiNGU4N2RjMWRl
YjdiMDFiNTcyZmI3YWY2MjZhYmQwOTUuLjlhMDk5ZjQ4NWU2ZTkyN2UxNjQzN2JiZjgyNjQxZjYx
ZTQ1MjVjZjEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hbWVS
ZXNvbHZlci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVzb2x2
ZXIuanMKQEAgLTEyMCwxMiArMTIwLDE5IEBAIGNsYXNzIE5hbWVSZXNvbHZlciBleHRlbmRzIFZp
c2l0b3IgewogICAgIAogICAgIHZpc2l0VHlwZVJlZihub2RlKQogICAgIHsKKyAgICAgICAgc3Vw
ZXIudmlzaXRUeXBlUmVmKG5vZGUpOwogICAgICAgICBsZXQgdHlwZSA9IG5vZGUudHlwZTsKICAg
ICAgICAgaWYgKCF0eXBlKSB7CiAgICAgICAgICAgICB0eXBlID0gdGhpcy5fbmFtZUNvbnRleHQu
Z2V0KFR5cGUsIG5vZGUubmFtZSk7CiAgICAgICAgICAgICBpZiAoIXR5cGUpCiAgICAgICAgICAg
ICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3Iobm9kZS5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiQ291
bGQgbm90IGZpbmQgdHlwZSBuYW1lZCAiICsgbm9kZS5uYW1lKTsKLSAgICAgICAgICAgIG5vZGUu
dHlwZSA9IHR5cGU7CisgICAgICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9mIEFycmF5KSB7Cisg
ICAgICAgICAgICAgICAgLy8gVHlwZSB1bmlmaWNhdGlvbiByZXF1aXJlcyB0aGUgLnR5cGUgdmFs
dWUgdG8gYmUgc2V0IGFscmVhZHksIHNvIHdlIGNhbiBlYWdlcmx5IHNldCBpdCBub3cuCisgICAg
ICAgICAgICAgICAgZm9yIChsZXQgb3ZlcmxvYWQgb2YgdHlwZSkKKyAgICAgICAgICAgICAgICAg
ICAgTm9kZS52aXNpdChvdmVybG9hZCwgdGhpcyk7CisgICAgICAgICAgICAgICAgbm9kZS5yZXNv
bHZlKHR5cGUpOworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgbm9kZS50eXBl
ID0gdHlwZTsKICAgICAgICAgfQogICAgIH0KICAgICAKQEAgLTIwOCw5ICsyMTUsNCBAQCBjbGFz
cyBOYW1lUmVzb2x2ZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgCiAgICAgICAgIHN1cGVy
LnZpc2l0Q2FsbEV4cHJlc3Npb24obm9kZSk7CiAgICAgfQotCi0gICAgdmlzaXRWZWN0b3JUeXBl
KG5vZGUpCi0gICAgewotICAgICAgICBub2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOwotICAg
IH0KIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hdGl2ZVR5
cGUuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpzCmluZGV4
IGUyZDg1MWNiY2NiYTNhOTcyMzRjN2JkMzkyOTA3ODI5Y2E5ZTA1ZjIuLmIzNjhhMmU4YjI0ZjU0
OGVhYjg4YTI4MjRiNDk1YmUyM2M4N2NiODUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL05hdGl2ZVR5cGUuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvTmF0aXZlVHlwZS5qcwpAQCAtMjUsMTEgKzI1LDE0IEBACiAidXNlIHN0cmljdCI7CiAK
IGNsYXNzIE5hdGl2ZVR5cGUgZXh0ZW5kcyBUeXBlIHsKLSAgICBjb25zdHJ1Y3RvcihvcmlnaW4s
IG5hbWUpCisgICAgY29uc3RydWN0b3Iob3JpZ2luLCBuYW1lLCB0eXBlQXJndW1lbnRzKQogICAg
IHsKKyAgICAgICAgaWYgKCEodHlwZUFyZ3VtZW50cyBpbnN0YW5jZW9mIEFycmF5KSkKKyAgICAg
ICAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBwYXJhbWV0ZXJzIG5vdCBhcnJheTogIiArIHR5
cGVBcmd1bWVudHMpOwogICAgICAgICBzdXBlcigpOwogICAgICAgICB0aGlzLl9vcmlnaW4gPSBv
cmlnaW47CiAgICAgICAgIHRoaXMuX25hbWUgPSBuYW1lOworICAgICAgICB0aGlzLl90eXBlQXJn
dW1lbnRzID0gdHlwZUFyZ3VtZW50czsKICAgICAgICAgdGhpcy5faXNOdW1iZXIgPSBmYWxzZTsK
ICAgICAgICAgdGhpcy5faXNJbnQgPSBmYWxzZTsKICAgICAgICAgdGhpcy5faXNGbG9hdGluZyA9
IGZhbHNlOwpAQCAtMzgsNiArNDEsNyBAQCBjbGFzcyBOYXRpdmVUeXBlIGV4dGVuZHMgVHlwZSB7
CiAgICAgCiAgICAgZ2V0IG9yaWdpbigpIHsgcmV0dXJuIHRoaXMuX29yaWdpbjsgfQogICAgIGdl
dCBuYW1lKCkgeyByZXR1cm4gdGhpcy5fbmFtZTsgfQorICAgIGdldCB0eXBlQXJndW1lbnRzKCkg
eyByZXR1cm4gdGhpcy5fdHlwZUFyZ3VtZW50czsgfQogICAgIGdldCBpc05hdGl2ZSgpIHsgcmV0
dXJuIHRydWU7IH0KICAgICAKICAgICAvLyBXZSBsZXQgSW50cmluc2ljcy5qcyBzZXQgdGhlc2Ug
YXMgaXQgbGlrZXMuCkBAIC01MiwxOSArNTYsMjAgQEAgY2xhc3MgTmF0aXZlVHlwZSBleHRlbmRz
IFR5cGUgewogICAgIAogICAgIHRvU3RyaW5nKCkKICAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0
aXZlIHR5cGVkZWYgJHt0aGlzLm5hbWV9YDsKKyAgICAgICAgbGV0IHJlc3VsdCA9IGBuYXRpdmUg
dHlwZWRlZiAke3RoaXMubmFtZX1gOworICAgICAgICBpZiAodGhpcy50eXBlQXJndW1lbnRzLmxl
bmd0aCkKKyAgICAgICAgICAgIHJlc3VsdCArPSAiPCIgKyB0aGlzLnR5cGVBcmd1bWVudHMuam9p
bigiLCIpICsgIj4iOworICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KICAgICAKICAgICBz
dGF0aWMgY3JlYXRlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cykKICAgICB7Ci0gICAgICAg
IC8vIEZJWE1FOiBGb3IgbmF0aXZlIHR5cGVzIGxpa2UgVGV4dHVyZTFEIHRoaXMgc2hvdWxkIHJl
c29sdmUgdGhlIHR5cGUgdG8gc29tZXRoaW5nIGNvbmNyZXRlIGJ5IGNoYW5naW5nIHRoZSB0eXBl
IG5hbWUuCi0gICAgICAgIGlmICh0eXBlQXJndW1lbnRzLmxlbmd0aCkKLSAgICAgICAgICAgIHRo
cm93IG5ldyBXVHlwZUVycm9yKG9yaWdpbi5vcmlnaW5TdHJpbmcsIGAke25hbWV9PCR7dHlwZUFy
Z3VtZW50cy5qb2luKCIsIil9PjogU3VwcG9ydCBmb3IgbmF0aXZlIHR5cGVzIHdpdGggdHlwZSBh
cmd1bWVudHMgaXMgY3VycmVudGx5IHVuaW1wbGVtZW50ZWQuYCk7CisgICAgICAgIGlmIChuYW1l
ID09ICJ2ZWN0b3IiKQorICAgICAgICAgICAgcmV0dXJuIG5ldyBWZWN0b3JUeXBlKG9yaWdpbiwg
bmFtZSwgdHlwZUFyZ3VtZW50cyk7CisgICAgICAgIGlmIChuYW1lID09ICJtYXRyaXgiKQorICAg
ICAgICAgICAgcmV0dXJuIG5ldyBNYXRyaXhUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50
cyk7CiAKLSAgICAgICAgaWYgKGFsbFZlY3RvclR5cGVOYW1lcygpLmluZGV4T2YobmFtZSkgPiAt
MSkKLSAgICAgICAgICAgIHJldHVybiBuZXcgVmVjdG9yVHlwZShvcmlnaW4sIG5hbWUpOwotCi0g
ICAgICAgIHJldHVybiBuZXcgTmF0aXZlVHlwZShvcmlnaW4sIG5hbWUpOworICAgICAgICByZXR1
cm4gbmV3IE5hdGl2ZVR5cGUob3JpZ2luLCBuYW1lLCB0eXBlQXJndW1lbnRzKTsKICAgICB9CiB9
CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5k
ZXJJbmRleC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJ
bmRleC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjcwMzcxZmI5MGYyYTFmZDE1
YzJkZGY2YzRhMzk2YzBmMjM5Y2ViZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVy
SW5kZXguanMKKysrIC9kZXYvbnVsbApAQCAtMSw3MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsKLQotY2xhc3MgT3BlcmF0
b3JBbmRlckluZGV4ZXIgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwgYWRkcmVzc1Nw
YWNlKQotICAgIHsKLSAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1lOwot
ICAgICAgICB0aGlzLl9hZGRyZXNzU3BhY2UgPSBhZGRyZXNzU3BhY2U7Ci0gICAgfQotCi0gICAg
Z2V0IGFkZHJlc3NTcGFjZSgpIHsgcmV0dXJuIHRoaXMuX2FkZHJlc3NTcGFjZTsgfQotICAgIGdl
dCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KLQotICAgIHRv
U3RyaW5nKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlwZU5h
bWV9KiAke3RoaXMuYWRkcmVzc1NwYWNlfSBvcGVyYXRvciZbXSgke3RoaXMuYmFzZVR5cGVOYW1l
fVtdICR7dGhpcy5hZGRyZXNzU3BhY2V9LHVpbnQpYDsKLSAgICB9Ci0KLSAgICBzdGF0aWMgZnVu
Y3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fZnVuY3Rpb25zKSB7Ci0gICAgICAg
ICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKLQotICAgICAgICAgICAgY29uc3QgdHlwZU5hbWVz
ID0gWyAidWludCIsICJpbnQiLCAiZmxvYXQiLCAiYm9vbCIgXS5jb25jYXQoYWxsVmVjdG9yVHlw
ZU5hbWVzKCkpOwotICAgICAgICAgICAgY29uc3QgYWRkcmVzc1NwYWNlcyA9IFsgInRocmVhZCIs
ICJ0aHJlYWRncm91cCIsICJkZXZpY2UiLCAiY29uc3RhbnQiIF07Ci0KLSAgICAgICAgICAgIGZv
ciAobGV0IGFkZHJlc3NTcGFjZSBvZiBhZGRyZXNzU3BhY2VzKSB7Ci0gICAgICAgICAgICAgICAg
Zm9yIChsZXQgdHlwZU5hbWUgb2YgdHlwZU5hbWVzKQotICAgICAgICAgICAgICAgICAgICB0aGlz
Ll9mdW5jdGlvbnMucHVzaChuZXcgT3BlcmF0b3JBbmRlckluZGV4ZXIodHlwZU5hbWUsIGFkZHJl
c3NTcGFjZSkpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIHJldHVybiB0aGlz
Ll9mdW5jdGlvbnM7Ci0gICAgfQotCi0gICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5j
KQotICAgIHsKLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbcmVmLCBpbmRleF0sIG5v
ZGUpID0+IHsKLSAgICAgICAgICAgIHJlZiA9IHJlZi5sb2FkVmFsdWUoKTsKLSAgICAgICAgICAg
IGlmICghcmVmKQotICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHJhcEVycm9yKG5vZGUub3Jp
Z2luLm9yaWdpblN0cmluZywgIk51bGwgZGVyZWZlcmVuY2UiKTsKLSAgICAgICAgICAgIGluZGV4
ID0gaW5kZXgubG9hZFZhbHVlKCk7Ci0gICAgICAgICAgICBpZiAoaW5kZXggPiByZWYubGVuZ3Ro
KQotICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHJhcEVycm9yKG5vZGUub3JpZ2luLm9yaWdp
blN0cmluZywgIkFycmF5IGluZGV4ICIgKyBpbmRleCArICIgaXMgb3V0IG9mIGJvdW5kcyBvZiAi
ICsgcmVmKTsKLSAgICAgICAgICAgIHJldHVybiBFUHRyLmJveChyZWYucHRyLnBsdXMoaW5kZXgg
KiBub2RlLmFyZ3VtZW50VHlwZXNbMF0uZWxlbWVudFR5cGUuc2l6ZSkpOwotICAgICAgICB9Owot
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7Ci0gICAgfQotfQpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL09wZXJhdG9yQW5kZXJJbmRleGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzhhMGNkYmJmZGQyMWVj
Y2JhYWRiMzc4ZDAxN2RlNzBhNDc0YzZlYwotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRleGVyLmpzCkBAIC0wLDAgKzEsNzIg
QEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworInVzZSBzdHJp
Y3QiOworCitjbGFzcyBPcGVyYXRvckFuZGVySW5kZXhlciB7CisgICAgY29uc3RydWN0b3IoYmFz
ZVR5cGVOYW1lLCBhZGRyZXNzU3BhY2UpCisgICAgeworICAgICAgICB0aGlzLl9iYXNlVHlwZU5h
bWUgPSBiYXNlVHlwZU5hbWU7CisgICAgICAgIHRoaXMuX2FkZHJlc3NTcGFjZSA9IGFkZHJlc3NT
cGFjZTsKKyAgICB9CisKKyAgICBnZXQgYWRkcmVzc1NwYWNlKCkgeyByZXR1cm4gdGhpcy5fYWRk
cmVzc1NwYWNlOyB9CisgICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VU
eXBlTmFtZTsgfQorCisgICAgdG9TdHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGBuYXRp
dmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0qICR7dGhpcy5hZGRyZXNzU3BhY2V9IG9wZXJhdG9yJltd
KCR7dGhpcy5iYXNlVHlwZU5hbWV9W10gJHt0aGlzLmFkZHJlc3NTcGFjZX0sdWludClgOworICAg
IH0KKworICAgIHN0YXRpYyBmdW5jdGlvbnMoKQorICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLl9m
dW5jdGlvbnMpIHsKKyAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucyA9IFtdOworCisgICAgICAg
ICAgICAvLyBGSVhNRTogVGhpcyBpcyB0b3RhbGx5IHdyb25nLiBXZSBjYW4ndCB0YWtlIGEgcG9p
bnRlciB0byBhIG1lbWJlciBvZiBhIHZlY3RvciBvciBhcnJheS4KKyAgICAgICAgICAgIGNvbnN0
IHR5cGVOYW1lcyA9IFsgInVpbnQiLCAiaW50IiwgImZsb2F0IiwgImJvb2wiIF0uY29uY2F0KGFs
bFZlY3RvclR5cGVOYW1lcygpKTsKKyAgICAgICAgICAgIGNvbnN0IGFkZHJlc3NTcGFjZXMgPSBb
ICJ0aHJlYWQiLCAidGhyZWFkZ3JvdXAiLCAiZGV2aWNlIiwgImNvbnN0YW50IiBdOworCisgICAg
ICAgICAgICBmb3IgKGxldCBhZGRyZXNzU3BhY2Ugb2YgYWRkcmVzc1NwYWNlcykgeworICAgICAg
ICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIHR5cGVOYW1lcykKKyAgICAgICAgICAgICAg
ICAgICAgdGhpcy5fZnVuY3Rpb25zLnB1c2gobmV3IE9wZXJhdG9yQW5kZXJJbmRleGVyKHR5cGVO
YW1lLCBhZGRyZXNzU3BhY2UpKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBy
ZXR1cm4gdGhpcy5fZnVuY3Rpb25zOworICAgIH0KKworICAgIGluc3RhbnRpYXRlSW1wbGVtZW50
YXRpb24oZnVuYykKKyAgICB7CisgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3JlZiwg
aW5kZXhdLCBub2RlKSA9PiB7CisgICAgICAgICAgICByZWYgPSByZWYubG9hZFZhbHVlKCk7Cisg
ICAgICAgICAgICBpZiAoIXJlZikKKyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBFcnJv
cihub2RlLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJOdWxsIGRlcmVmZXJlbmNlIik7CisgICAgICAg
ICAgICBpbmRleCA9IGluZGV4LmxvYWRWYWx1ZSgpOworICAgICAgICAgICAgaWYgKGluZGV4ID4g
cmVmLmxlbmd0aCkKKyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBFcnJvcihub2RlLm9y
aWdpbi5vcmlnaW5TdHJpbmcsICJBcnJheSBpbmRleCAiICsgaW5kZXggKyAiIGlzIG91dCBvZiBi
b3VuZHMgb2YgIiArIHJlZik7CisgICAgICAgICAgICByZXR1cm4gRVB0ci5ib3gocmVmLnB0ci5w
bHVzKGluZGV4ICogbm9kZS5hcmd1bWVudFR5cGVzWzBdLmVsZW1lbnRUeXBlLnNpemUpKTsKKyAg
ICAgICAgfTsKKyAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOworICAgIH0K
K30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQm9v
bC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQm9vbC5qcwpkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNThiYjBlMDliODBiZWUxMDcwODliMWM5ZDIwMGNi
YzY4YTVjYjlkMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckJvb2wuanMKKysrIC9kZXYv
bnVsbApAQCAtMSw2OCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwot
ICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0g
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsKLQotY2xhc3MgT3BlcmF0b3JCb29sIHsKLSAgICBjb25z
dHJ1Y3RvcihiYXNlVHlwZU5hbWUpCi0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5hbWUg
PSBiYXNlVHlwZU5hbWU7Ci0gICAgfQotCi0gICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJu
IHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQotCi0gICAgdG9TdHJpbmcoKQotICAgIHsKLSAgICAgICAg
cmV0dXJuIGBuYXRpdmUgb3BlcmF0b3IgYm9vbCgke3RoaXMuYmFzZVR5cGVOYW1lfSlgOwotICAg
IH0KLQotICAgIHN0YXRpYyBmdW5jdGlvbnMoKQotICAgIHsKLSAgICAgICAgLy8gRklYTUU6IFRo
ZXNlIG9wZXJhdG9ycyBzaG91bGQgYmUgaW4gdGhlIHN0YW5kYXJkIGxpYnJhcnkgd2hlcmUgcG9z
c2libGUuCi0gICAgICAgIGlmICghT3BlcmF0b3JCb29sLl9mdW5jdGlvbnMpIHsKLSAgICAgICAg
ICAgIE9wZXJhdG9yQm9vbC5fZnVuY3Rpb25zID0gW107Ci0KLSAgICAgICAgICAgIC8vIGJvb2wg
aXMgbm90IGluY2x1ZGVkIGJlY2F1c2UgdGhpcyBpcyBnZW5lcmF0ZWQgYnkgdGhlIGNvcHkgY29u
c3RydWN0b3IuCi0gICAgICAgICAgICAvLyBGSVhNRTogSW5jbHVkZSBhbGwgbmF0aXZlIHR5cGVz
LgotICAgICAgICAgICAgY29uc3QgdHlwZU5hbWVzID0gWyAidWNoYXIiLCAidWludCIsICJpbnQi
LCAiZmxvYXQiIF0uY29uY2F0KGFsbFZlY3RvclR5cGVOYW1lcygpKTsKLQotICAgICAgICAgICAg
Zm9yIChsZXQgdHlwZU5hbWUgb2YgdHlwZU5hbWVzKQotICAgICAgICAgICAgICAgIE9wZXJhdG9y
Qm9vbC5fZnVuY3Rpb25zLnB1c2gobmV3IE9wZXJhdG9yQm9vbCh0eXBlTmFtZSkpOwotICAgICAg
ICB9Ci0gICAgICAgIHJldHVybiBPcGVyYXRvckJvb2wuX2Z1bmN0aW9uczsKLSAgICB9Ci0KLSAg
ICBpbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCi0gICAgewotICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFtyZWZdLCBub2RlKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCBzaXpl
ID0gbm9kZS5hcmd1bWVudFR5cGVzWzBdLnNpemU7Ci0gICAgICAgICAgICBmb3IgKGxldCBpID0g
MDsgaSA8IHNpemU7ICsraSkgewotICAgICAgICAgICAgICAgIGlmICghIXJlZi5nZXQoaSkpCi0g
ICAgICAgICAgICAgICAgICAgIHJldHVybiBFUHRyLmJveCh0cnVlKTsKLSAgICAgICAgICAgIH0K
LSAgICAgICAgICAgIHJldHVybiBFUHRyLmJveChmYWxzZSk7Ci0gICAgICAgIH0KLSAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwotICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0
IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Q
cmVwYXJlLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5qcwppbmRl
eCA3YjE2MTM5ZTk1YjgxZTJlOGRhODM1NGJkOGMxNzliMTkwYmFlZmEwLi44MzQ1OTJkMzZmMzQ1
N2RmYTg2YjU3NTFiYjcyNjI0NzJhM2YwYTJkIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL1ByZXBhcmUuanMKQEAgLTQwLDIwICs0MCwxOSBAQCBsZXQgcHJlcGFyZSA9ICgoKSA9PiB7
CiAgICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIGZvbGRDb25zdGV4cHJzKHByb2dyYW0pOwot
ICAgICAgICByZW1vdmVUeXBlQXJndW1lbnRzKHByb2dyYW0pOwogCiAgICAgICAgIGxldCBuYW1l
UmVzb2x2ZXIgPSBjcmVhdGVOYW1lUmVzb2x2ZXIocHJvZ3JhbSk7CiAgICAgICAgIHJlc29sdmVO
YW1lc0luVHlwZXMocHJvZ3JhbSwgbmFtZVJlc29sdmVyKTsKICAgICAgICAgcmVzb2x2ZVR5cGVE
ZWZzSW5UeXBlcyhwcm9ncmFtKTsKICAgICAgICAgY2hlY2tSZWN1cnNpdmVUeXBlcyhwcm9ncmFt
KTsKICAgICAgICAgc3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycyhwcm9ncmFtKTsKLSAgICAgICAg
c3ludGhlc2l6ZU9wZXJhdG9yQm9vbChwcm9ncmFtKTsKICAgICAgICAgc3ludGhlc2l6ZUVudW1G
dW5jdGlvbnMocHJvZ3JhbSk7CiAgICAgICAgIHN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3Ro
KHByb2dyYW0pOwogICAgICAgICBzeW50aGVzaXplQ29weUNvbnN0cnVjdG9yT3BlcmF0b3IocHJv
Z3JhbSk7CiAgICAgICAgIHN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcihwcm9n
cmFtKTsKICAgICAgICAgcmVzb2x2ZU5hbWVzSW5GdW5jdGlvbnMocHJvZ3JhbSwgbmFtZVJlc29s
dmVyKTsKICAgICAgICAgcmVzb2x2ZVR5cGVEZWZzSW5GdW5jdGlvbnMocHJvZ3JhbSk7CisgICAg
ICAgIGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzKHByb2dyYW0pOwogICAgICAgICAKICAgICAgICAg
Y2hlY2socHJvZ3JhbSk7CiAgICAgICAgIGNoZWNrTGl0ZXJhbFR5cGVzKHByb2dyYW0pOwpAQCAt
NjYsNiArNjUsNyBAQCBsZXQgcHJlcGFyZSA9ICgoKSA9PiB7CiAgICAgICAgIGNoZWNrTG9vcHMo
cHJvZ3JhbSk7CiAgICAgICAgIGNoZWNrUmVjdXJzaW9uKHByb2dyYW0pOwogICAgICAgICBjaGVj
a1Byb2dyYW1XcmFwcGVkKHByb2dyYW0pOworICAgICAgICBjaGVja1R5cGVzV2l0aEFyZ3VtZW50
cyhwcm9ncmFtKTsKICAgICAgICAgZmluZEhpZ2hab21iaWVzKHByb2dyYW0pOwogICAgICAgICBw
cm9ncmFtLnZpc2l0KG5ldyBTdHJ1Y3RMYXlvdXRCdWlsZGVyKCkpOwogICAgICAgICBpbmxpbmUo
cHJvZ3JhbSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9n
cmFtLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUHJvZ3JhbS5qcwppbmRleCAw
NjYyNWQ5OGZjNDFlNzRjOTNkZWNlODBiNzBjZTU1YzdhZjc0ZGQ1Li5hYzFkZWZiNGZiYWFhNmU4
ZTEzNDI5NzM0Y2NmNDkxNTMzOWJhNTM5IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Byb2dyYW0uanMKQEAgLTQ4LDE5ICs0OCwyNSBAQCBjbGFzcyBQcm9ncmFtIGV4dGVuZHMgTm9k
ZSB7CiAgICAgICAgIGlmIChzdGF0ZW1lbnQgaW5zdGFuY2VvZiBGdW5jKSB7CiAgICAgICAgICAg
ICBsZXQgYXJyYXkgPSB0aGlzLl9mdW5jdGlvbnMuZ2V0KHN0YXRlbWVudC5uYW1lKTsKICAgICAg
ICAgICAgIGlmICghYXJyYXkpCi0gICAgICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zLnNldChz
dGF0ZW1lbnQubmFtZSwgYXJyYXkgPSBbXSk7CisgICAgICAgICAgICAgICAgdGhpcy5mdW5jdGlv
bnMuc2V0KHN0YXRlbWVudC5uYW1lLCBhcnJheSA9IFtdKTsKICAgICAgICAgICAgIGFycmF5LnB1
c2goc3RhdGVtZW50KTsKLSAgICAgICAgfSBlbHNlIGlmIChzdGF0ZW1lbnQgaW5zdGFuY2VvZiBU
eXBlKQotICAgICAgICAgICAgdGhpcy5fdHlwZXMuc2V0KHN0YXRlbWVudC5uYW1lLCBzdGF0ZW1l
bnQpOwotICAgICAgICBlbHNlCisgICAgICAgIH0gZWxzZSBpZiAoc3RhdGVtZW50IGluc3RhbmNl
b2YgVHlwZSkgeworICAgICAgICAgICAgaWYgKHN0YXRlbWVudC5pc05hdGl2ZSAmJiBzdGF0ZW1l
bnQudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMCkgeworICAgICAgICAgICAgICAgIGxldCBhcnJh
eSA9IHRoaXMudHlwZXMuZ2V0KHN0YXRlbWVudC5uYW1lKTsKKyAgICAgICAgICAgICAgICBpZiAo
IWFycmF5KQorICAgICAgICAgICAgICAgICAgICB0aGlzLnR5cGVzLnNldChzdGF0ZW1lbnQubmFt
ZSwgYXJyYXkgPSBbXSk7CisgICAgICAgICAgICAgICAgYXJyYXkucHVzaChzdGF0ZW1lbnQpOwor
ICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgdGhpcy50eXBlcy5zZXQoc3RhdGVt
ZW50Lm5hbWUsIHN0YXRlbWVudCk7CisgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgdGhyb3cg
bmV3IEVycm9yKCJTdGF0ZW1lbnQgaXMgbm90IGEgZnVuY3Rpb24gb3IgdHlwZTogIiArIHN0YXRl
bWVudCk7Ci0gICAgICAgIHRoaXMuX3RvcExldmVsU3RhdGVtZW50cy5wdXNoKHN0YXRlbWVudCk7
Ci0gICAgICAgIHRoaXMuX2dsb2JhbE5hbWVDb250ZXh0LmFkZChzdGF0ZW1lbnQpOworICAgICAg
ICB0aGlzLnRvcExldmVsU3RhdGVtZW50cy5wdXNoKHN0YXRlbWVudCk7CisgICAgICAgIHRoaXMu
Z2xvYmFsTmFtZUNvbnRleHQuYWRkKHN0YXRlbWVudCk7CiAgICAgfQogICAgIAogICAgIHRvU3Ry
aW5nKCkKICAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fdG9wTGV2ZWxTdGF0ZW1lbnRzLmxlbmd0
aCkKKyAgICAgICAgaWYgKCF0aGlzLnRvcExldmVsU3RhdGVtZW50cy5sZW5ndGgpCiAgICAgICAg
ICAgICByZXR1cm4gIiI7CiAgICAgICAgIHJldHVybiB0aGlzLl90b3BMZXZlbFN0YXRlbWVudHMu
am9pbigiOyIpICsgIjsiOwogICAgIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1JlbW92ZVR5cGVBcmd1bWVudHMuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA5M2RiOWU2NDdjOTIxYzk1NGU4OTk4Y2UxNjc1ZGU3Y2I2MWYxNDJiLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1JlbW92ZVR5cGVBcmd1bWVudHMuanMKKysrIC9kZXYvbnVsbApAQCAtMSw2NSAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQot
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
Ci0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ug
c3RyaWN0IjsKLQotZnVuY3Rpb24gcmVtb3ZlVHlwZUFyZ3VtZW50cyhwcm9ncmFtKQotewotICAg
IGNsYXNzIFJlbW92ZVR5cGVBcmd1bWVudHMgZXh0ZW5kcyBWaXNpdG9yIHsKLSAgICAgICAgc3Rh
dGljIHJlc29sdmVOYW1lQW5kQXJndW1lbnRzKG5vZGUpCi0gICAgICAgIHsKLSAgICAgICAgICAg
IGlmICghbm9kZS50eXBlQXJndW1lbnRzKQotICAgICAgICAgICAgICAgIHJldHVybiBub2RlLm5h
bWU7Ci0KLSAgICAgICAgICAgIHN3aXRjaCAobm9kZS5uYW1lKSB7Ci0gICAgICAgICAgICBjYXNl
ICJ2ZWN0b3IiOgotICAgICAgICAgICAgICAgIGlmIChub2RlLnR5cGVBcmd1bWVudHMubGVuZ3Ro
ICE9IDIpCi0gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBXU3ludGF4RXJyb3Iobm9kZS5v
cmlnaW5TdHJpbmcsIGAke25vZGUubmFtZX0gc2hvdWxkIGhhdmUgMiB0eXBlIGFyZ3VtZW50cywg
Z290ICR7bm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aH0uYCk7Ci0KLSAgICAgICAgICAgICAgICBj
b25zdCBlbGVtZW50VHlwZU5hbWUgPSBub2RlLnR5cGVBcmd1bWVudHNbMF0ubmFtZTsKLSAgICAg
ICAgICAgICAgICBjb25zdCBsZW5ndGhWYWx1ZSA9IG5vZGUudHlwZUFyZ3VtZW50c1sxXS52YWx1
ZTsKLQotICAgICAgICAgICAgICAgIGlmIChWZWN0b3JFbGVtZW50VHlwZXMuaW5kZXhPZihlbGVt
ZW50VHlwZU5hbWUpIDwgMCkKLSAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdTeW50YXhF
cnJvcihub2RlLm9yaWdpblN0cmluZywgYCR7ZWxlbWVudFR5cGVOYW1lfSBpcyBub3QgYSB2YWxp
ZCB2ZWN0b3IgZWxlbWVudCB0eXBlLmApOwotICAgICAgICAgICAgICAgIGlmIChWZWN0b3JFbGVt
ZW50U2l6ZXMuaW5kZXhPZihsZW5ndGhWYWx1ZSkgPCAwKQotICAgICAgICAgICAgICAgICAgICB0
aHJvdyBuZXcgV1N5bnRheEVycm9yKG5vZGUub3JpZ2luU3RyaW5nLCBgJHtsZW5ndGhWYWx1ZX0g
aXMgbm90IGEgdmFsaWQgc2l6ZSBmb3IgdmVjdG9ycyB3aXRoIGVsZW1lbnQgdHlwZSAke2VsZW1l
bnRUeXBlTmFtZX0uYCk7Ci0KLSAgICAgICAgICAgICAgICByZXR1cm4gYCR7ZWxlbWVudFR5cGVO
YW1lfSR7bGVuZ3RoVmFsdWV9YDsKLSAgICAgICAgICAgIC8vIEZJWE1FOiBGdXJ0aGVyIGNhc2Vz
IGZvciBtYXRyaWNlcywgdGV4dHVyZXMsIGV0Yy4KLSAgICAgICAgICAgIGRlZmF1bHQ6Ci0gICAg
ICAgICAgICAgICAgaWYgKG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGgpCi0gICAgICAgICAgICAg
ICAgICAgIHRocm93IG5ldyBXU3ludGF4RXJyb3IoYCR7bm9kZS5uYW1lfSR7YXJndW1lbnRzLmpv
aW4oIiwgIil9IGlzIG5vdCBhIHBlcm1pdHRlZCBnZW5lcmljIHR5cGUgb3IgZnVuY3Rpb25gKTsK
LSAgICAgICAgICAgICAgICByZXR1cm4gbm9kZS5uYW1lOwotICAgICAgICAgICAgfQotICAgICAg
ICB9Ci0KLSAgICAgICAgdmlzaXRUeXBlUmVmKG5vZGUpCi0gICAgICAgIHsKLSAgICAgICAgICAg
IG5vZGUuX25hbWUgPSBSZW1vdmVUeXBlQXJndW1lbnRzLnJlc29sdmVOYW1lQW5kQXJndW1lbnRz
KG5vZGUpOwotICAgICAgICAgICAgbm9kZS5fdHlwZUFyZ3VtZW50cyA9IG51bGw7Ci0gICAgICAg
IH0KLSAgICB9Ci0KLSAgICBwcm9ncmFtLnZpc2l0KG5ldyBSZW1vdmVUeXBlQXJndW1lbnRzKCkp
OwotfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU5h
bWVzLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU5hbWVzLmpzCmlu
ZGV4IDJlNDAyYzhkNmMwYTM2MDk4NTYxZTAyNzVlZTUzZTc3OGZkMzg0YjguLmI4YjUzMzQyNDU5
YWU4MzlhY2Y3ZjA3YzJiYmFlYTk2ZThhNTRjZGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVOYW1lcy5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9SZXNvbHZlTmFtZXMuanMKQEAgLTMxLDggKzMxLDEzIEBAIGZ1bmN0aW9uIGNy
ZWF0ZU5hbWVSZXNvbHZlcihwcm9ncmFtKQogCiBmdW5jdGlvbiByZXNvbHZlTmFtZXNJblR5cGVz
KHByb2dyYW0sIG5hbWVSZXNvbHZlcikKIHsKLSAgICBmb3IgKGxldCB0eXBlIG9mIHByb2dyYW0u
dHlwZXMudmFsdWVzKCkpCi0gICAgICAgIG5hbWVSZXNvbHZlci5kb1N0YXRlbWVudCh0eXBlKTsK
KyAgICBmb3IgKGxldCB0eXBlIG9mIHByb2dyYW0udHlwZXMudmFsdWVzKCkpIHsKKyAgICAgICAg
aWYgKHR5cGUgaW5zdGFuY2VvZiBBcnJheSkgeworICAgICAgICAgICAgZm9yIChsZXQgY29uc3Rp
dHVlbnRUeXBlIG9mIHR5cGUpCisgICAgICAgICAgICAgICAgbmFtZVJlc29sdmVyLmRvU3RhdGVt
ZW50KGNvbnN0aXR1ZW50VHlwZSk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgbmFtZVJl
c29sdmVyLmRvU3RhdGVtZW50KHR5cGUpOworICAgIH0KIH0KIAogZnVuY3Rpb24gcmVzb2x2ZU5h
bWVzSW5GdW5jdGlvbnMocHJvZ3JhbSwgbmFtZVJlc29sdmVyKQpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU92ZXJsb2FkSW1wbC5qcyBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVPdmVybG9hZEltcGwuanMKaW5kZXggZDBmMWUz
NGQ2MTdlYTI3MjY2NDY3YzE2MTcwNzE1NDY2NGE0NDlhZC4uN2EwOTdiY2E0NzBlY2I1NmE2ZWUz
ZGVmNTJhYWY1Zjc4YjUwNjUxMSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvUmVzb2x2ZU92ZXJsb2FkSW1wbC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9SZXNvbHZlT3ZlcmxvYWRJbXBsLmpzCkBAIC0xMDAsMyArMTAwLDI4IEBAIGZ1bmN0
aW9uIHJlc29sdmVPdmVybG9hZEltcGwoZnVuY3Rpb25zLCBhcmd1bWVudFR5cGVzLCByZXR1cm5U
eXBlLCBhbGxvd0VudHJ5UG9pCiAgICAgCiAgICAgcmV0dXJuIHtmYWlsdXJlczogYW1iaWd1aXR5
TGlzdC5tYXAob3ZlcmxvYWQgPT4gbmV3IE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUob3Zlcmxv
YWQuZnVuYywgbWVzc2FnZSkpfTsKIH0KKworZnVuY3Rpb24gcmVzb2x2ZVR5cGVPdmVybG9hZElt
cGwodHlwZXMsIHR5cGVBcmd1bWVudHMpCit7CisgICAgaWYgKCF0eXBlcykKKyAgICAgICAgdGhy
b3cgbmV3IEVycm9yKCJOdWxsIHR5cGVzOyB0aGF0IHNob3VsZCBoYXZlIGJlZW4gY2F1Z2h0IGJ5
IHRoZSBjYWxsZXIuIik7CisKKyAgICBsZXQgZmFpbHVyZXMgPSBbXTsKKyAgICBsZXQgc3VjY2Vz
c2VzID0gW107CisgICAgZm9yIChsZXQgdHlwZSBvZiB0eXBlcykgeworICAgICAgICBsZXQgb3Zl
cmxvYWQgPSBpbmZlclR5cGVzRm9yVHlwZUFyZ3VtZW50cyh0eXBlLCB0eXBlQXJndW1lbnRzKTsK
KyAgICAgICAgaWYgKG92ZXJsb2FkLmZhaWx1cmUpCisgICAgICAgICAgICBmYWlsdXJlcy5wdXNo
KG92ZXJsb2FkLmZhaWx1cmUpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBzdWNjZXNzZXMu
cHVzaChvdmVybG9hZCk7CisgICAgfQorICAgIAorICAgIGlmICghc3VjY2Vzc2VzLmxlbmd0aCkK
KyAgICAgICAgcmV0dXJuIHtmYWlsdXJlczogZmFpbHVyZXN9OworICAgIAorICAgIGlmIChzdWNj
ZXNzZXMubGVuZ3RoID09IDEpCisgICAgICAgIHJldHVybiBzdWNjZXNzZXNbMF07CisgICAgCisg
ICAgbGV0IG1lc3NhZ2UgPSAiQW1iaWd1b3VzIG92ZXJsb2FkIC0gdHlwZXMgbXV0dWFsbHkgYXBw
bGljYWJsZSI7CisgICAgcmV0dXJuIHtmYWlsdXJlczogc3VjY2Vzc2VzLm1hcChvdmVybG9hZCA9
PiBuZXcgVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUob3ZlcmxvYWQudHlwZSwgbWVzc2Fn
ZSkpfTsKK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29s
dmVUeXBlRGVmcy5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVUeXBl
RGVmcy5qcwppbmRleCA5MTQzZjhlMWUwMGEwNDk4MTRiOTBhMzQ1YzVhZjQ1MTQ1OWQ4NTc0Li4w
NTc0YmVjZDU1MzE1MDk0NzhhMmRlZmRjMmZlN2M2OGU2MWMzZDM1IDEwMDY0NAotLS0gYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXNvbHZlVHlwZURlZnMuanMKKysrIGIvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZVR5cGVEZWZzLmpzCkBAIC0yNyw4ICsyNywx
MyBAQAogZnVuY3Rpb24gcmVzb2x2ZVR5cGVEZWZzSW5UeXBlcyhwcm9ncmFtKQogewogICAgIGxl
dCByZXNvbHZlciA9IG5ldyBUeXBlRGVmUmVzb2x2ZXIoKTsKLSAgICBmb3IgKGxldCB0eXBlIG9m
IHByb2dyYW0udHlwZXMudmFsdWVzKCkpCi0gICAgICAgIHR5cGUudmlzaXQocmVzb2x2ZXIpOwor
ICAgIGZvciAobGV0IHR5cGUgb2YgcHJvZ3JhbS50eXBlcy52YWx1ZXMoKSkgeworICAgICAgICBp
ZiAodHlwZSBpbnN0YW5jZW9mIEFycmF5KSB7CisgICAgICAgICAgICBmb3IgKGxldCBjb25zdGl0
dWVudFR5cGUgb2YgdHlwZSkKKyAgICAgICAgICAgICAgICBjb25zdGl0dWVudFR5cGUudmlzaXQo
cmVzb2x2ZXIpOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIHR5cGUudmlzaXQocmVzb2x2
ZXIpOworICAgIH0KIH0KIAogZnVuY3Rpb24gcmVzb2x2ZVR5cGVEZWZzSW5GdW5jdGlvbnMocHJv
Z3JhbSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVy
LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanMKaW5kZXggZDU0
N2QyMDNmMGRiZjhjYWJlZTQzNzc4MDNiZDViMDg0ZTk4MDdiYy4uYmQ4M2MzN2Q5YzQ3NzcxN2Uz
NTIzNzI4ZDE1ZGY0Mjc5MGRhMWIyZiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUmV3cml0ZXIuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UmV3cml0ZXIuanMKQEAgLTk3LDcgKzk3LDcgQEAgY2xhc3MgUmV3cml0ZXIgewogICAgIAogICAg
IHZpc2l0VHlwZVJlZihub2RlKQogICAgIHsKLSAgICAgICAgbGV0IHJlc3VsdCA9IG5ldyBUeXBl
UmVmKG5vZGUub3JpZ2luLCBub2RlLm5hbWUpOworICAgICAgICBsZXQgcmVzdWx0ID0gbmV3IFR5
cGVSZWYobm9kZS5vcmlnaW4sIG5vZGUubmFtZSwgbm9kZS50eXBlQXJndW1lbnRzLm1hcChhcmd1
bWVudCA9PiBhcmd1bWVudC52aXNpdCh0aGlzKSkpOwogICAgICAgICBpZiAobm9kZS50eXBlKQog
ICAgICAgICAgICAgcmVzdWx0LnR5cGUgPSBOb2RlLnZpc2l0KG5vZGUudHlwZSwgdGhpcyk7CiAg
ICAgICAgIHJldHVybiByZXN1bHQ7CkBAIC0zODIsOSArMzgyLDE0IEBAIGNsYXNzIFJld3JpdGVy
IHsKIAogICAgIHZpc2l0VmVjdG9yVHlwZShub2RlKQogICAgIHsKLSAgICAgICAgY29uc3QgdmVj
VHlwZSA9IG5ldyBWZWN0b3JUeXBlKG5vZGUub3JpZ2luLCBub2RlLm5hbWUpOwotICAgICAgICB2
ZWNUeXBlLl9lbGVtZW50VHlwZSA9IG5vZGUuZWxlbWVudFR5cGUudmlzaXQodGhpcyk7CisgICAg
ICAgIGNvbnN0IHZlY1R5cGUgPSBuZXcgVmVjdG9yVHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1l
LCBub2RlLnR5cGVBcmd1bWVudHMubWFwKGFyZ3VtZW50ID0+IGFyZ3VtZW50LnZpc2l0KHRoaXMp
KSk7CiAgICAgICAgIHJldHVybiB2ZWNUeXBlOwogICAgIH0KKworICAgIHZpc2l0TWF0cml4VHlw
ZShub2RlKQorICAgIHsKKyAgICAgICAgY29uc3QgbWF0VHlwZSA9IG5ldyBNYXRyaXhUeXBlKG5v
ZGUub3JpZ2luLCBub2RlLm5hbWUsIG5vZGUudHlwZUFyZ3VtZW50cy5tYXAoYXJndW1lbnQgPT4g
YXJndW1lbnQudmlzaXQodGhpcykpKTsKKyAgICAgICAgcmV0dXJuIG1hdFR5cGU7CisgICAgfQog
fQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TUElSVi5odG1s
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbAppbmRleCBjN2IzOTQw
ZjJiMTFiZDg5NjE0ZjE0YTliNTJjNDdhNTYxNjZhYjE0Li5mZjQzMmI1NjA2Y2Y2YjUwZGUyYWE5
Mzg3YTZjNGU4N2NjMWM4NzljIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9TUElSVi5odG1sCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1NQSVJW
Lmh0bWwKQEAgLTQzLDYgKzQzLDcgQEAgdGQgewogICAgIDxzY3JpcHQgc3JjPSJDaGVja1JlY3Vy
c2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNrUmVjdXJzaXZlVHlwZXMu
anMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJDaGVja1JldHVybnMuanMiPjwvc2NyaXB0
PgorICAgIDxzY3JpcHQgc3JjPSJDaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+
CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNrVW5yZWFjaGFibGVDb2RlLmpzIj48L3NjcmlwdD4KICAg
ICA8c2NyaXB0IHNyYz0iQ2hlY2tXcmFwcGVkLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNy
Yz0iQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CkBAIC05NSw2ICs5Niw3IEBAIHRkIHsKICAgICA8c2Ny
aXB0IHNyYz0iTG9vcENoZWNrZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJNYWtl
QXJyYXlSZWZFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTWFrZVB0
ckV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJNYXRyaXhUeXBlLmpz
Ij48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTmFtZUNvbnRleHQuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQgc3JjPSJOYW1lRmluZGVyLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNy
Yz0iTmFtZVJlc29sdmVyLmpzIj48L3NjcmlwdD4KQEAgLTEwMiw5ICsxMDQsOCBAQCB0ZCB7CiAg
ICAgPHNjcmlwdCBzcmM9Ik5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQgc3JjPSJOdWxsTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBz
cmM9Ik51bGxUeXBlLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRl
ckluZGV4LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRlckluZGV4
ZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFycmF5UmVmTGVuZ3Ro
LmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JCb29sLmpzIj48L3Njcmlw
dD4KICAgICA8c2NyaXB0IHNyYz0iT3JpZ2luS2luZC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlw
dCBzcmM9Ik92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiPjwvc2NyaXB0PgogICAgIDxzY3Jp
cHQgc3JjPSJQYXJzZS5qcyI+PC9zY3JpcHQ+CkBAIC0xMTYsNyArMTE3LDYgQEAgdGQgewogICAg
IDxzY3JpcHQgc3JjPSJSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KICAg
ICA8c2NyaXB0IHNyYz0iUmVjdXJzaW9uQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlw
dCBzcmM9IlJlY3Vyc2l2ZVR5cGVDaGVja2VyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNy
Yz0iUmVtb3ZlVHlwZUFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlJl
c29sdmVOYW1lcy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlJlc29sdmVPdmVybG9h
ZEltcGwuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJSZXNvbHZlUHJvcGVydGllcy5q
cyI+PC9zY3JpcHQ+CkBAIC0xMzMsMTMgKzEzMywxMyBAQCB0ZCB7CiAgICAgPHNjcmlwdCBzcmM9
IlN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQg
c3JjPSJTeW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0
IHNyYz0iU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBz
cmM9IlN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiAgICAg
PHNjcmlwdCBzcmM9IlN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9z
Y3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlRyYXBTdGF0ZW1lbnQuanMiPjwvc2NyaXB0PgogICAg
IDxzY3JpcHQgc3JjPSJUeXBlRGVmLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlw
ZURlZlJlc29sdmVyLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlwZVJlZi5qcyI+
PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9IlR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJl
LmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlwZWRWYWx1ZS5qcyI+PC9zY3JpcHQ+
CiAgICAgPHNjcmlwdCBzcmM9IlVpbnRMaXRlcmFsLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iVWludExpdGVyYWxUeXBlLmpzIj48L3NjcmlwdD4KZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFyeS5qcyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFyeS5qcwppbmRleCAwNmIyNTFjZjBhMjQ4MTlj
YWI1MDY1ZWY1NDQ1ZTE0ODlkNWVhYWZjLi42MGM1Y2UwM2Q1MGVmNjkzZDU1NjgwMjZmZDY4MDFj
ZjY1ZWE4ZTQ5IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGFu
ZGFyZExpYnJhcnkuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhbmRh
cmRMaWJyYXJ5LmpzCkBAIC0zMyw1MiArMzMsNjYzIEBAIGxldCBzdGFuZGFyZExpYnJhcnkgPSBg
CiBuYXRpdmUgdHlwZWRlZiB2b2lkOwogbmF0aXZlIHR5cGVkZWYgYm9vbDsKIG5hdGl2ZSB0eXBl
ZGVmIHVjaGFyOworbmF0aXZlIHR5cGVkZWYgdXNob3J0OwogbmF0aXZlIHR5cGVkZWYgdWludDsK
K25hdGl2ZSB0eXBlZGVmIGNoYXI7CituYXRpdmUgdHlwZWRlZiBzaG9ydDsKIG5hdGl2ZSB0eXBl
ZGVmIGludDsKK25hdGl2ZSB0eXBlZGVmIGhhbGY7CiBuYXRpdmUgdHlwZWRlZiBmbG9hdDsKK25h
dGl2ZSB0eXBlZGVmIGF0b21pY19pbnQ7CituYXRpdmUgdHlwZWRlZiBhdG9taWNfdWludDsKIAot
Ly8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciB0aGVzZSB0eXBlcyB0byBJbnRyaW5zaWNzLmpzCi0v
LyBuYXRpdmUgdHlwZWRlZiB1c2hvcnQ7Ci0vLyBuYXRpdmUgdHlwZWRlZiBjaGFyOwotLy8gbmF0
aXZlIHR5cGVkZWYgc2hvcnQ7Ci0vLyBuYXRpdmUgdHlwZWRlZiBoYWxmOwotLy8gbmF0aXZlIHR5
cGVkZWYgYXRvbWljX2ludDsKLS8vIG5hdGl2ZSB0eXBlZGVmIGF0b21pY191aW50OworbmF0aXZl
IHR5cGVkZWYgdmVjdG9yPGJvb2wsIDI+OwordHlwZWRlZiBib29sMiA9IHZlY3Rvcjxib29sLCAy
PjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjxib29sLCAzPjsKK3R5cGVkZWYgYm9vbDMgPSB2ZWN0
b3I8Ym9vbCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8Ym9vbCwgND47Cit0eXBlZGVmIGJv
b2w0ID0gdmVjdG9yPGJvb2wsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVjaGFyLCAyPjsK
K3R5cGVkZWYgdWNoYXIyID0gdmVjdG9yPHVjaGFyLCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rv
cjx1Y2hhciwgMz47Cit0eXBlZGVmIHVjaGFyMyA9IHZlY3Rvcjx1Y2hhciwgMz47CituYXRpdmUg
dHlwZWRlZiB2ZWN0b3I8dWNoYXIsIDQ+OwordHlwZWRlZiB1Y2hhcjQgPSB2ZWN0b3I8dWNoYXIs
IDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVzaG9ydCwgMj47Cit0eXBlZGVmIHVzaG9ydDIg
PSB2ZWN0b3I8dXNob3J0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjx1c2hvcnQsIDM+Owor
dHlwZWRlZiB1c2hvcnQzID0gdmVjdG9yPHVzaG9ydCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0
b3I8dXNob3J0LCA0PjsKK3R5cGVkZWYgdXNob3J0NCA9IHZlY3Rvcjx1c2hvcnQsIDQ+OworbmF0
aXZlIHR5cGVkZWYgdmVjdG9yPHVpbnQsIDI+OwordHlwZWRlZiB1aW50MiA9IHZlY3Rvcjx1aW50
LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjx1aW50LCAzPjsKK3R5cGVkZWYgdWludDMgPSB2
ZWN0b3I8dWludCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8dWludCwgND47Cit0eXBlZGVm
IHVpbnQ0ID0gdmVjdG9yPHVpbnQsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGNoYXIsIDI+
OwordHlwZWRlZiBjaGFyMiA9IHZlY3RvcjxjaGFyLCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rv
cjxjaGFyLCAzPjsKK3R5cGVkZWYgY2hhcjMgPSB2ZWN0b3I8Y2hhciwgMz47CituYXRpdmUgdHlw
ZWRlZiB2ZWN0b3I8Y2hhciwgND47Cit0eXBlZGVmIGNoYXI0ID0gdmVjdG9yPGNoYXIsIDQ+Owor
bmF0aXZlIHR5cGVkZWYgdmVjdG9yPHNob3J0LCAyPjsKK3R5cGVkZWYgc2hvcnQyID0gdmVjdG9y
PHNob3J0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxzaG9ydCwgMz47Cit0eXBlZGVmIHNo
b3J0MyA9IHZlY3RvcjxzaG9ydCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8c2hvcnQsIDQ+
OwordHlwZWRlZiBzaG9ydDQgPSB2ZWN0b3I8c2hvcnQsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVj
dG9yPGludCwgMj47Cit0eXBlZGVmIGludDIgPSB2ZWN0b3I8aW50LCAyPjsKK25hdGl2ZSB0eXBl
ZGVmIHZlY3RvcjxpbnQsIDM+OwordHlwZWRlZiBpbnQzID0gdmVjdG9yPGludCwgMz47CituYXRp
dmUgdHlwZWRlZiB2ZWN0b3I8aW50LCA0PjsKK3R5cGVkZWYgaW50NCA9IHZlY3RvcjxpbnQsIDQ+
OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGhhbGYsIDI+OwordHlwZWRlZiBoYWxmMiA9IHZlY3Rv
cjxoYWxmLCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxoYWxmLCAzPjsKK3R5cGVkZWYgaGFs
ZjMgPSB2ZWN0b3I8aGFsZiwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8aGFsZiwgND47Cit0
eXBlZGVmIGhhbGY0ID0gdmVjdG9yPGhhbGYsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGZs
b2F0LCAyPjsKK3R5cGVkZWYgZmxvYXQyID0gdmVjdG9yPGZsb2F0LCAyPjsKK25hdGl2ZSB0eXBl
ZGVmIHZlY3RvcjxmbG9hdCwgMz47Cit0eXBlZGVmIGZsb2F0MyA9IHZlY3RvcjxmbG9hdCwgMz47
CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8ZmxvYXQsIDQ+OwordHlwZWRlZiBmbG9hdDQgPSB2ZWN0
b3I8ZmxvYXQsIDQ+OwogCi1uYXRpdmUgb3BlcmF0b3IgaW50KHVpbnQpOwotbmF0aXZlIG9wZXJh
dG9yIGludCh1Y2hhcik7Ci1uYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKLW5hdGl2ZSBvcGVy
YXRvciB1aW50KGludCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWludCh1Y2hhcik7Ci1uYXRpdmUgb3Bl
cmF0b3IgdWludChmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWNoYXIoaW50KTsKK25hdGl2ZSB0
eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCAyPjsKK3R5cGVkZWYgaGFsZjJ4MiA9IG1hdHJpeDxoYWxm
LCAyLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCAzPjsKK3R5cGVkZWYgaGFs
ZjJ4MyA9IG1hdHJpeDxoYWxmLCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAy
LCA0PjsKK3R5cGVkZWYgaGFsZjJ4NCA9IG1hdHJpeDxoYWxmLCAyLCA0PjsKK25hdGl2ZSB0eXBl
ZGVmIG1hdHJpeDxoYWxmLCAzLCAyPjsKK3R5cGVkZWYgaGFsZjN4MiA9IG1hdHJpeDxoYWxmLCAz
LCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCAzPjsKK3R5cGVkZWYgaGFsZjN4
MyA9IG1hdHJpeDxoYWxmLCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCA0
PjsKK3R5cGVkZWYgaGFsZjN4NCA9IG1hdHJpeDxoYWxmLCAzLCA0PjsKK25hdGl2ZSB0eXBlZGVm
IG1hdHJpeDxoYWxmLCA0LCAyPjsKK3R5cGVkZWYgaGFsZjR4MiA9IG1hdHJpeDxoYWxmLCA0LCAy
PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCAzPjsKK3R5cGVkZWYgaGFsZjR4MyA9
IG1hdHJpeDxoYWxmLCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCA0PjsK
K3R5cGVkZWYgaGFsZjR4NCA9IG1hdHJpeDxoYWxmLCA0LCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1h
dHJpeDxmbG9hdCwgMiwgMj47Cit0eXBlZGVmIGZsb2F0MngyID0gbWF0cml4PGZsb2F0LCAyLCAy
PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgMz47Cit0eXBlZGVmIGZsb2F0Mngz
ID0gbWF0cml4PGZsb2F0LCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwg
ND47Cit0eXBlZGVmIGZsb2F0Mng0ID0gbWF0cml4PGZsb2F0LCAyLCA0PjsKK25hdGl2ZSB0eXBl
ZGVmIG1hdHJpeDxmbG9hdCwgMywgMj47Cit0eXBlZGVmIGZsb2F0M3gyID0gbWF0cml4PGZsb2F0
LCAzLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgMz47Cit0eXBlZGVmIGZs
b2F0M3gzID0gbWF0cml4PGZsb2F0LCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9h
dCwgMywgND47Cit0eXBlZGVmIGZsb2F0M3g0ID0gbWF0cml4PGZsb2F0LCAzLCA0PjsKK25hdGl2
ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgNCwgMj47Cit0eXBlZGVmIGZsb2F0NHgyID0gbWF0cml4
PGZsb2F0LCA0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgNCwgMz47Cit0eXBl
ZGVmIGZsb2F0NHgzID0gbWF0cml4PGZsb2F0LCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJp
eDxmbG9hdCwgNCwgND47Cit0eXBlZGVmIGZsb2F0NHg0ID0gbWF0cml4PGZsb2F0LCA0LCA0PjsK
KworbmF0aXZlIHR5cGVkZWYgc2FtcGxlcjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxib29s
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxib29sMj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGJvb2w0PjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dWNoYXIy
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTFEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1
c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUxRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1aW50Mj47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dWludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFE
PHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxjaGFyPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxRDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Y2hhcjM+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxz
aG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxRDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHNob3J0ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxp
bnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxoYWxmPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aGFsZjM+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUxRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8ZmxvYXQyPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGZsb2F0
ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTFEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGJvb2wzPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTFEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVjaGFyMj47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUxRDx1Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8
dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVzaG9ydD47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVz
aG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8dXNob3J0ND47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVpbnQy
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTFEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNoYXI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MUQ8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8Y2hhcjQ+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlMUQ8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8c2hv
cnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHNob3J0Mz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUxRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aW50PjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGludDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxpbnQ0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aGFs
ZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMUQ8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8ZmxvYXQ+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8ZmxvYXQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxmbG9hdDQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MURBcnJheTxib29sMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxib29sMz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxib29sND47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMURBcnJheTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1Y2hhcjI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1
c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dXNob3J0Mj47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMURBcnJheTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUx
REFycmF5PHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWludD47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMURBcnJheTx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1aW50ND47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxREFycmF5PGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGNoYXIz
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHNo
b3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxzaG9ydDM+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTFEQXJyYXk8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFy
cmF5PGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxpbnQyPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxREFycmF5PGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJy
YXk8aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxREFycmF5PGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFy
cmF5PGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGhhbGY0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUx
REFycmF5PGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxmbG9hdDM+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTFEQXJyYXk8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGJv
b2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Ym9vbDM+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlMURBcnJheTxib29sND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUx
REFycmF5PHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWNoYXIyPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTFEQXJyYXk8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJy
YXk8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dXNob3J0Mj47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMURBcnJheTx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJy
YXk8dWludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVpbnQyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMURBcnJheTx1aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGNoYXI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxjaGFyMj47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUxREFycmF5PGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJy
YXk8Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxzaG9ydD47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUxREFycmF5PHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHNo
b3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGludD47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxREFycmF5PGludDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURB
cnJheTxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aW50ND47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMURBcnJheTxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGhhbGYz
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aGFsZjQ+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFy
cmF5PGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGZsb2F0Mz47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMkQ8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Ym9vbDI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxib29s
ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEPHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWNoYXIzPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUyRDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVz
aG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkQ8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dXNob3J0ND47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkQ8dWludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVpbnQzPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUyRDx1aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Y2hhcj47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxjaGFyND47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkQ8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHNob3J0Mj47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUy
RDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGludD47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkQ8aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aW50Mz47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aGFs
Zj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEPGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxoYWxmND47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMkQ8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGZsb2F0
Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyRDxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9vbD47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUyRDxib29sMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
RDxib29sMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxib29sND47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUyRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1Y2hh
cjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTJEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1c2hvcnQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUyRDx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHVzaG9ydDQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWludD47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyRDx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1aW50Mz47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
RDxjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGNoYXIyPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGNoYXI0
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTJEPHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxzaG9ydDM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTJEPGludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxpbnQyPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPGludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8aW50
ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTJEPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGhhbGYzPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGZsb2F0Mj47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8
ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2w+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEQXJyYXk8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJy
YXk8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Ym9vbDQ+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVjaGFyMz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEQXJyYXk8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVzaG9y
dDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dXNob3J0Mz47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMkRBcnJheTx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFy
cmF5PHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWludDI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hhcj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkRBcnJheTxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxjaGFyND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMkRBcnJheTxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8c2hvcnQz
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHNob3J0ND47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkRBcnJheTxpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aW50
Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxpbnQzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUyREFycmF5PGludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aGFs
Zj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxoYWxmMj47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkRBcnJheTxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxo
YWxmND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdD47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJy
YXk8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGZsb2F0ND47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkRBcnJheTxib29sMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGJvb2wz
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8Ym9vbDQ+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFy
cmF5PHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVjaGFyMz47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUyREFycmF5PHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5
PHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1c2hvcnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUyREFycmF5PHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1
aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVpbnQzPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MkRBcnJheTxjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8Y2hhcjI+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUyREFycmF5PGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8
c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxzaG9ydDI+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkRBcnJheTxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxpbnQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxpbnQyPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTJEQXJyYXk8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5
PGludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxoYWxmPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MkRBcnJheTxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGhhbGY0PjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkRBcnJheTxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJh
eTxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxmbG9hdDQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGJvb2w+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGJv
b2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxib29sMz47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlM0Q8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVjaGFyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUzRDx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVj
aGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUzRDx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVzaG9ydDI+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTNEPHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVpbnQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTNEPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1aW50Mz47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTNEPGNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGNoYXIyPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8Y2hhcjQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUz
RDxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHNob3J0Mz47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlM0Q8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxpbnQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNE
PGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGludDQ+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTNEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGhhbGYyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUzRDxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8aGFs
ZjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUzRDxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGZsb2F0Mz47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlM0Q8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNE
PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Ym9vbDI+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlM0Q8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Ym9vbDQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlM0Q8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVjaGFyMz47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlM0Q8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVzaG9ydDI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUzRDx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlM0Q8dWludDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8
dWludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWludDQ+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlM0Q8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxjaGFyMj47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUzRDxjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9ydD47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
M0Q8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHNob3J0ND47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUzRDxpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aW50
Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTNEPGludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFsZj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUzRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUz
RDxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxoYWxmND47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUzRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxmbG9h
dDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTNEPGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxib29sPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmVDdWJlPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGJvb2w0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJl
PHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1Y2hhcjM+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZUN1YmU8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVz
aG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1c2hvcnQyPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmVDdWJlPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dXNo
b3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1aW50PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmVDdWJlPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVpbnQzPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmVDdWJlPGNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Y2hhcjI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZUN1YmU8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8
Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8c2hvcnQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZUN1YmU8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHNob3J0
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZUN1YmU8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGludDI+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3Vi
ZTxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGhhbGY+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZUN1YmU8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aGFsZjM+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZUN1YmU8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8ZmxvYXQyPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
Q3ViZTxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoMkQ8ZmxvYXQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoMkQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmVEZXB0aDJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZURlcHRoMkQ8aGFsZj47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlRGVwdGgyREFycmF5PGZsb2F0PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmVEZXB0aDJEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmVE
ZXB0aDJEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVwdGgyREFycmF5
PGhhbGY+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoQ3ViZTxmbG9hdD47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlRGVwdGhDdWJlPGhhbGY+OworCituYXRpdmUgb3BlcmF0b3IgdWNoYXIo
dXNob3J0KTsKIG5hdGl2ZSBvcGVyYXRvciB1Y2hhcih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1
Y2hhcihjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciB1Y2hhcihzaG9ydCk7CituYXRpdmUgb3BlcmF0
b3IgdWNoYXIoaW50KTsKK25hdGl2ZSBvcGVyYXRvciB1Y2hhcihoYWxmKTsKIG5hdGl2ZSBvcGVy
YXRvciB1Y2hhcihmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KTsKLW5hdGl2ZSBv
cGVyYXRvciBmbG9hdCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQodWNoYXIpOworbmF0
aXZlIG9wZXJhdG9yIHVzaG9ydCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQoY2hhcik7
CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQo
aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQoaGFsZik7CituYXRpdmUgb3BlcmF0b3IgdXNo
b3J0KGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRv
ciB1aW50KHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdWludChjaGFyKTsKK25hdGl2ZSBvcGVy
YXRvciB1aW50KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGludCk7CituYXRpdmUgb3Bl
cmF0b3IgdWludChoYWxmKTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGZsb2F0KTsKK25hdGl2ZSBv
cGVyYXRvciBjaGFyKHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKHVzaG9ydCk7CituYXRp
dmUgb3BlcmF0b3IgY2hhcih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKHNob3J0KTsKK25h
dGl2ZSBvcGVyYXRvciBjaGFyKGludCk7CituYXRpdmUgb3BlcmF0b3IgY2hhcihoYWxmKTsKK25h
dGl2ZSBvcGVyYXRvciBjaGFyKGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydCh1Y2hhcik7
CituYXRpdmUgb3BlcmF0b3Igc2hvcnQodXNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydCh1
aW50KTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydChjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBzaG9y
dChpbnQpOworbmF0aXZlIG9wZXJhdG9yIHNob3J0KGhhbGYpOworbmF0aXZlIG9wZXJhdG9yIHNo
b3J0KGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodWNoYXIpOworbmF0aXZlIG9wZXJhdG9y
IGludCh1c2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGludCh1aW50KTsKK25hdGl2ZSBvcGVyYXRv
ciBpbnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgaW50KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRv
ciBpbnQoaGFsZik7CituYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRv
ciBoYWxmKHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKHVzaG9ydCk7CituYXRpdmUgb3Bl
cmF0b3IgaGFsZih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKGNoYXIpOworbmF0aXZlIG9w
ZXJhdG9yIGhhbGYoc2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGhhbGYoaW50KTsKK25hdGl2ZSBv
cGVyYXRvciBoYWxmKGZsb2F0KTsKIG5hdGl2ZSBvcGVyYXRvciBmbG9hdCh1Y2hhcik7CituYXRp
dmUgb3BlcmF0b3IgZmxvYXQodXNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBmbG9hdCh1aW50KTsK
K25hdGl2ZSBvcGVyYXRvciBmbG9hdChjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBmbG9hdChzaG9y
dCk7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KTsKK25hdGl2ZSBvcGVyYXRvciBmbG9hdCho
YWxmKTsKKworb3BlcmF0b3IgYm9vbCh1Y2hhciB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30K
K29wZXJhdG9yIGJvb2wodXNob3J0IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0
b3IgYm9vbCh1aW50IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChj
aGFyIHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChzaG9ydCB4KSB7
CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woaW50IHgpIHsKKyAgICByZXR1
cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChoYWxmIHgpIHsKKyAgICByZXR1cm4geCAhPSAw
OworfQorb3BlcmF0b3IgYm9vbChmbG9hdCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KKwor
bmF0aXZlIG9wZXJhdG9yIGludChhdG9taWNfaW50KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGF0
b21pY191aW50KTsKKworCisKKworCisKKworCisKIAorCisKKworCisKKworCisKKworCisKK25h
dGl2ZSBib29sIG9wZXJhdG9yPT0oYm9vbCwgYm9vbCk7Citib29sIG9wZXJhdG9yJihib29sIGEs
IGJvb2wgYikgeworICAgIHJldHVybiBhICYmIGI7Cit9Citib29sIG9wZXJhdG9yfChib29sIGEs
IGJvb2wgYikgeworICAgIHJldHVybiBhIHx8IGI7Cit9Citib29sIG9wZXJhdG9yXihib29sIGEs
IGJvb2wgYikgeworICAgIGlmIChhKQorICAgICAgICByZXR1cm4gIWI7CisgICAgcmV0dXJuIGI7
Cit9Citib29sIG9wZXJhdG9yfihib29sIHZhbHVlKSB7CisgICAgcmV0dXJuICF2YWx1ZTsKK30K
IG5hdGl2ZSBpbnQgb3BlcmF0b3IrKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yKyh1
aW50LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yKyh1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1
Y2hhcih1aW50KGEpICsgdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvcisoZmxvYXQs
IGZsb2F0KTsKLWludCBvcGVyYXRvcisrKGludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgKyAxOyB9
Ci11aW50IG9wZXJhdG9yKysodWludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgKyAxOyB9Ci11Y2hh
ciBvcGVyYXRvcisrKHVjaGFyIHZhbHVlKSB7IHJldHVybiB2YWx1ZSArIDE7IH0KIG5hdGl2ZSBp
bnQgb3BlcmF0b3ItKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yLSh1aW50LCB1aW50
KTsKLXVjaGFyIG9wZXJhdG9yLSh1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50
KGEpIC0gdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsIGZsb2F0KTsK
LWludCBvcGVyYXRvci0tKGludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgLSAxOyB9Ci11aW50IG9w
ZXJhdG9yLS0odWludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgLSAxOyB9Ci11Y2hhciBvcGVyYXRv
ci0tKHVjaGFyIHZhbHVlKSB7IHJldHVybiB2YWx1ZSAtIDE7IH0KIG5hdGl2ZSBpbnQgb3BlcmF0
b3IqKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LCB1aW50KTsKLXVjaGFy
IG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpICogdWlu
dChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvciooZmxvYXQsIGZsb2F0KTsKIG5hdGl2ZSBp
bnQgb3BlcmF0b3IvKGludCwgaW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0oaW50LCBpbnQp
OworbmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCwgaW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9y
PD0oaW50LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+KGludCwgaW50KTsKK25hdGl2ZSBi
b29sIG9wZXJhdG9yPj0oaW50LCBpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IrKHVpbnQsIHVp
bnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3ItKHVpbnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3Bl
cmF0b3IqKHVpbnQsIHVpbnQpOwogbmF0aXZlIHVpbnQgb3BlcmF0b3IvKHVpbnQsIHVpbnQpOwot
dWNoYXIgb3BlcmF0b3IvKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkg
LyB1aW50KGIpKTsgfQorbmF0aXZlIGJvb2wgb3BlcmF0b3I9PSh1aW50LCB1aW50KTsKK25hdGl2
ZSBib29sIG9wZXJhdG9yPCh1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPD0odWlu
dCwgdWludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4odWludCwgdWludCk7CituYXRpdmUgYm9v
bCBvcGVyYXRvcj49KHVpbnQsIHVpbnQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yKyhmbG9hdCwg
ZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCwgZmxvYXQpOworbmF0aXZlIGZs
b2F0IG9wZXJhdG9yKihmbG9hdCwgZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLyhmbG9h
dCwgZmxvYXQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShmbG9hdCwgZmxvYXQpOworbmF0aXZl
IGJvb2wgb3BlcmF0b3I8KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjw9KGZs
b2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4oZmxvYXQsIGZsb2F0KTsKK25hdGl2
ZSBib29sIG9wZXJhdG9yPj0oZmxvYXQsIGZsb2F0KTsKIG5hdGl2ZSBpbnQgb3BlcmF0b3ImKGlu
dCwgaW50KTsKIG5hdGl2ZSBpbnQgb3BlcmF0b3J8KGludCwgaW50KTsKIG5hdGl2ZSBpbnQgb3Bl
cmF0b3JeKGludCwgaW50KTsKQEAgLTkxLDg0ICs3MDIsMTczNyBAQCBuYXRpdmUgdWludCBvcGVy
YXRvcl4odWludCwgdWludCk7CiBuYXRpdmUgdWludCBvcGVyYXRvcn4odWludCk7CiBuYXRpdmUg
dWludCBvcGVyYXRvcjw8KHVpbnQsIHVpbnQpOwogbmF0aXZlIHVpbnQgb3BlcmF0b3I+Pih1aW50
LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yJih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hh
cih1aW50KGEpICYgdWludChiKSk7IH0KLXVjaGFyIG9wZXJhdG9yfCh1Y2hhciBhLCB1Y2hhciBi
KSB7IHJldHVybiB1Y2hhcih1aW50KGEpIHwgdWludChiKSk7IH0KLXVjaGFyIG9wZXJhdG9yXih1
Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpIF4gdWludChiKSk7IH0KLXVj
aGFyIG9wZXJhdG9yfih1Y2hhciB2YWx1ZSkgeyByZXR1cm4gdWNoYXIofnVpbnQodmFsdWUpKTsg
fQotdWNoYXIgb3BlcmF0b3I8PCh1Y2hhciBhLCB1aW50IGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQo
YSkgPDwgKGIgJiA3KSk7IH0KLXVjaGFyIG9wZXJhdG9yPj4odWNoYXIgYSwgdWludCBiKSB7IHJl
dHVybiB1Y2hhcih1aW50KGEpID4+IChiICYgNykpOyB9Ci1uYXRpdmUgZmxvYXQgb3BlcmF0b3Iv
KGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGludCwgaW50KTsKLW5hdGl2
ZSBib29sIG9wZXJhdG9yPT0odWludCwgdWludCk7Ci1ib29sIG9wZXJhdG9yPT0odWNoYXIgYSwg
dWNoYXIgYikgeyByZXR1cm4gdWludChhKSA9PSB1aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVy
YXRvcj09KGJvb2wsIGJvb2wpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShmbG9hdCwgZmxvYXQp
OwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCwgaW50KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9y
PCh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I8KHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJu
IHVpbnQoYSkgPCB1aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcjwoZmxvYXQsIGZsb2F0
KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPD0oaW50LCBpbnQpOwotbmF0aXZlIGJvb2wgb3BlcmF0
b3I8PSh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I8PSh1Y2hhciBhLCB1Y2hhciBiKSB7IHJl
dHVybiB1aW50KGEpIDw9IHVpbnQoYik7IH0KLW5hdGl2ZSBib29sIG9wZXJhdG9yPD0oZmxvYXQs
IGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPihpbnQsIGludCk7Ci1uYXRpdmUgYm9vbCBv
cGVyYXRvcj4odWludCwgdWludCk7Ci1ib29sIG9wZXJhdG9yPih1Y2hhciBhLCB1Y2hhciBiKSB7
IHJldHVybiB1aW50KGEpID4gdWludChiKTsgfQotbmF0aXZlIGJvb2wgb3BlcmF0b3I+KGZsb2F0
LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj49KGludCwgaW50KTsKLW5hdGl2ZSBib29s
IG9wZXJhdG9yPj0odWludCwgdWludCk7Ci1ib29sIG9wZXJhdG9yPj0odWNoYXIgYSwgdWNoYXIg
YikgeyByZXR1cm4gdWludChhKSA+PSB1aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj49
KGZsb2F0LCBmbG9hdCk7Ci0KLWJvb2wgb3BlcmF0b3ImKGJvb2wgYSwgYm9vbCBiKQotewotICAg
IGlmIChhKQotICAgICAgICByZXR1cm4gYjsKLSAgICByZXR1cm4gZmFsc2U7Cit1Y2hhciBvcGVy
YXRvcisodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpICsgdWlu
dChiKSk7CiB9Ci0KLWJvb2wgb3BlcmF0b3J8KGJvb2wgYSwgYm9vbCBiKQotewotICAgIGlmIChh
KQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBpZiAoYikKLSAgICAgICAgcmV0dXJuIHRydWU7
Ci0gICAgcmV0dXJuIGZhbHNlOwordWNoYXIgb3BlcmF0b3ItKHVjaGFyIGEsIHVjaGFyIGIpIHsK
KyAgICByZXR1cm4gdWNoYXIodWludChhKSAtIHVpbnQoYikpOwogfQotCi1ib29sIG9wZXJhdG9y
Xihib29sIGEsIGJvb2wgYikKLXsKLSAgICBpZiAoYSkKLSAgICAgICAgcmV0dXJuICFiOwotICAg
IHJldHVybiBiOwordWNoYXIgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1
cm4gdWNoYXIodWludChhKSAqIHVpbnQoYikpOwogfQotCi1ib29sIG9wZXJhdG9yfihib29sIHZh
bHVlKQotewotICAgIHJldHVybiAhdmFsdWU7Cit1Y2hhciBvcGVyYXRvci8odWNoYXIgYSwgdWNo
YXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIC8gdWludChiKSk7CiB9Cit1Y2hhciBv
cGVyYXRvciYodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpICYg
dWludChiKSk7Cit9Cit1Y2hhciBvcGVyYXRvcnwodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJl
dHVybiB1Y2hhcih1aW50KGEpIHwgdWludChiKSk7Cit9Cit1Y2hhciBvcGVyYXRvcl4odWNoYXIg
YSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIF4gdWludChiKSk7Cit9Cit1
Y2hhciBvcGVyYXRvcn4odWNoYXIgYSkgeworICAgIHJldHVybiB1Y2hhcih+dWludChhKSk7Cit9
Citib29sIG9wZXJhdG9yPT0odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEp
ID09IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPCh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAg
cmV0dXJuIHVpbnQoYSkgPCB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KHVjaGFyIGEsIHVj
aGFyIGIpIHsKKyAgICByZXR1cm4gdWludChhKSA8PSB1aW50KGIpOworfQorYm9vbCBvcGVyYXRv
cj4odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEpID4gdWludChiKTsKK30K
K2Jvb2wgb3BlcmF0b3I+PSh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJuIHVpbnQoYSkg
Pj0gdWludChiKTsKK30KK3VzaG9ydCBvcGVyYXRvcisodXNob3J0IGEsIHVzaG9ydCBiKSB7Cisg
ICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpICsgdWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3It
KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWludChhKSAtIHVpbnQo
YikpOworfQordXNob3J0IG9wZXJhdG9yKih1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1
cm4gdXNob3J0KHVpbnQoYSkgKiB1aW50KGIpKTsKK30KK3VzaG9ydCBvcGVyYXRvci8odXNob3J0
IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpIC8gdWludChiKSk7Cit9
Cit1c2hvcnQgb3BlcmF0b3ImKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hv
cnQodWludChhKSAmIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yfCh1c2hvcnQgYSwgdXNo
b3J0IGIpIHsKKyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgfCB1aW50KGIpKTsKK30KK3VzaG9y
dCBvcGVyYXRvcl4odXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50
KGEpIF4gdWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3J+KHVzaG9ydCBhKSB7CisgICAgcmV0
dXJuIHVzaG9ydCh+dWludChhKSk7Cit9Citib29sIG9wZXJhdG9yPT0odXNob3J0IGEsIHVzaG9y
dCBiKSB7CisgICAgcmV0dXJuIHVpbnQoYSkgPT0gdWludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I8
KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpIDwgdWludChiKTsKK30K
K2Jvb2wgb3BlcmF0b3I8PSh1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4gdWludChh
KSA8PSB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcj4odXNob3J0IGEsIHVzaG9ydCBiKSB7Cisg
ICAgcmV0dXJuIHVpbnQoYSkgPiB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcj49KHVzaG9ydCBh
LCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpID49IHVpbnQoYik7Cit9Cit1Y2hhciBv
cGVyYXRvcjw8KHVjaGFyIGEsIHVpbnQgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIDw8
IChiICYgMjU1KSk7Cit9Cit1c2hvcnQgb3BlcmF0b3I8PCh1c2hvcnQgYSwgdWludCBiKSB7Cisg
ICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpIDw8IChiICYgNjU1MzUpKTsKK30KK3VjaGFyIG9wZXJh
dG9yPj4odWNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIHVjaGFyKHVpbnQoYSkgPj4gKGIg
JiAyNTUpKTsKK30KK3VzaG9ydCBvcGVyYXRvcj4+KHVzaG9ydCBhLCB1aW50IGIpIHsKKyAgICBy
ZXR1cm4gdXNob3J0KHVpbnQoYSkgPj4gKGIgJiA2NTUzNSkpOworfQorY2hhciBvcGVyYXRvciso
Y2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgKyBpbnQoYikpOworfQor
Y2hhciBvcGVyYXRvci0oY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkg
LSBpbnQoYikpOworfQorY2hhciBvcGVyYXRvciooY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1
cm4gY2hhcihpbnQoYSkgKiBpbnQoYikpOworfQorY2hhciBvcGVyYXRvci8oY2hhciBhLCBjaGFy
IGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgLyBpbnQoYikpOworfQorY2hhciBvcGVyYXRv
ciYoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgJiBpbnQoYikpOwor
fQorY2hhciBvcGVyYXRvcnwoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQo
YSkgfCBpbnQoYikpOworfQorY2hhciBvcGVyYXRvcl4oY2hhciBhLCBjaGFyIGIpIHsKKyAgICBy
ZXR1cm4gY2hhcihpbnQoYSkgXiBpbnQoYikpOworfQorY2hhciBvcGVyYXRvcn4oY2hhciBhKSB7
CisgICAgcmV0dXJuIGNoYXIofmludChhKSk7Cit9Citib29sIG9wZXJhdG9yPT0oY2hhciBhLCBj
aGFyIGIpIHsKKyAgICByZXR1cm4gaW50KGEpID09IGludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+
KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGludChhKSA+IGludChiKTsKK30KK2Jvb2wg
b3BlcmF0b3I+PShjaGFyIGEsIGNoYXIgYikgeworICAgIHJldHVybiBpbnQoYSkgPj0gaW50KGIp
OworfQorYm9vbCBvcGVyYXRvcjwoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gaW50KGEp
IDwgaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0
dXJuIGludChhKSA8PSBpbnQoYik7Cit9CitzaG9ydCBvcGVyYXRvcisoc2hvcnQgYSwgc2hvcnQg
YikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgKyBpbnQoYikpOworfQorc2hvcnQgb3BlcmF0
b3ItKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpIC0gaW50KGIp
KTsKK30KK3Nob3J0IG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0dXJuIHNo
b3J0KGludChhKSAqIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvci8oc2hvcnQgYSwgc2hvcnQg
YikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgLyBpbnQoYikpOworfQorc2hvcnQgb3BlcmF0
b3ImKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpICYgaW50KGIp
KTsKK30KK3Nob3J0IG9wZXJhdG9yfChzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0dXJuIHNo
b3J0KGludChhKSB8IGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvcl4oc2hvcnQgYSwgc2hvcnQg
YikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgXiBpbnQoYikpOworfQorc2hvcnQgb3BlcmF0
b3J+KHNob3J0IGEpIHsKKyAgICByZXR1cm4gc2hvcnQofmludChhKSk7Cit9Citib29sIG9wZXJh
dG9yPT0oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPT0gaW50KGIpOwor
fQorYm9vbCBvcGVyYXRvcj4oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkg
PiBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJl
dHVybiBpbnQoYSkgPj0gaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjwoc2hvcnQgYSwgc2hvcnQg
YikgeworICAgIHJldHVybiBpbnQoYSkgPCBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPD0oc2hv
cnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPD0gaW50KGIpOworfQorY2hhciBv
cGVyYXRvcjw8KGNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIDw8IChi
ICYgMjU1KSk7Cit9CitzaG9ydCBvcGVyYXRvcjw8KHNob3J0IGEsIHVpbnQgYikgeworICAgIHJl
dHVybiBzaG9ydChpbnQoYSkgPDwgKGIgJiA2NTUzNSkpOworfQorY2hhciBvcGVyYXRvcj4+KGNo
YXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpID4+IChiICYgMjU1KSk7Cit9
CitzaG9ydCBvcGVyYXRvcj4+KHNob3J0IGEsIHVpbnQgYikgeworICAgIHJldHVybiBzaG9ydChp
bnQoYSkgPj4gKGIgJiA2NTUzNSkpOworfQordWNoYXIgb3BlcmF0b3IrKyh1Y2hhciB2YWx1ZSkg
eworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9Cit1Y2hhciBvcGVyYXRvci0tKHVjaGFyIHZhbHVl
KSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK3VzaG9ydCBvcGVyYXRvcisrKHVzaG9ydCB2
YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9Cit1c2hvcnQgb3BlcmF0b3ItLSh1c2hv
cnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQordWludCBvcGVyYXRvcisrKHVp
bnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQordWludCBvcGVyYXRvci0tKHVp
bnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorY2hhciBvcGVyYXRvcisrKGNo
YXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQorY2hhciBvcGVyYXRvci0tKGNo
YXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorc2hvcnQgb3BlcmF0b3IrKyhz
aG9ydCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitzaG9ydCBvcGVyYXRvci0t
KHNob3J0IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK2ludCBvcGVyYXRvcisr
KGludCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitpbnQgb3BlcmF0b3ItLShp
bnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQoraGFsZiBvcGVyYXRvcisrKGhh
bGYgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQoraGFsZiBvcGVyYXRvci0tKGhh
bGYgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorZmxvYXQgb3BlcmF0b3IrKyhm
bG9hdCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitmbG9hdCBvcGVyYXRvci0t
KGZsb2F0IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK2hhbGYgb3BlcmF0b3Ir
KGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxvYXQoYSkgKyBmbG9hdChiKSk7
Cit9CitoYWxmIG9wZXJhdG9yLShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBoYWxmKGZs
b2F0KGEpIC0gZmxvYXQoYikpOworfQoraGFsZiBvcGVyYXRvciooaGFsZiBhLCBoYWxmIGIpIHsK
KyAgICByZXR1cm4gaGFsZihmbG9hdChhKSAqIGZsb2F0KGIpKTsKK30KK2hhbGYgb3BlcmF0b3Iv
KGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxvYXQoYSkgLyBmbG9hdChiKSk7
Cit9Citib29sIG9wZXJhdG9yPT0oaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQo
YSkgPT0gZmxvYXQoYik7Cit9Citib29sIG9wZXJhdG9yPChoYWxmIGEsIGhhbGYgYikgeworICAg
IHJldHVybiBmbG9hdChhKSA8IGZsb2F0KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KGhhbGYgYSwg
aGFsZiBiKSB7CisgICAgcmV0dXJuIGZsb2F0KGEpIDw9IGZsb2F0KGIpOworfQorYm9vbCBvcGVy
YXRvcj4oaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQoYSkgPCBmbG9hdChiKTsK
K30KK2Jvb2wgb3BlcmF0b3I+PShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBmbG9hdChh
KSA8PSBmbG9hdChiKTsKK30KK2NoYXIgb3BlcmF0b3ItKGNoYXIgeCkgeworICAgIHJldHVybiBj
aGFyKC1pbnQoeCkpOworfQorc2hvcnQgb3BlcmF0b3ItKHNob3J0IHgpIHsKKyAgICByZXR1cm4g
c2hvcnQoLWludCh4KSk7Cit9CitoYWxmIG9wZXJhdG9yLShoYWxmIHgpIHsKKyAgICByZXR1cm4g
aGFsZigtZmxvYXQoeCkpOworfQorbmF0aXZlIGludCBvcGVyYXRvci0oaW50KTsKK25hdGl2ZSBm
bG9hdCBvcGVyYXRvci0oZmxvYXQpOwogCi1uYXRpdmUgdHlwZWRlZiB1Y2hhcjI7Ci1uYXRpdmUg
dHlwZWRlZiB1Y2hhcjM7Ci1uYXRpdmUgdHlwZWRlZiB1Y2hhcjQ7Ci0KLW5hdGl2ZSB0eXBlZGVm
IHVpbnQyOwotbmF0aXZlIHR5cGVkZWYgdWludDM7Ci1uYXRpdmUgdHlwZWRlZiB1aW50NDsKLQot
bmF0aXZlIHR5cGVkZWYgaW50MjsKLW5hdGl2ZSB0eXBlZGVmIGludDM7Ci1uYXRpdmUgdHlwZWRl
ZiBpbnQ0OwordWNoYXIyIG9wZXJhdG9yKyh1Y2hhcjIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hh
cjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3ItKHVj
aGFyMiBhLCB1Y2hhcjIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyMiBvcGVyYXRvcioodWNoYXIyIGEsIHVjaGFyMiBiKSB7CisgICAgdWNo
YXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yKih1
Y2hhcjIgYSwgdWNoYXIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyMiBvcGVyYXRvcioodWNoYXIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hhcjIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IvKHVjaGFyMiBhLCB1Y2hh
cjIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyMiBvcGVyYXRvci8odWNoYXIyIGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IvKHVjaGFyIGEsIHVjaGFyMiBiKSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9y
Kyh1Y2hhcjMgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0
b3ItKHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVy
YXRvcioodWNoYXIzIGEsIHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9w
ZXJhdG9yKih1Y2hhcjMgYSwgdWNoYXIgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0
WzJdID0gYVsyXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvcioo
dWNoYXIgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEg
KiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IvKHVjaGFyMyBh
LCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAv
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsy
XSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci8odWNoYXIz
IGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
LyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBi
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IvKHVjaGFyIGEsIHVjaGFy
MyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yKyh1Y2hhcjQgYSwgdWNoYXI0IGIpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAg
IHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3ItKHVjaGFyNCBhLCB1Y2hhcjQgYikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAtIGJbM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvcioodWNoYXI0IGEsIHVjaGFy
NCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsy
XTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yKih1Y2hhcjQgYSwgdWNoYXIgYikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvcioodWNoYXIgYSwgdWNoYXI0IGIpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJlc3VsdFsz
XSA9IGEgKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IvKHVj
aGFyNCBhLCB1Y2hhcjQgYikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJd
ID0gYVsyXSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci8odWNoYXI0IGEsIHVjaGFyIGIpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFb
M10gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IvKHVjaGFyIGEs
IHVjaGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsK
KyAgICByZXN1bHRbM10gPSBhIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MiBvcGVyYXRvcisodXNob3J0MiBhLCB1c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsx
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci0odXNob3J0MiBhLCB1
c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0MiBvcGVyYXRvcioodXNob3J0MiBhLCB1c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvcioodXNo
b3J0MiBhLCB1c2hvcnQgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQyIG9wZXJhdG9yKih1c2hvcnQgYSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAq
IGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IvKHVzaG9ydDIg
YSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDIgb3BlcmF0b3IvKHVzaG9ydDIgYSwgdXNob3J0IGIpIHsKKyAgICB1c2hv
cnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci8odXNob3J0
IGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEg
LyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQzIG9wZXJhdG9yKyh1c2hvcnQzIGEsIHVzaG9ydDMgYikgeworICAgIHVzaG9ydDMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLSh1c2hvcnQzIGEsIHVzaG9ydDMgYikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yKih1c2hvcnQzIGEsIHVzaG9ydDMgYikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yKih1c2hvcnQzIGEsIHVzaG9ydCBi
KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAg
cmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IqKHVzaG9ydCBhLCB1c2hvcnQzIGIpIHsK
KyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci8odXNob3J0MyBhLCB1c2hvcnQzIGIpIHsKKyAg
ICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci8odXNob3J0MyBhLCB1c2hvcnQgYikg
eworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLyh1c2hvcnQgYSwgdXNob3J0MyBiKSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IrKHVzaG9ydDQgYSwgdXNob3J0NCBiKSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3ItKHVzaG9ydDQgYSwgdXNob3J0NCBiKSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAtIGJbM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IqKHVzaG9ydDQgYSwgdXNo
b3J0NCBiKSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAq
IGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3IqKHVzaG9ydDQgYSwgdXNob3J0IGIpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICog
YjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvcioodXNob3J0IGEsIHVz
aG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOwor
ICAgIHJlc3VsdFszXSA9IGEgKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLyh1c2hvcnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLyh1c2hvcnQ0IGEs
IHVzaG9ydCBiKSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAv
IGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7
CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IvKHVzaG9ydCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhIC8gYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IrKHVpbnQyIGEsIHVpbnQyIGIpIHsKKyAg
ICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9y
LSh1aW50MiBhLCB1aW50MiBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvcioodWludDIgYSwgdWludDIgYikgeworICAgIHVpbnQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IqKHVpbnQy
IGEsIHVpbnQgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICog
YjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDIgb3BlcmF0b3IqKHVpbnQgYSwgdWludDIgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IvKHVpbnQyIGEsIHVpbnQyIGIpIHsKKyAgICB1
aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLyh1
aW50MiBhLCB1aW50IGIpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQyIG9wZXJhdG9yLyh1aW50IGEsIHVpbnQyIGIpIHsKKyAgICB1aW50MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yKyh1aW50MyBhLCB1aW50MyBiKSB7Cisg
ICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci0odWludDMgYSwgdWludDMgYikgeworICAg
IHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IqKHVpbnQzIGEsIHVpbnQzIGIpIHsKKyAgICB1
aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yKih1aW50MyBhLCB1aW50IGIpIHsKKyAgICB1aW50
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsx
XSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQzIG9wZXJhdG9yKih1aW50IGEsIHVpbnQzIGIpIHsKKyAgICB1aW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAg
cmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJh
dG9yLyh1aW50MyBhLCB1aW50MyBiKSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRv
ci8odWludDMgYSwgdWludCBiKSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFb
Ml0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci8odWludCBhLCB1
aW50MyBiKSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvcisodWludDQgYSwgdWludDQgYikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICBy
ZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3ItKHVpbnQ0IGEsIHVpbnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAtIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yKih1aW50NCBhLCB1aW50NCBiKSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJl
c3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvcioodWludDQgYSwgdWludCBiKSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9
IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvcioodWludCBhLCB1aW50NCBiKSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOwor
ICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgKiBiWzNdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci8odWludDQgYSwgdWludDQgYikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICBy
ZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3IvKHVpbnQ0IGEsIHVpbnQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0g
PSBhWzJdIC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3IvKHVpbnQgYSwgdWludDQgYikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhIC8gYlszXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IrKGNoYXIyIGEsIGNoYXIyIGIpIHsK
KyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJh
dG9yLShjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvciooY2hhcjIgYSwgY2hhcjIgYikgeworICAgIGNo
YXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IqKGNo
YXIyIGEsIGNoYXIgYikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
ICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjIgb3BlcmF0b3IqKGNoYXIgYSwgY2hhcjIgYikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IvKGNoYXIyIGEsIGNoYXIyIGIpIHsKKyAg
ICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9y
LyhjaGFyMiBhLCBjaGFyIGIpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXIyIG9wZXJhdG9yLyhjaGFyIGEsIGNoYXIyIGIpIHsKKyAgICBjaGFyMiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yKyhjaGFyMyBhLCBjaGFyMyBiKSB7
CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci0oY2hhcjMgYSwgY2hhcjMgYikgewor
ICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IqKGNoYXIzIGEsIGNoYXIzIGIpIHsKKyAg
ICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yKihjaGFyMyBhLCBjaGFyIGIpIHsKKyAgICBj
aGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0g
YVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXIzIG9wZXJhdG9yKihjaGFyIGEsIGNoYXIzIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9w
ZXJhdG9yLyhjaGFyMyBhLCBjaGFyMyBiKSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJl
c3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVy
YXRvci8oY2hhcjMgYSwgY2hhciBiKSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9
IGFbMl0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci8oY2hhciBh
LCBjaGFyMyBiKSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvcisoY2hhcjQgYSwgY2hhcjQgYikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAg
ICByZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3ItKGNoYXI0IGEsIGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAg
cmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAtIGJbM107Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yKihjaGFyNCBhLCBjaGFyNCBiKSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAg
IHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvciooY2hhcjQgYSwgY2hhciBiKSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvciooY2hhciBhLCBjaGFyNCBiKSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgKiBiWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci8oY2hhcjQgYSwgY2hhcjQgYikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAg
ICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3IvKGNoYXI0IGEsIGNoYXIgYikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdIC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3IvKGNoYXIgYSwgY2hhcjQgYikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsx
XTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhIC8gYlszXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJhdG9yKyhzaG9ydDIgYSwgc2hvcnQy
IGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDIgb3BlcmF0b3ItKHNob3J0MiBhLCBzaG9ydDIgYikgeworICAgIHNob3J0MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvciooc2hvcnQyIGEsIHNob3J0
MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQyIG9wZXJhdG9yKihzaG9ydDIgYSwgc2hvcnQgYikgeworICAgIHNob3J0MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvciooc2hvcnQgYSwgc2hvcnQyIGIpIHsK
KyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iv
KHNob3J0MiBhLCBzaG9ydDIgYikgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvci8oc2hvcnQyIGEsIHNob3J0IGIpIHsKKyAgICBz
aG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IvKHNob3J0
IGEsIHNob3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQzIG9wZXJhdG9yKyhzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDMgb3BlcmF0b3ItKHNob3J0MyBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAt
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0MyBvcGVyYXRvciooc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQzIG9wZXJhdG9yKihzaG9ydDMgYSwgc2hvcnQgYikgeworICAgIHNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAq
IGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0MyBvcGVyYXRvciooc2hvcnQgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3Bl
cmF0b3IvKHNob3J0MyBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAg
cmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBv
cGVyYXRvci8oc2hvcnQzIGEsIHNob3J0IGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iv
KHNob3J0IGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBh
IC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yKyhzaG9ydDQg
YSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFb
Ml0gKyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3ItKHNob3J0NCBhLCBzaG9ydDQgYikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmVzdWx0WzNd
ID0gYVszXSAtIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvcioo
c2hvcnQ0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yKihzaG9ydDQgYSwgc2hvcnQgYikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0g
YVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvciooc2hvcnQg
YSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJd
OworICAgIHJlc3VsdFszXSA9IGEgKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3IvKHNob3J0NCBhLCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci8oc2hvcnQ0IGEsIHNo
b3J0IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAg
IHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3IvKHNob3J0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRb
Ml0gPSBhIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhIC8gYlszXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50MiBvcGVyYXRvcisoaW50MiBhLCBpbnQyIGIpIHsKKyAgICBpbnQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsg
YlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci0oaW50MiBhLCBpbnQy
IGIpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBv
cGVyYXRvciooaW50MiBhLCBpbnQyIGIpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvciooaW50MiBhLCBpbnQgYikgeworICAgIGludDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
KiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yKihpbnQgYSwgaW50MiBi
KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3Iv
KGludDIgYSwgaW50MiBiKSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDIgb3BlcmF0b3IvKGludDIgYSwgaW50IGIpIHsKKyAgICBpbnQyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci8oaW50IGEsIGludDIgYikgeworICAg
IGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yKyhpbnQzIGEs
IGludDMgYikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBi
WzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLShpbnQzIGEsIGludDMg
YikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yKihpbnQzIGEsIGludDMgYikgewor
ICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yKihpbnQzIGEsIGludCBiKSB7CisgICAgaW50
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsx
XSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDMgb3BlcmF0b3IqKGludCBhLCBpbnQzIGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci8o
aW50MyBhLCBpbnQzIGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBh
WzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci8oaW50MyBh
LCBpbnQgYikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLyhpbnQgYSwgaW50MyBiKSB7CisgICAg
aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IrKGludDQgYSwgaW50NCBiKSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3ItKGludDQgYSwgaW50NCBi
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07Cisg
ICAgcmVzdWx0WzNdID0gYVszXSAtIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3IqKGludDQgYSwgaW50NCBiKSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IqKGludDQgYSwgaW50IGIpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBh
WzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNd
ICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvciooaW50IGEsIGludDQg
YikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJlc3Vs
dFszXSA9IGEgKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLyhp
bnQ0IGEsIGludDQgYikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
LyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFb
Ml0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLyhpbnQ0IGEsIGludCBiKSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IvKGludCBhLCBpbnQ0IGIpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
IC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhIC8g
YlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IrKGhhbGYyIGEsIGhh
bGYyIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYyIG9wZXJhdG9yLShoYWxmMiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvciooaGFsZjIgYSwgaGFsZjIgYikg
eworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3Bl
cmF0b3IqKGhhbGYyIGEsIGhhbGYgYikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjIgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjIgYikgeworICAgIGhhbGYyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsx
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IvKGhhbGYyIGEsIGhhbGYy
IGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYy
IG9wZXJhdG9yLyhoYWxmMiBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLyhoYWxmIGEsIGhhbGYyIGIpIHsKKyAgICBoYWxm
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAv
IGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yKyhoYWxmMyBhLCBo
YWxmMyBiKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBi
WzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci0oaGFsZjMgYSwgaGFs
ZjMgYikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IqKGhhbGYzIGEsIGhhbGYz
IGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yKihoYWxmMyBhLCBoYWxmIGIp
IHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yKihoYWxmIGEsIGhhbGYzIGIpIHsKKyAgICBoYWxm
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAq
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYzIG9wZXJhdG9yLyhoYWxmMyBhLCBoYWxmMyBiKSB7CisgICAgaGFsZjMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMyBvcGVyYXRvci8oaGFsZjMgYSwgaGFsZiBiKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJl
c3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRv
ci8oaGFsZiBhLCBoYWxmMyBiKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEg
LyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvcisoaGFsZjQgYSwg
aGFsZjQgYikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsg
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3ItKGhhbGY0IGEsIGhhbGY0IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAt
IGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yKihoYWxmNCBhLCBo
YWxmNCBiKSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBi
WzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvciooaGFsZjQgYSwgaGFsZiBiKSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAg
IHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvciooaGFsZiBhLCBoYWxmNCBiKSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGEg
KiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci8oaGFsZjQgYSwg
aGFsZjQgYikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8g
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3IvKGhhbGY0IGEsIGhhbGYgYikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IvKGhhbGYgYSwgaGFsZjQgYikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBh
IC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yKyhmbG9hdDIg
YSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDIgb3BlcmF0b3ItKGZsb2F0MiBhLCBmbG9hdDIgYikgeworICAgIGZsb2F0MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsx
XSAtIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvciooZmxvYXQy
IGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
ICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQyIG9wZXJhdG9yKihmbG9hdDIgYSwgZmxvYXQgYikgeworICAgIGZsb2F0MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAq
IGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvciooZmxvYXQgYSwgZmxv
YXQyIGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIg
b3BlcmF0b3IvKGZsb2F0MiBhLCBmbG9hdDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvci8oZmxvYXQyIGEsIGZsb2F0IGIp
IHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0
b3IvKGZsb2F0IGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzIG9wZXJhdG9yKyhmbG9hdDMgYSwgZmxvYXQzIGIpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3ItKGZsb2F0MyBhLCBmbG9hdDMgYikgeworICAgIGZs
b2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvciooZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAg
ZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yKihmbG9hdDMgYSwgZmxvYXQgYikgeworICAg
IGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MyBvcGVyYXRvciooZmxvYXQgYSwgZmxvYXQzIGIpIHsKKyAgICBmbG9hdDMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDMgb3BlcmF0b3IvKGZsb2F0MyBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MyBvcGVyYXRvci8oZmxvYXQzIGEsIGZsb2F0IGIpIHsKKyAgICBmbG9hdDMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOwor
ICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMg
b3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0MyBiKSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
KyhmbG9hdDQgYSwgZmxvYXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3ItKGZsb2F0NCBhLCBmbG9hdDQgYikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAg
cmVzdWx0WzNdID0gYVszXSAtIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvciooZmxvYXQ0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yKihmbG9hdDQgYSwgZmxvYXQg
YikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAg
cmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVz
dWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ciooZmxvYXQgYSwgZmxvYXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9
IGEgKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IvKGZsb2F0NCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsx
XSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0g
YVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci8oZmxv
YXQ0IGEsIGZsb2F0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFb
MF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0g
LyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhIC8gYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3ItKGNoYXIyIGEpIHsKKyAgICBjaGFyMiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLShjaGFyMyBhKSB7CisgICAgY2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFd
OworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci0oY2hhcjQgYSkgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAt
YVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAg
ICByZXN1bHRbM10gPSAtYVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJh
dG9yLShzaG9ydDIgYSkgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFb
MF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
MyBvcGVyYXRvci0oc2hvcnQzIGEpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3ItKHNob3J0NCBhKSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0g
PSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXN1bHRbM10gPSAtYVszXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci0oaW50MiBhKSB7CisgICAgaW50
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3ItKGludDMgYSkgeworICAgIGlu
dDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFd
OworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLShpbnQ0IGEpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVsw
XTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICBy
ZXN1bHRbM10gPSAtYVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3It
KGhhbGYyIGEpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07Cisg
ICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJh
dG9yLShoYWxmMyBhKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBd
OworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci0oaGFsZjQgYSkgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAg
ICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXN1bHRbM10gPSAtYVszXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yLShmbG9hdDIgYSkgeworICAgIGZsb2F0MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci0oZmxvYXQzIGEpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFd
OworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3ItKGZsb2F0NCBhKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsK
KyAgICByZXN1bHRbM10gPSAtYVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQogCi1uYXRpdmUg
dHlwZWRlZiBmbG9hdDI7Ci1uYXRpdmUgdHlwZWRlZiBmbG9hdDM7Ci1uYXRpdmUgdHlwZWRlZiBm
bG9hdDQ7CitoYWxmMngyIG9wZXJhdG9yKyhoYWxmMngyIGEsIGhhbGYyeDIgYikgeworICAgIGhh
bGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAg
IHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFb
MV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CiBgOwogCiAvLyBGSVhNRTogT25jZSB0aGUgc3RhbmRhcmQg
bGlicmFyeSBoYXMgYmVlbiByZXBsYWNlZCB3aXRoIGEgbmV3IHZlcnNpb24sIHRoaXMgY29tbWVu
dHMgc2hvdWxkIGJlIHJlbW92ZWQuCiAvLyBUaGlzIGxpc3QgaXMgdXNlZCB0byByZXN0cmljdCB0
aGUgYXZhaWxhYmlsaXR5IG9mIHZlY3RvciB0eXBlcyBhdmFpbGFibGUgaW4gdGhlIGxhbmdhdWdl
LgogLy8gUGVybWlzc2libGUgdmVjdG9yIGVsZW1lbnQgdHlwZXMgbXVzdCBhcHBlYXIgaW4gdGhp
cyBsaXN0IGFuZCBpbiB0aGUgc3RhbmRhcmQgbGlicmFyeQotY29uc3QgVmVjdG9yRWxlbWVudFR5
cGVzID0gWyAvKiJib29sIiwqLyAidWNoYXIiLCAvKiJjaGFyIiwgInVzaG9ydCIsICJzaG9ydCIs
Ki8gInVpbnQiLCAiaW50IiwgLyogImhhbGYiLCAqLyJmbG9hdCIgXTsKK2NvbnN0IFZlY3RvckVs
ZW1lbnRUeXBlcyA9IFsgImJvb2wiLCAidWNoYXIiLCAiY2hhciIsICJ1c2hvcnQiLCAic2hvcnQi
LCAidWludCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCIgXTsKIGNvbnN0IFZlY3RvckVsZW1lbnRT
aXplcyA9IFsgMiwgMywgNCBdOwogCiBmdW5jdGlvbiBhbGxWZWN0b3JUeXBlTmFtZXMoKQpAQCAt
MTkzLDcgKzI0NTcsNiBAQCBzdGFuZGFyZExpYnJhcnkgKz0gQnVpbHRpblZlY3RvckluZGV4U2V0
dGVyLmZ1bmN0aW9ucygpLmpvaW4oIjtcbiIpICsgIjtcbiI7CiAKIC8vIEZJWE1FOiBGb3IgbmF0
aXZlIHR5cGVzIHRoZXNlIGNvdWxkIGJlIGluY2x1ZGVkIGFzIHNvdXJjZSBpbiB0aGUgc3RhbmRh
cmQgbGlicmFyeS4KIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODg2ODUKLXN0YW5kYXJkTGlicmFyeSArPSBPcGVyYXRvckJvb2wuZnVuY3Rpb25zKCkuam9pbigi
O1xuIikgKyAiO1xuIjsKIHN0YW5kYXJkTGlicmFyeSArPSBCdWlsdGluVmVjdG9yRXF1YWxpdHlP
cGVyYXRvci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwogCiAvLyBGSVhNRTogVGhl
c2UgbmVlZCB0byBiZSBpbmNsdWRlZCBhcyBzb3VyY2UgaW4gdGhlIHN0YW5kYXJkIGxpYnJhcnku
CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1lbnRDbG9u
ZXIuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1lbnRDbG9uZXIuanMK
aW5kZXggYjM5NDhjNDUwYzcxNjA5Nzc5NzVlZDRlOGU5OGVkOTljNGY3YTA1OS4uMGQwNzE1YTk4
NTRkZWYxYmZkMmE4MDhjNzQwNDExMmJhMWE0YTBjMSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvU3RhdGVtZW50Q2xvbmVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1N0YXRlbWVudENsb25lci5qcwpAQCAtNTAsNyArNTAsNyBAQCBjbGFz
cyBTdGF0ZW1lbnRDbG9uZXIgZXh0ZW5kcyBSZXdyaXRlciB7CiAgICAgCiAgICAgdmlzaXROYXRp
dmVUeXBlKG5vZGUpCiAgICAgewotICAgICAgICByZXR1cm4gbmV3IE5hdGl2ZVR5cGUobm9kZS5v
cmlnaW4sIG5vZGUubmFtZSk7CisgICAgICAgIHJldHVybiBuZXcgTmF0aXZlVHlwZShub2RlLm9y
aWdpbiwgbm9kZS5uYW1lLCBub2RlLnR5cGVBcmd1bWVudHMubWFwKGFyZ3VtZW50ID0+IGFyZ3Vt
ZW50LnZpc2l0KHRoaXMpKSk7CiAgICAgfQogICAgIAogICAgIHZpc2l0VHlwZURlZihub2RlKQpk
aWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURlZmF1
bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
U3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzCmluZGV4IGZlZmU5YzAzZDdi
MTBiMzExNmIzYjY3ZjJhZjA1N2YxNmZjMTUxNmMuLmRjNTA2NTM4ZDFjNmM3MTA5YjFhZDFlY2Jh
M2NlYzI3OGQwZjdiNWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1N5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcworKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3Iu
anMKQEAgLTQ1LDYgKzQ1LDE4IEBAIGZ1bmN0aW9uIHN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0
b3JPcGVyYXRvcihwcm9ncmFtKQogICAgICAgICAgICAgdHlwZXMuYWRkKG5vZGUpOwogICAgICAg
ICAgICAgc3VwZXIudmlzaXRFbGVtZW50YWxUeXBlKG5vZGUpOwogICAgICAgICB9CisKKyAgICAg
ICAgdmlzaXRWZWN0b3JUeXBlKG5vZGUpCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGVzLmFk
ZChub2RlKTsKKyAgICAgICAgICAgIHN1cGVyLnZpc2l0VmVjdG9yVHlwZShub2RlKTsKKyAgICAg
ICAgfQorCisgICAgICAgIHZpc2l0TWF0cml4VHlwZShub2RlKQorICAgICAgICB7CisgICAgICAg
ICAgICB0eXBlcy5hZGQobm9kZSk7CisgICAgICAgICAgICBzdXBlci52aXNpdE1hdHJpeFR5cGUo
bm9kZSk7CisgICAgICAgIH0KICAgICB9CiAKICAgICBwcm9ncmFtLnZpc2l0KG5ldyBGaW5kQWxs
VHlwZXMoKSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50
aGVzaXplT3BlcmF0b3JCb29sLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3lu
dGhlc2l6ZU9wZXJhdG9yQm9vbC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjk1
ZmUxMzc1M2QwYTI2NDNiMDk1YjUzNGIxMTkyMTdmNjI1MzhiMy4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMzcgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICog
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
LSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKLSAqLwotInVzZSBzdHJp
Y3QiOwotCi1mdW5jdGlvbiBzeW50aGVzaXplT3BlcmF0b3JCb29sKHByb2dyYW0pCi17Ci0gICAg
Zm9yIChsZXQgdHlwZSBvZiBwcm9ncmFtLnR5cGVzLnZhbHVlcygpKSB7Ci0gICAgICAgIGlmICgh
KHR5cGUgaW5zdGFuY2VvZiBTdHJ1Y3RUeXBlKSAmJiAhKHR5cGUgaW5zdGFuY2VvZiBFbnVtVHlw
ZSkpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgY29uc3QgZnVuYyA9IG5ldyBOYXRp
dmVGdW5jKHR5cGUub3JpZ2luLCAib3BlcmF0b3IgY2FzdCIsIFR5cGVSZWYud3JhcChwcm9ncmFt
LnR5cGVzLmdldCgiYm9vbCIpKSwgWyBuZXcgRnVuY1BhcmFtZXRlcih0eXBlLm9yaWdpbiwgbnVs
bCwgVHlwZVJlZi53cmFwKHR5cGUpKSBdLCB0cnVlLCBudWxsKTsKLSAgICAgICAgY29uc3Qgb3Bl
cmF0b3JCb29sID0gbmV3IE9wZXJhdG9yQm9vbCh0eXBlLm5hbWUpOwotICAgICAgICBvcGVyYXRv
ckJvb2wuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKTsKLSAgICAgICAgcHJvZ3JhbS5h
ZGQoZnVuYyk7Ci0gICAgfQotfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1N5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMuanMKaW5kZXggYmZlNjA0NDk0ZGM3
MjVhZTdlNzRhZDRhMGJmZTIzZTkzYzA5MTc3Ni4uYTAxODE0NjhhMjVlZDRjMDkwNTBkN2JmMWQ2
MWY0NGVkM2EwYWE2NiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
U3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TeW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzCkBAIC01MSw3ICs1MSw3IEBAIGZ1
bmN0aW9uIHN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMocHJvZ3JhbSkKICAgICAgICAgICAgIAog
ICAgICAgICAgICAgZnVuY3Rpb24gY3JlYXRlVHlwZVJlZigpCiAgICAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICAgcmV0dXJuIFR5cGVSZWYuaW5zdGFudGlhdGUodHlwZSk7CisgICAgICAgICAg
ICAgICAgcmV0dXJuIFR5cGVSZWYud3JhcCh0eXBlKTsKICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIAogICAgICAgICAgICAgbGV0IGlzQ2FzdCA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5odG1sIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvVGVzdC5odG1sCmluZGV4IDEzZjM1ODIzOTkyOWQ4YTNlNmFjZTUyNTQ1YjkxY2E1
MmQ2MDYwZTQuLjU0ZGI5Y2ZiNjViYTNkOWQzMWFjNWUwZGVhY2QyYjQ5YTJmODc3ZjMgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuaHRtbAorKysgYi9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0Lmh0bWwKQEAgLTM3LDYgKzM3LDcgQEAKIDxz
Y3JpcHQgc3JjPSJDaGVja1JlY3Vyc2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hl
Y2tSZWN1cnNpdmVUeXBlcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tSZXR1cm5z
LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJDaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcyI+
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tVbnJlYWNoYWJsZUNvZGUuanMiPjwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9IkNoZWNrV3JhcHBlZC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
Q2hlY2tlci5qcyI+PC9zY3JpcHQ+CkBAIC04OSw2ICs5MCw3IEBACiA8c2NyaXB0IHNyYz0iTG9v
cENoZWNrZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik1ha2VBcnJheVJlZkV4cHJlc3Np
b24uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik1ha2VQdHJFeHByZXNzaW9uLmpzIj48L3Nj
cmlwdD4KKzxzY3JpcHQgc3JjPSJNYXRyaXhUeXBlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJOYW1lQ29udGV4dC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTmFtZUZpbmRlci5qcyI+
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTmFtZVJlc29sdmVyLmpzIj48L3NjcmlwdD4KQEAgLTk2
LDkgKzk4LDggQEAKIDxzY3JpcHQgc3JjPSJOb3JtYWxVc2VQcm9wZXJ0eVJlc29sdmVyLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOdWxsTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iTnVsbFR5cGUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQW5kZXJJ
bmRleC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRlckluZGV4ZXIuanMi
Pjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQXJyYXlSZWZMZW5ndGguanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iT3JpZ2luS2luZC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iT3ZlcmxvYWRSZXNvbHV0
aW9uRmFpbHVyZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUGFyc2UuanMiPjwvc2NyaXB0
PgpAQCAtMTEwLDcgKzExMSw2IEBACiA8c2NyaXB0IHNyYz0iUmVhZE1vZGlmeVdyaXRlRXhwcmVz
c2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVjdXJzaW9uQ2hlY2tlci5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVjdXJzaXZlVHlwZUNoZWNrZXIuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9IlJlbW92ZVR5cGVBcmd1bWVudHMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBz
cmM9IlJlc29sdmVOYW1lcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2ZU92ZXJs
b2FkSW1wbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2ZVByb3BlcnRpZXMuanMi
Pjwvc2NyaXB0PgpAQCAtMTI3LDEzICsxMjcsMTMgQEAKIDxzY3JpcHQgc3JjPSJTeW50aGVzaXpl
QXJyYXlPcGVyYXRvckxlbmd0aC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6
ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVTdHJ1
Y3RBY2Nlc3NvcnMuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVPcGVyYXRv
ckJvb2wuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVDb3B5Q29uc3RydWN0
b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZURlZmF1bHRD
b25zdHJ1Y3Rvck9wZXJhdG9yLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUcmFwU3RhdGVt
ZW50LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUeXBlRGVmLmpzIj48L3NjcmlwdD4KIDxz
Y3JpcHQgc3JjPSJUeXBlRGVmUmVzb2x2ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5
cGVSZWYuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IlR5cGVPdmVybG9hZFJlc29sdXRpb25G
YWlsdXJlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUeXBlZFZhbHVlLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJVaW50TGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
VWludExpdGVyYWxUeXBlLmpzIj48L3NjcmlwdD4KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9U
ZXN0LmpzCmluZGV4IGRmNDE3ZGFiZjZkODcxMzVlNzM1Y2E4YzliMWJmMTNhYjY0MDc1YTEuLmIz
NTk4ZGQ3ZmExODhlOGVkNGIwNGVhMGY0ZWQ4NDZlNjc2Mjg2YTAgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVGVzdC5qcwpAQCAtMjE1Myw0MSArMjE1Myw2IEBAIHRlc3RzLm9wZXJhdG9y
Qm9vbCA9IGZ1bmN0aW9uKCkKIAogICAgICAgICBib29sIGJvb2xGcm9tRmxvYXRGYWxzZSgpIHsg
cmV0dXJuIGJvb2woZmxvYXQoMCkpOyB9CiAgICAgICAgIGJvb2wgYm9vbEZyb21GbG9hdFRydWUo
KSB7IHJldHVybiBib29sKGZsb2F0KDEpKTsgfQotCi0gICAgICAgIGJvb2wgYm9vbEZyb21JbnQy
RmFsc2UoKSB7IHJldHVybiBib29sKGludDIoMCwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZy
b21JbnQyVHJ1ZTEoKSB7IHJldHVybiBib29sKGludDIoMSwgMCkpOyB9Ci0gICAgICAgIGJvb2wg
Ym9vbEZyb21JbnQyVHJ1ZTIoKSB7IHJldHVybiBib29sKGludDIoMCwgMSkpOyB9Ci0KLSAgICAg
ICAgYm9vbCBib29sRnJvbUZsb2F0M0ZhbHNlKCkgeyByZXR1cm4gYm9vbChmbG9hdDMoMCwgMCwg
MCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21GbG9hdDNUcnVlMSgpIHsgcmV0dXJuIGJvb2wo
ZmxvYXQzKDEsIDAsIDApKTsgfQotICAgICAgICBib29sIGJvb2xGcm9tRmxvYXQzVHJ1ZTIoKSB7
IHJldHVybiBib29sKGZsb2F0MygwLCAxLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUZs
b2F0M1RydWUzKCkgeyByZXR1cm4gYm9vbChmbG9hdDMoMCwgMCwgMSkpOyB9Ci0KLSAgICAgICAg
Ym9vbCBib29sRnJvbVVpbnQ0RmFsc2UoKSB7IHJldHVybiBib29sKHVpbnQ0KDAsIDAsIDAsIDAp
KTsgfQotICAgICAgICBib29sIGJvb2xGcm9tVWludDRUcnVlMSgpIHsgcmV0dXJuIGJvb2wodWlu
dDQoMSwgMCwgMCwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21VaW50NFRydWUyKCkgeyBy
ZXR1cm4gYm9vbCh1aW50NCgwLCAxLCAwLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbVVp
bnQ0VHJ1ZTMoKSB7IHJldHVybiBib29sKHVpbnQ0KDAsIDAsIDEsIDApKTsgfQotICAgICAgICBi
b29sIGJvb2xGcm9tVWludDRUcnVlNCgpIHsgcmV0dXJuIGJvb2wodWludDQoMCwgMCwgMCwgMSkp
OyB9Ci0KLSAgICAgICAgc3RydWN0IFggeyBpbnQgeDsgfQotCi0gICAgICAgIGJvb2wgYm9vbEZy
b21TdHJ1Y3RGYWxzZSgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIFggeDsKLSAgICAgICAgICAg
IHJldHVybiBib29sKHgpOwotICAgICAgICB9Ci0KLSAgICAgICAgYm9vbCBib29sRnJvbVN0cnVj
dFRydWUoKQotICAgICAgICB7Ci0gICAgICAgICAgICBYIHg7Ci0gICAgICAgICAgICB4LnggPSAx
OwotICAgICAgICAgICAgcmV0dXJuIGJvb2woeCk7Ci0gICAgICAgIH0KLQotICAgICAgICBlbnVt
IFkgeyBBLCBCIH0KLQotICAgICAgICBib29sIGJvb2xGcm9tRW51bUZhbHNlKCkgeyByZXR1cm4g
Ym9vbChZLkEpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21FbnVtVHJ1ZSgpIHsgcmV0dXJuIGJv
b2woWS5CKTsgfQogICAgIGApOwogCiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlv
bihwcm9ncmFtLCAiYm9vbEZyb21VY2hhckZhbHNlIiwgW10pLCBmYWxzZSk7CkBAIC0yMjAxLDI3
ICsyMTY2LDYgQEAgdGVzdHMub3BlcmF0b3JCb29sID0gZnVuY3Rpb24oKQogCiAgICAgY2hlY2tC
b29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdEZhbHNlIiwg
W10pLCBmYWxzZSk7CiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFt
LCAiYm9vbEZyb21GbG9hdFRydWUiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dy
YW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21JbnQyRmFsc2UiLCBbXSksIGZhbHNl
KTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJv
bUludDJUcnVlMSIsIFtdKSwgdHJ1ZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5j
dGlvbihwcm9ncmFtLCAiYm9vbEZyb21JbnQyVHJ1ZTIiLCBbXSksIHRydWUpOwotCi0gICAgY2hl
Y2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdDNGYWxz
ZSIsIFtdKSwgZmFsc2UpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJv
Z3JhbSwgImJvb2xGcm9tRmxvYXQzVHJ1ZTEiLCBbXSksIHRydWUpOwotICAgIGNoZWNrQm9vbChw
cm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tRmxvYXQzVHJ1ZTIiLCBbXSks
IHRydWUpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJv
b2xGcm9tRmxvYXQzVHJ1ZTMiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0s
IGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21VaW50NEZhbHNlIiwgW10pLCBmYWxzZSk7
Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21V
aW50NFRydWUxIiwgW10pLCB0cnVlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0
aW9uKHByb2dyYW0sICJib29sRnJvbVVpbnQ0VHJ1ZTIiLCBbXSksIHRydWUpOwotICAgIGNoZWNr
Qm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tVWludDRUcnVlMyIs
IFtdKSwgdHJ1ZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFt
LCAiYm9vbEZyb21VaW50NFRydWU0IiwgW10pLCB0cnVlKTsKLQotICAgIGNoZWNrQm9vbChwcm9n
cmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tU3RydWN0RmFsc2UiLCBbXSksIGZh
bHNlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29s
RnJvbVN0cnVjdFRydWUiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNh
bGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21FbnVtRmFsc2UiLCBbXSksIGZhbHNlKTsKLSAg
ICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUVudW1U
cnVlIiwgW10pLCB0cnVlKTsKIH0KIAogdGVzdHMuYm9vbEJpdEFuZCA9IGZ1bmN0aW9uKCkKQEAg
LTI4ODEsNyArMjgyNSw3IEBAIHRlc3RzLnNoYWRlclR5cGVzID0gZnVuY3Rpb24oKQogICAgICAg
ICAgICAgfQogICAgICAgICAgICAgZnJhZ21lbnQgQm9vIGJhcihGb28gc3RhZ2VJbikKICAgICAg
ICAgICAgIHsKLSAgICAgICAgICAgICAgICByZXR1cm4gYm9vKCk7CisgICAgICAgICAgICAgICAg
cmV0dXJuIEJvbygpOwogICAgICAgICAgICAgfQogICAgICAgICBgKSwKICAgICAgICAgKGUpID0+
IGUgaW5zdGFuY2VvZiBXVHlwZUVycm9yKTsKQEAgLTI5MDQsNyArMjg0OCw3IEBAIHRlc3RzLnNo
YWRlclR5cGVzID0gZnVuY3Rpb24oKQogCiB0ZXN0cy52ZWN0b3JUeXBlU3ludGF4ID0gZnVuY3Rp
b24oKQogewotICAgIGNvbnN0IHByb2dyYW0gPSBkb1ByZXAoYAorICAgIGxldCBwcm9ncmFtID0g
ZG9QcmVwKGAKICAgICAgICAgaW50IGZvbzIoKQogICAgICAgICB7CiAgICAgICAgICAgICBpbnQy
IHg7CkBAIC0yOTM5LDcgKzI4ODMsMjYgQEAgdGVzdHMudmVjdG9yVHlwZVN5bnRheCA9IGZ1bmN0
aW9uKCkKICAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbzIi
LCBbXSksIDQpOwogICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAi
Zm9vMyIsIFtdKSwgNSk7CiAgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dy
YW0sICJmb280IiwgW10pLCA2KTsKKyAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9u
KHByb2dyYW0sICJ2ZWMyT3BlcmF0b3JDYXN0IiwgW10pLCB0cnVlKTsKKworICAgIHByb2dyYW0g
PSBkb1ByZXAoYAorICAgICAgICB0eXBlZGVmIGkgPSBpbnQ7CisgICAgICAgIGludCBmb28yKCkK
KyAgICAgICAgeworICAgICAgICAgICAgaW50MiB4OworICAgICAgICAgICAgdmVjdG9yPGksIDI+
IHogPSBpbnQyKDMsIDQpOworICAgICAgICAgICAgeCA9IHo7CisgICAgICAgICAgICByZXR1cm4g
eC55OworICAgICAgICB9CisKKyAgICAgICAgYm9vbCB2ZWMyT3BlcmF0b3JDYXN0KCkKKyAgICAg
ICAgeworICAgICAgICAgICAgaW50MiB4ID0gdmVjdG9yPGksMj4oMSwgMik7CisgICAgICAgICAg
ICB2ZWN0b3I8aSwgMj4geSA9IGludDIoMSwgMik7CisgICAgICAgICAgICByZXR1cm4geCA9PSB5
ICYmIHgueCA9PSAxICYmIHgueSA9PSAyICYmIHkueCA9PSAxICYmIHkueSA9PSAyOworICAgICAg
ICB9YCk7CiAKKyAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZv
bzIiLCBbXSksIDQpOwogICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3Jh
bSwgInZlYzJPcGVyYXRvckNhc3QiLCBbXSksIHRydWUpOwogfQogCmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5q
cyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVPdmVybG9hZFJlc29sdXRpb25G
YWlsdXJlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmQ1Y2IzZjcxMGZhMGNlMDNkMjkwMmZhMzJlZDhiMDI3NWZi
NjI2MDgKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9U
eXBlT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qcwpAQCAtMCwwICsxLDQyIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJ
UycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJ
U0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRP
UlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1Ig
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1Mg
SU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisg
KiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkg
T1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBU
SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisidXNlIHN0cmljdCI7CisKK2Ns
YXNzIFR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlIHsKKyAgICBjb25zdHJ1Y3Rvcih0eXBl
LCByZWFzb24pCisgICAgeworICAgICAgICB0aGlzLl90eXBlID0gdHlwZTsKKyAgICAgICAgdGhp
cy5fcmVhc29uID0gcmVhc29uOworICAgIH0KKyAgICAKKyAgICBnZXQgdHlwZSgpIHsgcmV0dXJu
IHRoaXMuX3R5cGU7IH0KKyAgICBnZXQgcmVhc29uKCkgeyByZXR1cm4gdGhpcy5fcmVhc29uOyB9
CisgICAgCisgICAgdG9TdHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudHlwZS50
b1N0cmluZygpICsgIiBkaWQgbm90IG1hdGNoIGJlY2F1c2U6ICIgKyB0aGlzLnJlYXNvbjsKKyAg
ICB9Cit9CisKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVS
ZWYuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVmLmpzCmluZGV4IGI1
ZjNjMGIzZDkyNTMyZTA1YzY4MDA1NGExNjFmMDVlMGRkZDY0NmIuLmFjZGE3MDZjMGNlMzc5N2U0
NmIwOTUxN2RjYjA4MWVhNTllM2RmODkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1R5cGVSZWYuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
VHlwZVJlZi5qcwpAQCAtMjUsNyArMjUsNyBAQAogInVzZSBzdHJpY3QiOwogCiBjbGFzcyBUeXBl
UmVmIGV4dGVuZHMgVHlwZSB7Ci0gICAgY29uc3RydWN0b3Iob3JpZ2luLCBuYW1lLCB0eXBlQXJn
dW1lbnRzID0gbnVsbCkKKyAgICBjb25zdHJ1Y3RvcihvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVu
dHMgPSBbXSkKICAgICB7CiAgICAgICAgIHN1cGVyKCk7CiAgICAgICAgIHRoaXMuX29yaWdpbiA9
IG9yaWdpbjsKQEAgLTM4LDE0ICszOCwxMSBAQCBjbGFzcyBUeXBlUmVmIGV4dGVuZHMgVHlwZSB7
CiAgICAgewogICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9mIFR5cGVSZWYpCiAgICAgICAgICAg
ICByZXR1cm4gdHlwZTsKLSAgICAgICAgbGV0IHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3Jp
Z2luLCB0eXBlLm5hbWUpOwotICAgICAgICByZXN1bHQudHlwZSA9IHR5cGU7Ci0gICAgICAgIHJl
dHVybiByZXN1bHQ7Ci0gICAgfQotICAgIAotICAgIHN0YXRpYyBpbnN0YW50aWF0ZSh0eXBlKQot
ICAgIHsKLSAgICAgICAgbGV0IHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3JpZ2luLCB0eXBl
Lm5hbWUpOworICAgICAgICBsZXQgcmVzdWx0OworICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9m
IE5hdGl2ZVR5cGUpCisgICAgICAgICAgICByZXN1bHQgPSBuZXcgVHlwZVJlZih0eXBlLm9yaWdp
biwgdHlwZS5uYW1lLCB0eXBlLnR5cGVBcmd1bWVudHMpOworICAgICAgICBlbHNlCisgICAgICAg
ICAgICByZXN1bHQgPSBuZXcgVHlwZVJlZih0eXBlLm9yZ2luLCB0eXBlLm5hbWUpOwogICAgICAg
ICByZXN1bHQudHlwZSA9IHR5cGU7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQpAQCAt
NjQsNiArNjEsMzkgQEAgY2xhc3MgVHlwZVJlZiBleHRlbmRzIFR5cGUgewogICAgICAgICB0aGlz
Ll90eXBlID0gbmV3VHlwZTsKICAgICB9CiAKKyAgICByZXNvbHZlKHBvc3NpYmxlT3ZlcmxvYWRz
KQorICAgIHsKKyAgICAgICAgaWYgKCFwb3NzaWJsZU92ZXJsb2FkcykKKyAgICAgICAgICAgIHRo
cm93IG5ldyBXVHlwZUVycm9yKHRoaXMub3JpZ2luLm9yaWdpblN0cmluZywgIkRpZCBub3QgZmlu
ZCBhbnkgdHlwZXMgbmFtZWQgIiArIHRoaXMubmFtZSk7CisKKyAgICAgICAgbGV0IGZhaWx1cmVz
ID0gW107CisgICAgICAgIGxldCBvdmVybG9hZCA9IHJlc29sdmVUeXBlT3ZlcmxvYWRJbXBsKHBv
c3NpYmxlT3ZlcmxvYWRzLCB0aGlzLnR5cGVBcmd1bWVudHMpOworCisgICAgICAgIGlmICghb3Zl
cmxvYWQudHlwZSkgeworICAgICAgICAgICAgZmFpbHVyZXMucHVzaCguLi5vdmVybG9hZC5mYWls
dXJlcyk7CisgICAgICAgICAgICBsZXQgbWVzc2FnZSA9ICJEaWQgbm90IGZpbmQgdHlwZSBuYW1l
ZCAiICsgdGhpcy5uYW1lICsgIiBmb3IgdHlwZSBhcmd1bWVudHMgIjsKKyAgICAgICAgICAgIG1l
c3NhZ2UgKz0gIigiICsgdGhpcy50eXBlQXJndW1lbnRzICsgIikiOworICAgICAgICAgICAgaWYg
KGZhaWx1cmVzLmxlbmd0aCkKKyAgICAgICAgICAgICAgICBtZXNzYWdlICs9ICIsIGJ1dCBjb25z
aWRlcmVkOlxuIiArIGZhaWx1cmVzLmpvaW4oIlxuIikKKyAgICAgICAgICAgIHRocm93IG5ldyBX
VHlwZUVycm9yKHRoaXMub3JpZ2luLm9yaWdpblN0cmluZywgbWVzc2FnZSk7CisgICAgICAgIH0K
KworICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMudHlwZUFyZ3VtZW50cy5sZW5ndGg7
ICsraSkgeworICAgICAgICAgICAgbGV0IHR5cGVBcmd1bWVudCA9IHRoaXMudHlwZUFyZ3VtZW50
c1tpXTsKKyAgICAgICAgICAgIGxldCByZXNvbHZlZFR5cGVBcmd1bWVudCA9IG92ZXJsb2FkLnR5
cGUudHlwZUFyZ3VtZW50c1tpXTsKKyAgICAgICAgICAgIGxldCByZXN1bHQgPSB0eXBlQXJndW1l
bnQuZXF1YWxzV2l0aENvbW1pdChyZXNvbHZlZFR5cGVBcmd1bWVudCk7CisgICAgICAgICAgICBp
ZiAoIXJlc3VsdCkKKyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkF0ICIgKyB0aGlz
Lm9yaWdpbi5vcmlnaW5TdHJpbmcgKyAiIGFyZ3VtZW50IHR5cGVzIGZvciBUeXBlIGFuZCBUeXBl
UmVmIG5vdCBlcXVhbDogYXJndW1lbnQgdHlwZSA9ICIgKyB0eXBlQXJndW1lbnQgKyAiLCByZXNv
bHZlZCB0eXBlIGFyZ3VtZW50ID0gIiArIHJlc29sdmVkVHlwZUFyZ3VtZW50KTsKKyAgICAgICAg
ICAgIGlmIChyZXNvbHZlZFR5cGVBcmd1bWVudC5jb25zdHJ1Y3Rvci5uYW1lID09ICJHZW5lcmlj
TGl0ZXJhbCIpIHsKKyAgICAgICAgICAgICAgICByZXN1bHQgPSB0eXBlQXJndW1lbnQudHlwZS5l
cXVhbHNXaXRoQ29tbWl0KHJlc29sdmVkVHlwZUFyZ3VtZW50LnR5cGUpOworICAgICAgICAgICAg
ICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkF0
ICIgKyB0aGlzLm9yaWdpbi5vcmlnaW5TdHJpbmcgKyAiIGFyZ3VtZW50IHR5cGVzIGZvciBUeXBl
IGFuZCBUeXBlUmVmIG5vdCBlcXVhbDogYXJndW1lbnQgdHlwZSA9ICIgKyB0eXBlQXJndW1lbnQg
KyAiLCByZXNvbHZlZCB0eXBlIGFyZ3VtZW50ID0gIiArIHJlc29sdmVkVHlwZUFyZ3VtZW50KTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAKKyAgICAgICAgfQorICAgICAgICB0aGlz
LnR5cGUgPSBvdmVybG9hZC50eXBlOworICAgIH0KKwogICAgIGdldCB1bmlmeU5vZGUoKQogICAg
IHsKICAgICAgICAgaWYgKCF0aGlzLnR5cGUpCkBAIC05OSw3ICsxMjksMTAgQEAgY2xhc3MgVHlw
ZVJlZiBleHRlbmRzIFR5cGUgewogICAgIHsKICAgICAgICAgaWYgKCF0aGlzLm5hbWUpCiAgICAg
ICAgICAgICByZXR1cm4gdGhpcy50eXBlLnRvU3RyaW5nKCk7Ci0gICAgICAgIHJldHVybiB0aGlz
Lm5hbWU7CisgICAgICAgIGxldCByZXN1bHQgPSB0aGlzLm5hbWU7CisgICAgICAgIGlmICh0aGlz
LnR5cGVBcmd1bWVudHMubGVuZ3RoID4gMCkKKyAgICAgICAgICAgIHJlc3VsdCArPSAiPCIgKyB0
aGlzLnR5cGVBcmd1bWVudHMubWFwKGFyZ3VtZW50ID0+IGFyZ3VtZW50LnRvU3RyaW5nKCkpLmpv
aW4oIiwiKSArICI+IjsKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CiB9CiAKZGlmZiAt
LWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1VuaWZpY2F0aW9uQ29udGV4dC5q
cyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1VuaWZpY2F0aW9uQ29udGV4dC5qcwpp
bmRleCAyZjcxNTQ3YjBhZmJlMTgwMzc4ZjM3OTk2MjMxODYyYTJiOTFhODJlLi4zODE5MTY5NzIy
M2VmNzIxYTUzNzkxNGIzNjk4OTc2NzgxZmU2ZTZlIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9VbmlmaWNhdGlvbkNvbnRleHQuanMKKysrIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvVW5pZmljYXRpb25Db250ZXh0LmpzCkBAIC05Miw2ICs5MiwxOSBA
QCBjbGFzcyBVbmlmaWNhdGlvbkNvbnRleHQgewogICAgIAogICAgIHZlcmlmeSgpCiAgICAgewor
ICAgICAgICAvLyBXZSBkbyBhIHR3by1waGFzZSBwcmUtdmVyaWZpY2F0aW9uLiBUaGlzIGdpdmVz
IGxpdGVyYWxzIGEgY2hhbmNlIHRvIHNlbGVjdCBhIG1vcmUgc3BlY2lmaWMgdHlwZS4KKyAgICAg
ICAgbGV0IHByZXBhcmF0aW9ucyA9IFtdOworICAgICAgICBmb3IgKGxldCBub2RlIG9mIHRoaXMu
bm9kZXMpIHsKKyAgICAgICAgICAgIGxldCBwcmVwYXJhdGlvbiA9IG5vZGUucHJlcGFyZVRvVmVy
aWZ5KHRoaXMpOworICAgICAgICAgICAgaWYgKHByZXBhcmF0aW9uKQorICAgICAgICAgICAgICAg
IHByZXBhcmF0aW9ucy5wdXNoKHByZXBhcmF0aW9uKTsKKyAgICAgICAgfQorICAgICAgICBmb3Ig
KGxldCBwcmVwYXJhdGlvbiBvZiBwcmVwYXJhdGlvbnMpIHsKKyAgICAgICAgICAgIGxldCByZXN1
bHQgPSBwcmVwYXJhdGlvbigpOworICAgICAgICAgICAgaWYgKCFyZXN1bHQucmVzdWx0KQorICAg
ICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgIH0KKwogICAgICAgICBmb3IgKGxl
dCB0eXBlQXJndW1lbnQgb2YgdGhpcy50eXBlQXJndW1lbnRzKCkpIHsKICAgICAgICAgICAgIGxl
dCByZXN1bHQgPSB0eXBlQXJndW1lbnQudmVyaWZ5QXNBcmd1bWVudCh0aGlzKTsKICAgICAgICAg
ICAgIGlmICghcmVzdWx0LnJlc3VsdCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1ZlY3RvclR5cGUuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9W
ZWN0b3JUeXBlLmpzCmluZGV4IDUwMTRjNjcxYTA3ODgyMDAyYzIzNGJiMzJmMTdjODg2MGVmZmMx
YzYuLmRmMGNiYzJjNzMwOGY0NTQxM2NiY2MyOGQ4OTYyMWJjMDNhYjI2MDQgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ZlY3RvclR5cGUuanMKKysrIGIvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmVjdG9yVHlwZS5qcwpAQCAtMjUsMTkgKzI1LDE0IEBA
CiAidXNlIHN0cmljdCI7CiAKIGNsYXNzIFZlY3RvclR5cGUgZXh0ZW5kcyBOYXRpdmVUeXBlIHsK
LSAgICBjb25zdHJ1Y3RvcihvcmlnaW4sIG5hbWUpCisgICAgY29uc3RydWN0b3Iob3JpZ2luLCBu
YW1lLCB0eXBlQXJndW1lbnRzKQogICAgIHsKLSAgICAgICAgc3VwZXIob3JpZ2luLCBuYW1lKTsK
LSAgICAgICAgY29uc3QgbWF0Y2ggPSAvXihbQS16XSspKFswLTldKSQvLmV4ZWMobmFtZSk7Ci0g
ICAgICAgIGlmICghbWF0Y2gpCi0gICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcihvcmln
aW4ub3JpZ2luU3RyaW5nLCBgJHtuYW1lfSBkb2Vzbid0IG1hdGNoIHRoZSBmb3JtYXQgZm9yIHZl
Y3RvciB0eXBlIG5hbWVzLidgKTsKLQotICAgICAgICB0aGlzLl9lbGVtZW50VHlwZSA9IG5ldyBU
eXBlUmVmKG9yaWdpbiwgbWF0Y2hbMV0pOwotICAgICAgICB0aGlzLl9udW1FbGVtZW50c1ZhbHVl
ID0gcGFyc2VJbnQobWF0Y2hbMl0pOworICAgICAgICBzdXBlcihvcmlnaW4sIG5hbWUsIHR5cGVB
cmd1bWVudHMpOwogICAgIH0KIAotICAgIGdldCBlbGVtZW50VHlwZSgpIHsgcmV0dXJuIHRoaXMu
X2VsZW1lbnRUeXBlOyB9Ci0gICAgZ2V0IG51bUVsZW1lbnRzVmFsdWUoKSB7IHJldHVybiB0aGlz
Ll9udW1FbGVtZW50c1ZhbHVlOyB9CisgICAgZ2V0IGVsZW1lbnRUeXBlKCkgeyByZXR1cm4gdGhp
cy50eXBlQXJndW1lbnRzWzBdOyB9CisgICAgZ2V0IG51bUVsZW1lbnRzKCkgeyByZXR1cm4gdGhp
cy50eXBlQXJndW1lbnRzWzFdOyB9CisgICAgZ2V0IG51bUVsZW1lbnRzVmFsdWUoKSB7IHJldHVy
biB0aGlzLm51bUVsZW1lbnRzLnZhbHVlOyB9CiAgICAgZ2V0IHNpemUoKSB7IHJldHVybiB0aGlz
LmVsZW1lbnRUeXBlLnNpemUgKiB0aGlzLm51bUVsZW1lbnRzVmFsdWU7IH0KIAogICAgIHVuaWZ5
SW1wbCh1bmlmaWNhdGlvbkNvbnRleHQsIG90aGVyKQpAQCAtNTksNyArNTQsNyBAQCBjbGFzcyBW
ZWN0b3JUeXBlIGV4dGVuZHMgTmF0aXZlVHlwZSB7CiAKICAgICB0b1N0cmluZygpCiAgICAgewot
ICAgICAgICByZXR1cm4gYG5hdGl2ZSB0eXBlZGVmICR7dGhpcy5lbGVtZW50VHlwZX0ke3RoaXMu
bnVtRWxlbWVudHNWYWx1ZX1gOworICAgICAgICByZXR1cm4gYG5hdGl2ZSB0eXBlZGVmIHZlY3Rv
cjwke3RoaXMuZWxlbWVudFR5cGV9LCAke3RoaXMubnVtRWxlbWVudHNWYWx1ZX0+YDsKICAgICB9
CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3Iu
anMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9WaXNpdG9yLmpzCmluZGV4IDdkMzg3
YjI1ZjI1ODliODczOTE4YWYyZjQ0YzI0MzRhZDY1ODc0N2YuLjJkZTFlNzRkZjI3MThiYjNiYTY4
ZDA1YzBlNzEwMmJkMDVhMDE2OTMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL1Zpc2l0b3IuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmlz
aXRvci5qcwpAQCAtNjgsMTAgKzY4LDE0IEBAIGNsYXNzIFZpc2l0b3IgewogICAgIAogICAgIHZp
c2l0VHlwZVJlZihub2RlKQogICAgIHsKKyAgICAgICAgZm9yIChsZXQgdHlwZUFyZ3VtZW50IG9m
IG5vZGUudHlwZUFyZ3VtZW50cykKKyAgICAgICAgICAgIHR5cGVBcmd1bWVudC52aXNpdCh0aGlz
KTsKICAgICB9CiAgICAgCiAgICAgdmlzaXROYXRpdmVUeXBlKG5vZGUpCiAgICAgeworICAgICAg
ICBmb3IgKGxldCB0eXBlQXJndW1lbnQgb2Ygbm9kZS50eXBlQXJndW1lbnRzKQorICAgICAgICAg
ICAgdHlwZUFyZ3VtZW50LnZpc2l0KHRoaXMpOwogICAgIH0KICAgICAKICAgICB2aXNpdFR5cGVE
ZWYobm9kZSkKQEAgLTMyNyw2ICszMzEsMTQgQEAgY2xhc3MgVmlzaXRvciB7CiAgICAgdmlzaXRW
ZWN0b3JUeXBlKG5vZGUpCiAgICAgewogICAgICAgICBub2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRo
aXMpOworICAgICAgICBub2RlLm51bUVsZW1lbnRzLnZpc2l0KHRoaXMpOworICAgIH0KKworICAg
IHZpc2l0TWF0cml4VHlwZShub2RlKQorICAgIHsKKyAgICAgICAgbm9kZS5lbGVtZW50VHlwZS52
aXNpdCh0aGlzKTsKKyAgICAgICAgbm9kZS5udW1Sb3dzLnZpc2l0KHRoaXMpOworICAgICAgICBu
b2RlLm51bUNvbHVtbnMudmlzaXQodGhpcyk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9pbmRleC5odG1sIGIvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvaW5kZXguaHRtbAppbmRleCA0YzkzYTMzZTZhMzg2NjJlOGJhMWU4NDI0MDNk
NGMwMmQ1ZTlmOWRmLi5mYWI5MTBjM2IzZTI5YTEwMGRiYjNmMjVlOWE1M2U4Njk2Y2NhYjM2IDEw
MDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9pbmRleC5odG1sCisrKyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL2luZGV4Lmh0bWwKQEAgLTM4LDYgKzM4LDcg
QEAKIDxzY3JpcHQgc3JjPSJDaGVja1JlY3Vyc2l2ZVR5cGVzLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJDaGVja1JldHVybnMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkNoZWNrVW5y
ZWFjaGFibGVDb2RlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJDaGVja1R5cGVzV2l0aEFy
Z3VtZW50cy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tXcmFwcGVkLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja2VyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJD
bG9uZVByb2dyYW0uanMiPjwvc2NyaXB0PgpAQCAtODksNiArOTAsNyBAQAogPHNjcmlwdCBzcmM9
Ikxvb3BDaGVja2VyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJNYWtlQXJyYXlSZWZFeHBy
ZXNzaW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJNYWtlUHRyRXhwcmVzc2lvbi5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iTWF0cml4VHlwZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iTmFtZUNvbnRleHQuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik5hbWVGaW5kZXIu
anMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik5hbWVSZXNvbHZlci5qcyI+PC9zY3JpcHQ+CkBA
IC05Niw5ICs5OCw4IEBACiA8c2NyaXB0IHNyYz0iTm9ybWFsVXNlUHJvcGVydHlSZXNvbHZlci5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTnVsbExpdGVyYWwuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9Ik51bGxUeXBlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJPcGVyYXRvckFu
ZGVySW5kZXguanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQW5kZXJJbmRleGVy
LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFycmF5UmVmTGVuZ3RoLmpzIj48
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJPcGVyYXRvckJvb2wuanMiPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9Ik9yaWdpbktpbmQuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik92ZXJsb2FkUmVz
b2x1dGlvbkZhaWx1cmUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlBhcnNlLmpzIj48L3Nj
cmlwdD4KQEAgLTExMCw3ICsxMTEsNiBAQAogPHNjcmlwdCBzcmM9IlJlYWRNb2RpZnlXcml0ZUV4
cHJlc3Npb24uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlJlY3Vyc2lvbkNoZWNrZXIuanMi
Pjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlJlY3Vyc2l2ZVR5cGVDaGVja2VyLmpzIj48L3Njcmlw
dD4KLTxzY3JpcHQgc3JjPSJSZW1vdmVUeXBlQXJndW1lbnRzLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJSZXNvbHZlTmFtZXMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlJlc29sdmVP
dmVybG9hZEltcGwuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlJlc29sdmVQcm9wZXJ0aWVz
LmpzIj48L3NjcmlwdD4KQEAgLTEyNywxMyArMTI3LDEzIEBACiA8c2NyaXB0IHNyYz0iU3ludGhl
c2l6ZUFycmF5T3BlcmF0b3JMZW5ndGguanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlN5bnRo
ZXNpemVFbnVtRnVuY3Rpb25zLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXpl
U3RydWN0QWNjZXNzb3JzLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJTeW50aGVzaXplT3Bl
cmF0b3JCb29sLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplQ29weUNvbnN0
cnVjdG9yT3BlcmF0b3IuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVEZWZh
dWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iVHJhcFN0
YXRlbWVudC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iVHlwZURlZi5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iVHlwZURlZlJlc29sdmVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJUeXBlUmVmLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJUeXBlT3ZlcmxvYWRSZXNvbHV0
aW9uRmFpbHVyZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iVHlwZWRWYWx1ZS5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iVWludExpdGVyYWwuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBz
cmM9IlVpbnRMaXRlcmFsVHlwZS5qcyI+PC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347895</attachid>
            <date>2018-08-22 19:45:56 -0700</date>
            <delta_ts>2018-08-22 22:34:15 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-188873-20180822194555.patch</filename>
            <type>text/plain</type>
            <size>223134</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MTgzCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYjIyOTRjOGE5MzFkYTYyNDAwZGNmZjkyODJiMTA1YWNk
NjI3YTc1MC4uMzViMzBmNDFiMTIxMjg5ZDAxOTc3YzY0OGZlODJjMmE0MTY5MTBkYyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1
OCBAQAorMjAxOC0wOC0yMiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29t
PgorCisgICAgICAgIFtXSExTTF0gQWRkIG1vcmUgZnVuY3Rpb25zIHRvIHRoZSBzdGFuZGFyZCBs
aWJyYXJ5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODg4NzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qczoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzOgorICAgICAgICAoQnVpbHRp
blZlY3RvckNvbnN0cnVjdG9ycyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
Q2FsbEV4cHJlc3Npb24uanM6CisgICAgICAgIChDYWxsRXhwcmVzc2lvbi5wcm90b3R5cGUucmVz
b2x2ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhB
cmd1bWVudHMuanM6IENvcGllZCBmcm9tIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5
bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcy4KKyAgICAgICAgKGNoZWNrVHlw
ZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlci5wcm90b3R5cGUudmlzaXRU
eXBlUmVmKToKKyAgICAgICAgKGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1l
bnRzQ2hlY2tlcik6CisgICAgICAgIChjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyk6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qczoKKyAgICAgICAgKENoZWNrZXIu
cHJvdG90eXBlLnZpc2l0UHJvZ3JhbSk6CisgICAgICAgIChDaGVja2VyLnByb3RvdHlwZS52aXNp
dFR5cGVSZWYpOgorICAgICAgICAoQ2hlY2tlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKToK
KyAgICAgICAgKENoZWNrZXIucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgICog
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanM6
CisgICAgICAgIChGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5wcm90b3R5cGUudmlzaXRN
YXRyaXhUeXBlKToKKyAgICAgICAgKEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyKToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qczoKKyAg
ICAgICAgKGluZmVyVHlwZXNGb3JDYWxsKToKKyAgICAgICAgKGluZmVyVHlwZXNGb3JUeXBlQXJn
dW1lbnRzKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpz
OgorICAgICAgICAoSW50cmluc2ljcy5jYXN0KToKKyAgICAgICAgKEludHJpbnNpY3MuYml0d2lz
ZUNhc3QpOgorICAgICAgICAoSW50cmluc2ljcy5jYXN0VG9IYWxmKToKKyAgICAgICAgKEludHJp
bnNpY3MuKToKKyAgICAgICAgKEludHJpbnNpY3MpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL01hdHJpeFR5cGUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9PcGVyYXRvckJvb2wuanMuCisgICAgICAgIChNYXRyaXhUeXBlKToKKyAgICAg
ICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBlbGVtZW50VHlwZSk6CisgICAgICAgIChNYXRy
aXhUeXBlLnByb3RvdHlwZS5nZXQgbnVtUm93cyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3Rv
dHlwZS5nZXQgbnVtQ29sdW1ucyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3RvdHlwZS5nZXQg
bnVtUm93c1ZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBudW1Db2x1
bW5zVmFsdWUpOgorICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUuZ2V0IHNpemUpOgorICAg
ICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUudW5pZnlJbXBsKToKKyAgICAgICAgKE1hdHJpeFR5
cGUucHJvdG90eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUu
cHJvdG90eXBlLnRvU3RyaW5nKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9O
YW1lQ29udGV4dC5qczoKKyAgICAgICAgKE5hbWVDb250ZXh0LnByb3RvdHlwZS5hZGQpOgorICAg
ICAgICAoTmFtZUNvbnRleHQucHJvdG90eXBlLmdldCBsZXQpOgorICAgICAgICAoTmFtZUNvbnRl
eHQudW5kZXJseWluZ1RoaW5ncy5wcm90b3R5cGUuZWxzZSk6CisgICAgICAgIChOYW1lQ29udGV4
dC5wcm90b3R5cGUuU3ltYm9sLml0ZXJhdG9yKToKKyAgICAgICAgKE5hbWVDb250ZXh0KToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVzb2x2ZXIuanM6CisgICAgICAg
IChOYW1lUmVzb2x2ZXIucHJvdG90eXBlLnZpc2l0VHlwZVJlZik6CisgICAgICAgIChOYW1lUmVz
b2x2ZXIucHJvdG90eXBlLnZpc2l0Q2FsbEV4cHJlc3Npb24pOgorICAgICAgICAoTmFtZVJlc29s
dmVyKToKKyAgICAgICAgKE5hbWVSZXNvbHZlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpz
OgorICAgICAgICAoTmF0aXZlVHlwZSk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS5n
ZXQgdHlwZUFyZ3VtZW50cyk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS50b1N0cmlu
Zyk6CisgICAgICAgIChOYXRpdmVUeXBlLmNyZWF0ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanM6IFJlbmFtZWQgZnJvbSBUb29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXguanMuCisgICAgICAgIChP
cGVyYXRvckFuZGVySW5kZXhlci5mdW5jdGlvbnMpOgorICAgICAgICAoT3BlcmF0b3JBbmRlcklu
ZGV4ZXIpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ByZXBhcmUuanM6Cisg
ICAgICAgIChsZXQucHJlcGFyZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UHJvZ3JhbS5qczoKKyAgICAgICAgKFByb2dyYW0ucHJvdG90eXBlLmFkZCk6CisgICAgICAgIChQ
cm9ncmFtLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgIChQcm9ncmFtKToKKyAgICAgICAg
KiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzOiBSZW1vdmVk
LgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVOYW1lcy5qczoKKyAg
ICAgICAgKHJlc29sdmVOYW1lc0luVHlwZXMpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL1Jlc29sdmVPdmVybG9hZEltcGwuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUmVzb2x2ZVR5cGVEZWZzLmpzOgorICAgICAgICAocmVzb2x2ZVR5cGVEZWZzSW5U
eXBlcyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanM6Cisg
ICAgICAgIChSZXdyaXRlci5wcm90b3R5cGUudmlzaXRUeXBlUmVmKToKKyAgICAgICAgKFJld3Jp
dGVyLnByb3RvdHlwZS52aXNpdFZlY3RvclR5cGUpOgorICAgICAgICAoUmV3cml0ZXIucHJvdG90
eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChSZXdyaXRlcik6CisgICAgICAgICogV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbDoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9TdGFuZGFyZExpYnJhcnkuanM6CisgICAgICAgIChvcGVyYXRvci5ib29sKToK
KyAgICAgICAgKGJvb2wub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIub3BlcmF0b3IpOgorICAg
ICAgICAodXNob3J0Lm9wZXJhdG9yKToKKyAgICAgICAgKGNoYXIub3BlcmF0b3IpOgorICAgICAg
ICAoc2hvcnQub3BlcmF0b3IpOgorICAgICAgICAodWludC5vcGVyYXRvcik6CisgICAgICAgIChp
bnQub3BlcmF0b3IpOgorICAgICAgICAoaGFsZi5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdC5v
cGVyYXRvcik6CisgICAgICAgICh1Y2hhcjIub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIzLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVjaGFyNC5vcGVyYXRvcik6CisgICAgICAgICh1c2hvcnQyLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVzaG9ydDMub3BlcmF0b3IpOgorICAgICAgICAodXNob3J0NC5v
cGVyYXRvcik6CisgICAgICAgICh1aW50Mi5vcGVyYXRvcik6CisgICAgICAgICh1aW50My5vcGVy
YXRvcik6CisgICAgICAgICh1aW50NC5vcGVyYXRvcik6CisgICAgICAgIChjaGFyMi5vcGVyYXRv
cik6CisgICAgICAgIChjaGFyMy5vcGVyYXRvcik6CisgICAgICAgIChjaGFyNC5vcGVyYXRvcik6
CisgICAgICAgIChzaG9ydDIub3BlcmF0b3IpOgorICAgICAgICAoc2hvcnQzLm9wZXJhdG9yKToK
KyAgICAgICAgKHNob3J0NC5vcGVyYXRvcik6CisgICAgICAgIChpbnQyLm9wZXJhdG9yKToKKyAg
ICAgICAgKGludDMub3BlcmF0b3IpOgorICAgICAgICAoaW50NC5vcGVyYXRvcik6CisgICAgICAg
IChoYWxmMi5vcGVyYXRvcik6CisgICAgICAgIChoYWxmMy5vcGVyYXRvcik6CisgICAgICAgICho
YWxmNC5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdDIub3BlcmF0b3IpOgorICAgICAgICAoZmxv
YXQzLm9wZXJhdG9yKToKKyAgICAgICAgKGZsb2F0NC5vcGVyYXRvcik6CisgICAgICAgIChoYWxm
MngyLm9wZXJhdG9yKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1l
bnRDbG9uZXIuanM6CisgICAgICAgIChTdGF0ZW1lbnRDbG9uZXIucHJvdG90eXBlLnZpc2l0TmF0
aXZlVHlwZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURl
ZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzOgorICAgICAgICAoc3ludGhlc2l6ZURlZmF1bHRD
b25zdHJ1Y3Rvck9wZXJhdG9yLkZpbmRBbGxUeXBlcy5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBl
KToKKyAgICAgICAgKHN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5GaW5kQWxs
VHlwZXMucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChzeW50aGVzaXplRGVm
YXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuRmluZEFsbFR5cGVzKToKKyAgICAgICAgKHN5bnRoZXNp
emVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qczoKKyAgICAgICAgKHN5bnRoZXNp
emVTdHJ1Y3RBY2Nlc3NvcnMuY3JlYXRlVHlwZVJlZik6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVGVzdC5odG1sOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Rlc3QuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpzLgorICAgICAgICAoVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUpOgorICAgICAgICAoVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1
cmUucHJvdG90eXBlLmdldCB0eXBlKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29sdXRpb25G
YWlsdXJlLnByb3RvdHlwZS5nZXQgcmVhc29uKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVHlwZVJlZi5qczoKKyAgICAgICAgKFR5cGVSZWYud3JhcCk6CisgICAgICAg
IChUeXBlUmVmLnByb3RvdHlwZS5yZXNvbHZlKToKKyAgICAgICAgKFR5cGVSZWYucHJvdG90eXBl
LnRvU3RyaW5nKToKKyAgICAgICAgKFR5cGVSZWYpOgorICAgICAgICAoVHlwZVJlZi5pbnN0YW50
aWF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmlj
YXRpb25Db250ZXh0LmpzOgorICAgICAgICAoVW5pZmljYXRpb25Db250ZXh0LnByb3RvdHlwZS52
ZXJpZnkpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ZlY3RvclR5cGUuanM6
CisgICAgICAgIChWZWN0b3JUeXBlKToKKyAgICAgICAgKFZlY3RvclR5cGUucHJvdG90eXBlLmdl
dCBlbGVtZW50VHlwZSk6CisgICAgICAgIChWZWN0b3JUeXBlLnByb3RvdHlwZS5nZXQgbnVtRWxl
bWVudHMpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUuZ2V0IG51bUVsZW1lbnRzVmFs
dWUpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanM6CisgICAgICAgIChWaXNpdG9yLnBy
b3RvdHlwZS52aXNpdFR5cGVSZWYpOgorICAgICAgICAoVmlzaXRvci5wcm90b3R5cGUudmlzaXRO
YXRpdmVUeXBlKToKKyAgICAgICAgKFZpc2l0b3IucHJvdG90eXBlLnZpc2l0VmVjdG9yVHlwZSk6
CisgICAgICAgIChWaXNpdG9yLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5cGUpOgorICAgICAgICAo
VmlzaXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRtbDoK
KwogMjAxOC0wOC0yMSAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3Jn
PgogCiAgICAgICAgIFJvbGwgb3V0IHIyMzUxMzkgYW5kIHIyMzUxNDYKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0FsbC5qcwppbmRleCA4MTUyNTI3M2FlNjVhMTQ4NjU5NjRhMTNkYTQ1Y2U5NGVm
MTA2ODRhLi5hYzk0NjcxZjA2ZGMxMDY2NTZmYmY2ZmEyNGIwZGY3YzAzMTE3NTYzIDEwMDY0NAot
LS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9BbGwuanMKKysrIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzCkBAIC00OSw4ICs0OSw2IEBAIGxvYWQoIkJyZWFr
LmpzIik7CiBsb2FkKCJCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzIik7CiBsb2FkKCJCdWls
dGluVmVjdG9yR2V0dGVyLmpzIik7CiBsb2FkKCJCdWlsdGluVmVjdG9yU2V0dGVyLmpzIik7Ci1s
b2FkKCJCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuanMiKTsKLWxvYWQoIkJ1aWx0aW5WZWN0b3JJ
bmRleFNldHRlci5qcyIpOwogbG9hZCgiQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuanMi
KTsKIGxvYWQoIkNhbGxFeHByZXNzaW9uLmpzIik7CiBsb2FkKCJDYWxsRnVuY3Rpb24uanMiKTsK
QEAgLTYwLDYgKzU4LDcgQEAgbG9hZCgiQ2hlY2tMb29wcy5qcyIpOwogbG9hZCgiQ2hlY2tSZWN1
cnNpb24uanMiKTsKIGxvYWQoIkNoZWNrUmVjdXJzaXZlVHlwZXMuanMiKTsKIGxvYWQoIkNoZWNr
UmV0dXJucy5qcyIpOworbG9hZCgiQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMiKTsKIGxvYWQo
IkNoZWNrVW5yZWFjaGFibGVDb2RlLmpzIik7CiBsb2FkKCJDaGVja1dyYXBwZWQuanMiKTsKIGxv
YWQoIkNoZWNrZXIuanMiKTsKQEAgLTExMiw2ICsxMTEsNyBAQCBsb2FkKCJMb2dpY2FsTm90Lmpz
Iik7CiBsb2FkKCJMb29wQ2hlY2tlci5qcyIpOwogbG9hZCgiTWFrZUFycmF5UmVmRXhwcmVzc2lv
bi5qcyIpOwogbG9hZCgiTWFrZVB0ckV4cHJlc3Npb24uanMiKTsKK2xvYWQoIk1hdHJpeFR5cGUu
anMiKTsKIGxvYWQoIk5hbWVDb250ZXh0LmpzIik7CiBsb2FkKCJOYW1lRmluZGVyLmpzIik7CiBs
b2FkKCJOYW1lUmVzb2x2ZXIuanMiKTsKQEAgLTExOSw5ICsxMTksOCBAQCBsb2FkKCJOYXRpdmVG
dW5jLmpzIik7CiBsb2FkKCJOb3JtYWxVc2VQcm9wZXJ0eVJlc29sdmVyLmpzIik7CiBsb2FkKCJO
dWxsTGl0ZXJhbC5qcyIpOwogbG9hZCgiTnVsbFR5cGUuanMiKTsKLWxvYWQoIk9wZXJhdG9yQW5k
ZXJJbmRleC5qcyIpOworbG9hZCgiT3BlcmF0b3JBbmRlckluZGV4ZXIuanMiKTsKIGxvYWQoIk9w
ZXJhdG9yQXJyYXlSZWZMZW5ndGguanMiKTsKLWxvYWQoIk9wZXJhdG9yQm9vbC5qcyIpOwogbG9h
ZCgiT3JpZ2luS2luZC5qcyIpOwogbG9hZCgiT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qcyIp
OwogbG9hZCgiUGFyc2UuanMiKTsKQEAgLTEzMyw3ICsxMzIsNiBAQCBsb2FkKCJQdHJUeXBlLmpz
Iik7CiBsb2FkKCJSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzIik7CiBsb2FkKCJSZWN1cnNp
b25DaGVja2VyLmpzIik7CiBsb2FkKCJSZWN1cnNpdmVUeXBlQ2hlY2tlci5qcyIpOwotbG9hZCgi
UmVtb3ZlVHlwZUFyZ3VtZW50cy5qcyIpOwogbG9hZCgiUmVzb2x2ZU5hbWVzLmpzIik7CiBsb2Fk
KCJSZXNvbHZlT3ZlcmxvYWRJbXBsLmpzIik7CiBsb2FkKCJSZXNvbHZlUHJvcGVydGllcy5qcyIp
OwpAQCAtMTUwLDEzICsxNDgsMTMgQEAgbG9hZCgiU3dpdGNoU3RhdGVtZW50LmpzIik7CiBsb2Fk
KCJTeW50aGVzaXplQXJyYXlPcGVyYXRvckxlbmd0aC5qcyIpOwogbG9hZCgiU3ludGhlc2l6ZUVu
dW1GdW5jdGlvbnMuanMiKTsKIGxvYWQoIlN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMuanMiKTsK
LWxvYWQoIlN5bnRoZXNpemVPcGVyYXRvckJvb2wuanMiKTsKIGxvYWQoIlN5bnRoZXNpemVDb3B5
Q29uc3RydWN0b3JPcGVyYXRvci5qcyIpOwogbG9hZCgiU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1
Y3Rvck9wZXJhdG9yLmpzIik7CiBsb2FkKCJUcmFwU3RhdGVtZW50LmpzIik7CiBsb2FkKCJUeXBl
RGVmLmpzIik7CiBsb2FkKCJUeXBlRGVmUmVzb2x2ZXIuanMiKTsKIGxvYWQoIlR5cGVSZWYuanMi
KTsKK2xvYWQoIlR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIik7CiBsb2FkKCJUeXBl
ZFZhbHVlLmpzIik7CiBsb2FkKCJVaW50TGl0ZXJhbC5qcyIpOwogbG9hZCgiVWludExpdGVyYWxU
eXBlLmpzIik7CkBAIC0xNzAsNCArMTY4LDQgQEAgbG9hZCgiV1N5bnRheEVycm9yLmpzIik7CiBs
b2FkKCJXVHJhcEVycm9yLmpzIik7CiBsb2FkKCJXVHlwZUVycm9yLmpzIik7CiBsb2FkKCJXaGls
ZUxvb3AuanMiKTsKLWxvYWQoIldyYXBDaGVja2VyLmpzIik7ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQorbG9hZCgiV3JhcENoZWNrZXIuanMiKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuanMgYi9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzCmluZGV4
IDI3MDRiNDNhMDZjMmZhZWQ5ZGZhNzNkZWFkMzNiYjBjNWM5NTU5ODUuLjc0OGRmMGM5NGMzMmQw
N2JiYzAwYTVlNzVjYTlhNzdlMzY2N2E4ZTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuanMKKysrIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcwpAQCAtODEs
NCArODEsNCBAQCBjbGFzcyBCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzIHsKICAgICAgICAgfTsK
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwogICAgIH0KLX0KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yR2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvQnVpbHRpblZlY3RvckdldHRlci5qcwppbmRleCBjMjUzZjc2MzBlZTlkYzQ3Y2Qx
ZTE5NDViYzg3ZjQyZWFhM2NjYjI4Li5lMDRjM2NkNjg3ODY1YzdlMTkxNTQxNjBmYTRhM2QyMDIw
Mzc4YjJhIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGlu
VmVjdG9yR2V0dGVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0
aW5WZWN0b3JHZXR0ZXIuanMKQEAgLTQzLDIzICs0Myw2IEBAIGNsYXNzIEJ1aWx0aW5WZWN0b3JH
ZXR0ZXIgewogICAgICAgICByZXR1cm4gYG5hdGl2ZSAke3RoaXMuYmFzZVR5cGVOYW1lfSBvcGVy
YXRvci4ke3RoaXMuZWxlbWVudE5hbWV9KCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLnNpemV9
KWA7CiAgICAgfQogCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewotICAgICAgICBpZiAo
IXRoaXMuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zID0gW107Ci0K
LSAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRzID0gWyAieCIsICJ5IiwgInoiLCAidyIgXTsKLQot
ICAgICAgICAgICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgVmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0g
ICAgICAgICAgICAgICAgZm9yIChsZXQgc2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpIHsKLSAg
ICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaXplOyBpKyspCi0gICAgICAg
ICAgICAgICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMucHVzaChuZXcgQnVpbHRpblZlY3Rvckdl
dHRlcih0eXBlTmFtZSwgc2l6ZSwgZWxlbWVudHNbaV0sIGkpKTsKLSAgICAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIHRoaXMuX2Z1bmN0aW9u
czsKLSAgICB9Ci0KICAgICBpbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCiAgICAgewog
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2ZWNdLCBub2RlKSA9PiB7CkBAIC02Nyw0
ICs1MCw0IEBAIGNsYXNzIEJ1aWx0aW5WZWN0b3JHZXR0ZXIgewogICAgICAgICB9OwogICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7CiAgICAgfQotfQpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL0J1aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL0J1aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggZjcyNjJmYzljZTI3MzBmMDg3ZDYxNDU1ODc2YjMzNWZlMDI0YWMzYS4uMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuanMKKysrIC9kZXYvbnVsbApA
QCAtMSw2NiArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJl
IG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgot
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0g
Ki8KLSJ1c2Ugc3RyaWN0IjsKLQotY2xhc3MgQnVpbHRpblZlY3RvckluZGV4R2V0dGVyIHsKLSAg
ICBjb25zdHJ1Y3RvcihiYXNlVHlwZU5hbWUsIHNpemUpCi0gICAgewotICAgICAgICB0aGlzLl9i
YXNlVHlwZU5hbWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAgICAgIHRoaXMuX3NpemUgPSBzaXplOwot
ICAgIH0KLQotICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5h
bWU7IH0KLSAgICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRoaXMuX3NpemU7IH0KLQotICAgIHRvU3Ry
aW5nKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlwZU5hbWV9
IG9wZXJhdG9yW10oJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuc2l6ZX0sdWludClgOwotICAg
IH0KLQotICAgIHN0YXRpYyBmdW5jdGlvbnMoKQotICAgIHsKLSAgICAgICAgaWYgKCF0aGlzLl9h
bGxJbmRleEdldHRlcnMpIHsKLSAgICAgICAgICAgIHRoaXMuX2FsbEluZGV4R2V0dGVycyA9IFtd
OwotCi0gICAgICAgICAgICBmb3IgKGxldCB0eXBlTmFtZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMp
IHsKLSAgICAgICAgICAgICAgICBmb3IgKGxldCBzaXplIG9mIFZlY3RvckVsZW1lbnRTaXplcykK
LSAgICAgICAgICAgICAgICAgICAgdGhpcy5fYWxsSW5kZXhHZXR0ZXJzLnB1c2gobmV3IEJ1aWx0
aW5WZWN0b3JJbmRleEdldHRlcih0eXBlTmFtZSwgc2l6ZSkpOwotICAgICAgICAgICAgfQotICAg
ICAgICB9Ci0gICAgICAgIHJldHVybiB0aGlzLl9hbGxJbmRleEdldHRlcnM7Ci0gICAgfQotCi0g
ICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQotICAgIHsKLSAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChbdmVjLCBpbmRleF0sIG5vZGUpID0+IHsKLSAgICAgICAgICAgIGNv
bnN0IGluZGV4VmFsdWUgPSBpbmRleC5sb2FkVmFsdWUoKTsKLSAgICAgICAgICAgIGlmIChpbmRl
eFZhbHVlID49IDAgJiYgaW5kZXhWYWx1ZSA8IHRoaXMuc2l6ZSkKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gRVB0ci5ib3godmVjLmdldChpbmRleC5sb2FkVmFsdWUoKSkpOwotICAgICAgICAgICAg
ZWxzZQotICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtpbmRleFZhbHVlfSBvdXQg
b2YgYm91bmRzIGZvciB2ZWN0b3Igb2Ygc2l6ZSAke3RoaXMuc2l6ZX1gKTsKLSAgICAgICAgfTsK
LSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwotICAgIH0KLX0KXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9CdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuanMKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDJmZTVkNjc4YWI3MDVmZTQwYjdkNjhlOTY5M2RkOGFmYzRhZGVlOTQuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsNzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotICovCi0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIEJ1aWx0aW5WZWN0b3JJbmRleFNldHRlciB7
Ci0gICAgY29uc3RydWN0b3IoYmFzZVR5cGVOYW1lLCBzaXplKQotICAgIHsKLSAgICAgICAgdGhp
cy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1lOwotICAgICAgICB0aGlzLl9zaXplID0gc2l6
ZTsKLSAgICB9Ci0KLSAgICBnZXQgYmFzZVR5cGVOYW1lKCkgeyByZXR1cm4gdGhpcy5fYmFzZVR5
cGVOYW1lOyB9Ci0gICAgZ2V0IHNpemUoKSB7IHJldHVybiB0aGlzLl9zaXplOyB9Ci0gICAgZ2V0
IGVsZW1lbnROYW1lKCkgeyByZXR1cm4gdGhpcy5fZWxlbWVudE5hbWU7IH0KLSAgICBnZXQgaW5k
ZXgoKSB7IHJldHVybiB0aGlzLl9pbmRleDsgfQotCi0gICAgdG9TdHJpbmcoKQotICAgIHsKLSAg
ICAgICAgcmV0dXJuIGBuYXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuc2l6ZX0gb3Bl
cmF0b3JbXT0oJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuc2l6ZX0sdWludCwke3RoaXMuYmFz
ZVR5cGVOYW1lfSlgOwotICAgIH0KLQotICAgIHN0YXRpYyBmdW5jdGlvbnMoKQotICAgIHsKLSAg
ICAgICAgaWYgKCF0aGlzLl9mdW5jdGlvbnMpIHsKLSAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9u
cyA9IFtdOwotCi0gICAgICAgICAgICBmb3IgKGxldCB0eXBlTmFtZSBvZiBWZWN0b3JFbGVtZW50
VHlwZXMpIHsKLSAgICAgICAgICAgICAgICBmb3IgKGxldCBzaXplIG9mIFZlY3RvckVsZW1lbnRT
aXplcykKLSAgICAgICAgICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zLnB1c2gobmV3IEJ1aWx0
aW5WZWN0b3JJbmRleFNldHRlcih0eXBlTmFtZSwgc2l6ZSkpOwotICAgICAgICAgICAgfQotICAg
ICAgICB9Ci0gICAgICAgIHJldHVybiB0aGlzLl9mdW5jdGlvbnM7Ci0gICAgfQotCi0gICAgaW5z
dGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQotICAgIHsKLSAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbYmFzZSwgaW5kZXgsIHZhbHVlXSwgbm9kZSkgPT4gewotICAgICAgICAgICAg
Y29uc3QgaW5kZXhWYWx1ZSA9IGluZGV4LmxvYWRWYWx1ZSgpOwotICAgICAgICAgICAgaWYgKGlu
ZGV4VmFsdWUgPj0gMCAmJiBpbmRleFZhbHVlIDwgdGhpcy5zaXplKSB7Ci0gICAgICAgICAgICAg
ICAgbGV0IHJlc3VsdCA9IG5ldyBFUHRyKG5ldyBFQnVmZmVyKHRoaXMuc2l6ZSksIDApOwotICAg
ICAgICAgICAgICAgIHJlc3VsdC5jb3B5RnJvbShiYXNlLCB0aGlzLnNpemUpOwotICAgICAgICAg
ICAgICAgIHJlc3VsdC5wbHVzKGluZGV4VmFsdWUpLmNvcHlGcm9tKHZhbHVlLCAxKTsKLSAgICAg
ICAgICAgICAgICByZXR1cm4gcmVzdWx0OwotICAgICAgICAgICAgfSBlbHNlCi0gICAgICAgICAg
ICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2luZGV4VmFsdWV9IG91dCBvZiBib3VuZHMgZm9yIHZl
Y3RvciBvZiBzaXplICR7dGhpcy5zaXplfWApOwotICAgICAgICB9OwotICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7Ci0gICAgfQotfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9m
IGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5W
ZWN0b3JTZXR0ZXIuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVj
dG9yU2V0dGVyLmpzCmluZGV4IGEyZDc2M2I3NTA5OTk3YjI0MTBjMjRiODAxMzE0YzM0YTNjNDg3
YTAuLjY1Nzc4NjZkNjBlNzI4NGQwMGEyMjBhNTI2MzgzNTlmNmE5YTg4NGUgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JTZXR0ZXIuanMKKysr
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvclNldHRlci5qcwpA
QCAtNDMsMjMgKzQzLDYgQEAgY2xhc3MgQnVpbHRpblZlY3RvclNldHRlciB7CiAgICAgICAgIHJl
dHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLnNpemV9IG9wZXJhdG9yLiR7
dGhpcy5lbGVtZW50TmFtZX09KCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLnNpemV9LCR7dGhp
cy5iYXNlVHlwZU5hbWV9KWA7CiAgICAgfQogCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0gICAg
ewotICAgICAgICBpZiAoIXRoaXMuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgdGhpcy5fZnVu
Y3Rpb25zID0gW107Ci0gICAgICAgIAotICAgICAgICAgICAgY29uc3QgZWxlbWVudHMgPSBbICJ4
IiwgInkiLCAieiIsICJ3IiBdOwotCi0gICAgICAgICAgICBmb3IgKGxldCB0eXBlTmFtZSBvZiBW
ZWN0b3JFbGVtZW50VHlwZXMpIHsKLSAgICAgICAgICAgICAgICBmb3IgKGxldCBzaXplIG9mIFZl
Y3RvckVsZW1lbnRTaXplcykgewotICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsg
aSA8IHNpemU7IGkrKykKLSAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucy5w
dXNoKG5ldyBCdWlsdGluVmVjdG9yU2V0dGVyKHR5cGVOYW1lLCBzaXplLCBlbGVtZW50c1tpXSwg
aSkpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAg
ICByZXR1cm4gdGhpcy5fZnVuY3Rpb25zOwotICAgIH0KLQogICAgIGluc3RhbnRpYXRlSW1wbGVt
ZW50YXRpb24oZnVuYykKICAgICB7CiAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2Jh
c2UsIHZhbHVlXSwgbm9kZSkgPT4gewpAQCAtNzAsNCArNTMsNCBAQCBjbGFzcyBCdWlsdGluVmVj
dG9yU2V0dGVyIHsKICAgICAgICAgfTsKICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEg
PSB0aGlzOwogICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCit9CmRpZmYgLS1n
aXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NhbGxFeHByZXNzaW9uLmpzCmluZGV4IGIyNTM5
OGYwYjFiNmVhZGUxYjc5YWM5MGU2YTc2MjUyNWY4MTliZDcuLjNiMTU0NTU5OTJlNjRlMjY3N2Jh
MGIwM2FiNjU2OGVmNDNkNWQ4NjUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL0NhbGxFeHByZXNzaW9uLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL0NhbGxFeHByZXNzaW9uLmpzCkBAIC02NCw3ICs2NCw2IEBAIGNsYXNzIENhbGxFeHByZXNz
aW9uIGV4dGVuZHMgRXhwcmVzc2lvbiB7CiAgICAgICAgICAgICAgICAgb3ZlcmxvYWQuZnVuYyA9
IGZ1bmM7CiAgICAgICAgIH0KIAotCiAgICAgICAgIGlmICghb3ZlcmxvYWQuZnVuYykgewogICAg
ICAgICAgICAgZmFpbHVyZXMucHVzaCguLi5vdmVybG9hZC5mYWlsdXJlcyk7CiAgICAgICAgICAg
ICBsZXQgbWVzc2FnZSA9ICJEaWQgbm90IGZpbmQgZnVuY3Rpb24gbmFtZWQgIiArIHRoaXMubmFt
ZSArICIgZm9yIGNhbGwgd2l0aCAiOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9DaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZjY5MTQy
YTM1MTdkMjk0OTAwNTMwYzBjZjA2NmM5YmZkMjI3N2FmCi0tLSAvZGV2L251bGwKKysrIGIvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMKQEAg
LTAsMCArMSw1MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAq
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAq
LworInVzZSBzdHJpY3QiOworCitmdW5jdGlvbiBjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9n
cmFtKQoreworICAgIGNsYXNzIFR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlciBleHRlbmRzIFZpc2l0
b3IgeworICAgICAgICB2aXNpdFR5cGVSZWYobm9kZSkKKyAgICAgICAgeworICAgICAgICAgICAg
aWYgKChub2RlLm5hbWUgPT0gInZlY3RvciIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAh
PSAyKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIm1hdHJpeCIgJiYgbm9kZS50
eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAzKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUg
PT0gIlRleHR1cmUxRCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAg
ICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlJXVGV4dHVyZTFEIiAmJiBub2RlLnR5cGVBcmd1
bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiVGV4
dHVyZTFEQXJyYXkiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAg
ICAgICAgICB8fCAobm9kZS5uYW1lID09ICJSV1RleHR1cmUxREFycmF5IiAmJiBub2RlLnR5cGVB
cmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAi
VGV4dHVyZTJEIiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAg
ICAgICAgfHwgKG5vZGUubmFtZSA9PSAiUldUZXh0dXJlMkQiICYmIG5vZGUudHlwZUFyZ3VtZW50
cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJl
MkRBcnJheSIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAg
ICAgIHx8IChub2RlLm5hbWUgPT0gIlJXVGV4dHVyZTJEQXJyYXkiICYmIG5vZGUudHlwZUFyZ3Vt
ZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0
dXJlM0QiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAg
ICB8fCAobm9kZS5uYW1lID09ICJSV1RleHR1cmUzRCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxl
bmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlRleHR1cmVDdWJl
IiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpKQorICAgICAgICAgICAgICAgIHRo
cm93IG5ldyBFcnJvcihgQnVpbHRpbiB0eXBlICR7bm9kZS5uYW1lfSBzaG91bGQgYWx3YXlzIGhh
dmUgdHlwZSBhcmd1bWVudHMuYCk7CisgICAgICAgIH0KKyAgICB9CisgICAgcHJvZ3JhbS52aXNp
dChuZXcgVHlwZVdpdGhBcmd1bWVudHNDaGVja2VyKCkpOworfQorCmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DaGVja2VyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvQ2hlY2tlci5qcwppbmRleCAxYTE0Yzg2NmFjZWQ0MTEyYjE4MGY2OTE1NmMw
NmQyYjY2NGQ4N2UyLi4wMDE4OGQ3MGViYjFhNmJjMzQ1MGY0NjM2MmQxZjk2YWUzODdjYmEyIDEw
MDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DaGVja2VyLmpzCisrKyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrZXIuanMKQEAgLTQxLDggKzQxLDEz
IEBAIGNsYXNzIENoZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgICAgIHN0YXRlbWVu
dC52aXNpdCh0aGlzKTsKICAgICAgICAgfQogICAgICAgICAKLSAgICAgICAgZm9yIChsZXQgdHlw
ZSBvZiBub2RlLnR5cGVzLnZhbHVlcygpKQotICAgICAgICAgICAgZG9TdGF0ZW1lbnQodHlwZSk7
CisgICAgICAgIGZvciAobGV0IHR5cGUgb2Ygbm9kZS50eXBlcy52YWx1ZXMoKSkgeworICAgICAg
ICAgICAgaWYgKHR5cGUgaW5zdGFuY2VvZiBBcnJheSkgeworICAgICAgICAgICAgICAgIGZvciAo
bGV0IGNvbnN0aXR1ZW50VHlwZSBvZiB0eXBlKQorICAgICAgICAgICAgICAgICAgICBkb1N0YXRl
bWVudChjb25zdGl0dWVudFR5cGUpOworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAg
ICAgZG9TdGF0ZW1lbnQodHlwZSk7CisgICAgICAgIH0KICAgICAgICAgZm9yIChsZXQgZnVuY3Mg
b2Ygbm9kZS5mdW5jdGlvbnMudmFsdWVzKCkpIHsKICAgICAgICAgICAgIGZvciAobGV0IGZ1bmMg
b2YgZnVuY3MpIHsKICAgICAgICAgICAgICAgICB0aGlzLnZpc2l0RnVuYyhmdW5jKTsKQEAgLTI0
Nyw2ICsyNTIsMTAgQEAgY2xhc3MgQ2hlY2tlciBleHRlbmRzIFZpc2l0b3IgewogICAgIHsKICAg
ICAgICAgaWYgKCFub2RlLnR5cGUpCiAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlR5cGUg
cmVmZXJlbmNlIHdpdGhvdXQgYSB0eXBlIGluIGNoZWNrZXI6ICIgKyBub2RlICsgIiBhdCAiICsg
bm9kZS5vcmlnaW4pOworICAgICAgICAvLyBBbGwgdGhlIHN0cnVjdHMgd2lsbCBiZSB2aXNpdGVk
IGJ5IHZpc2l0UHJvZ3JhbSgpIGl0ZXJhdGluZyB0aHJvdWdoIGVhY2ggdG9wLWxldmVsIHR5cGUu
CisgICAgICAgIC8vIFdlIGRvbid0IHdhbnQgdG8gcmVjdXJzZSBoZXJlIGJlY2F1c2UgdGhlIGNv
bnRlbnRzIG9mIHN0cnVjdHMgY2FuIHJlZmVyIHRvIHRoZW1zZWx2ZXMgKGUuZy4gYSBsaW5rZWQg
bGlzdCksCisgICAgICAgIC8vIGFuZCB0aGlzIHdvdWxkIGNhbiBhbiBpbmZpbml0ZSBsb29wLgor
ICAgICAgICAvLyBUeXBlZGVmcyBjYW4ndCByZWZlciB0byB0aGVtc2VsdmVzIGJlY2F1c2Ugd2Ug
Y2hlY2sgdGhhdCBpbiBUeXBlRGVmUmVzb2x2ZXIuCiAgICAgICAgIGlmICghKG5vZGUudHlwZSBp
bnN0YW5jZW9mIFN0cnVjdFR5cGUpKQogICAgICAgICAgICAgbm9kZS50eXBlLnZpc2l0KHRoaXMp
OwogICAgIH0KQEAgLTI1NCw2ICsyNjMsNyBAQCBjbGFzcyBDaGVja2VyIGV4dGVuZHMgVmlzaXRv
ciB7CiAgICAgdmlzaXRWZWN0b3JUeXBlKG5vZGUpCiAgICAgewogICAgICAgICBub2RlLmVsZW1l
bnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bUVsZW1lbnRzLnZpc2l0KHRoaXMp
OwogCiAgICAgICAgIGxldCBpc0tub3duQWxsb3dlZFZlY3RvckVsZW1lbnRUeXBlID0gZmFsc2U7
CiAgICAgICAgIGZvciAobGV0IHZlY3RvckVsZW1lbnRUeXBlTmFtZSBvZiBWZWN0b3JFbGVtZW50
VHlwZXMpIHsKQEAgLTI2OCw2ICsyNzgsMzMgQEAgY2xhc3MgQ2hlY2tlciBleHRlbmRzIFZpc2l0
b3IgewogCiAgICAgICAgIGlmICghaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVtZW50VHlwZSkKICAg
ICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKGAke25vZGUuZWxlbWVudFR5cGV9IGlzIG5v
dCBhIHBlcm1pdHRlZCB2ZWN0b3IgZWxlbWVudCB0eXBlLmApOworICAgICAgICBpZiAobm9kZS5u
dW1FbGVtZW50c1ZhbHVlICE9IDIgJiYgbm9kZS5udW1FbGVtZW50c1ZhbHVlICE9IDMgJiYgbm9k
ZS5udW1FbGVtZW50c1ZhbHVlICE9IDQpCisgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJv
cihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUubnVtRWxlbWVudHNWYWx1ZX0gaXMgbm90IDIs
IDMsIG9yIDQuYCk7CisgICAgfQorCisgICAgdmlzaXRNYXRyaXhUeXBlKG5vZGUpCisgICAgewor
ICAgICAgICBub2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bVJv
d3MudmlzaXQodGhpcyk7CisgICAgICAgIG5vZGUubnVtQ29sdW1ucy52aXNpdCh0aGlzKTsKKwor
ICAgICAgICBsZXQgaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVtZW50VHlwZSA9IGZhbHNlOworICAg
ICAgICBmb3IgKGxldCBlbGVtZW50VHlwZU5hbWUgb2YgWyJoYWxmIiwgImZsb2F0Il0pIHsKKyAg
ICAgICAgICAgIGNvbnN0IGVsZW1lbnRUeXBlID0gdGhpcy5fcHJvZ3JhbS5nbG9iYWxOYW1lQ29u
dGV4dC5nZXQoVHlwZSwgZWxlbWVudFR5cGVOYW1lKTsKKyAgICAgICAgICAgIGlmICghZWxlbWVu
dFR5cGUpCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7ZWxlbWVudFR5
cGVOYW1lfSBpcyBub3QgYSBrbm93biBuYXRpdmUgdHlwZSBpbiB0aGUgc3RhbmRhcmQgbGlicmFy
eSBvciBpbnRyaW5zaWNzLmApOworICAgICAgICAgICAgaWYgKGVsZW1lbnRUeXBlLmVxdWFscyhu
b2RlLmVsZW1lbnRUeXBlKSkgeworICAgICAgICAgICAgICAgIGlzS25vd25BbGxvd2VkVmVjdG9y
RWxlbWVudFR5cGUgPSB0cnVlOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAg
fQorICAgICAgICB9CisKKyAgICAgICAgaWYgKCFpc0tub3duQWxsb3dlZFZlY3RvckVsZW1lbnRU
eXBlKQorICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7bm9kZS5lbGVtZW50VHlw
ZX0gaXMgbm90IGEgcGVybWl0dGVkIHZlY3RvciBlbGVtZW50IHR5cGUuYCk7CisgICAgICAgIGlm
IChub2RlLm51bVJvd3NWYWx1ZSAhPSAyICYmIG5vZGUubnVtUm93c1ZhbHVlICE9IDMgJiYgbm9k
ZS5udW1Sb3dzVmFsdWUgIT0gNCkKKyAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKGAk
e25vZGUudG9TdHJpbmcoKX06ICR7bm9kZS5udW1Sb3dzVmFsdWV9IGlzIG5vdCAyLCAzLCBvciA0
LmApOworICAgICAgICBpZiAobm9kZS5udW1Db2x1bW5zVmFsdWUgIT0gMiAmJiBub2RlLm51bUNv
bHVtbnNWYWx1ZSAhPSAzICYmIG5vZGUubnVtQ29sdW1uc1ZhbHVlICE9IDQpCisgICAgICAgICAg
ICB0aHJvdyBuZXcgV1R5cGVFcnJvcihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUubnVtQ29s
dW1uc1ZhbHVlfSBpcyBub3QgMiwgMywgb3IgNC5gKTsKICAgICB9CiAgICAgCiAgICAgdmlzaXRB
cnJheVR5cGUobm9kZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKaW5kZXggMTk3MGY4ZWQ5
MzJjZDM1MzBhNDhkYzMxYWY4YzljNDI0MGRkZThkMC4uZTBlMTYxZmYxMGNjZDNjMDk5MmI5YTky
NjQ5ZjRlM2EwMGJhMTExNyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKQEAgLTc0LDUg
Kzc0LDE3IEBAIGNsYXNzIEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyIGV4dGVuZHMgVmlz
aXRvciB7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgfQogICAgIH0KKworICAgIHZpc2l0TWF0
cml4VHlwZShub2RlKQorICAgIHsKKyAgICAgICAgY29uc3QgZmllbGROYW1lcyA9IFsgInJvdzAi
LCAicm93MSIsICJyb3cyIiwgInJvdzMiIF07CisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwg
bm9kZS5udW1Sb3dzVmFsdWU7IGkrKykgeworICAgICAgICAgICAgdGhpcy5fcmVzdWx0LnB1c2go
eworICAgICAgICAgICAgICAgIG5hbWU6IHRoaXMuX25hbWUuam9pbigiLiIpICsgIi4iICsgZmll
bGROYW1lc1tpXSwKKyAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMuX29mZnNldCArIGkgKiBu
b2RlLmVsZW1lbnRUeXBlLnNpemUgKiBub2RlLm51bUNvbHVtbnNWYWx1ZSwKKyAgICAgICAgICAg
ICAgICB0eXBlOiBub2RlLmVsZW1lbnRUeXBlLm5hbWUgKyBub2RlLm51bUNvbHVtbnNWYWx1ZS50
b1N0cmluZygpCisgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorICAgIH0KIH0KIApkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJUeXBlc0ZvckNhbGwuanMg
Yi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qcwppbmRl
eCA1ZjMyZWQxYzQ5MGE3ZGY4OTQxZTkxOWMxMzBjZjY1ZWFhOGI2YTRkLi5iY2ZlYjk4NmNhZmY0
OWYwMjg3YTgzNjc4YmYxMTU2Mjg0N2YwMzg5IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qcwpAQCAtMzYsMTIgKzM2LDggQEAgZnVu
Y3Rpb24gaW5mZXJUeXBlc0ZvckNhbGwoZnVuYywgYXJndW1lbnRUeXBlcywgcmV0dXJuVHlwZSkK
ICAgICAgICAgaWYgKCFhcmd1bWVudFR5cGVzW2ldLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwg
ZnVuYy5wYXJhbWV0ZXJzW2ldLnR5cGUpKQogICAgICAgICAgICAgcmV0dXJuIHtmYWlsdXJlOiBu
ZXcgT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZShmdW5jLCAiQXJndW1lbnQgIyIgKyAoaSArIDEp
ICsgIiAiICsgKGZ1bmMucGFyYW1ldGVyc1tpXS5uYW1lID8gImZvciBwYXJhbWV0ZXIgIiArIGZ1
bmMucGFyYW1ldGVyc1tpXS5uYW1lICsgIiAiIDogIiIpICsgImRvZXMgbm90IG1hdGNoIChwYXNz
ZWQgIiArIGFyZ3VtZW50VHlwZXNbaV0gKyAiLCByZXF1aXJlICIgKyBmdW5jLnBhcmFtZXRlcnNb
aV0udHlwZSArICIpIil9OwogICAgIH0KLSAgICBpZiAocmV0dXJuVHlwZSAmJiAhcmV0dXJuVHlw
ZS51bmlmeSh1bmlmaWNhdGlvbkNvbnRleHQsIGZ1bmMucmV0dXJuVHlwZSkpIHsKLSAgICAgICAg
aWYgKGZ1bmMucmV0dXJuVHlwZS50b1N0cmluZygpID09ICJ2ZWN0b3IiKSB7Ci0gICAgICAgICAg
ICByZXR1cm5UeXBlLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgZnVuYy5yZXR1cm5UeXBlKQot
ICAgICAgICB9CisgICAgaWYgKHJldHVyblR5cGUgJiYgIXJldHVyblR5cGUudW5pZnkodW5pZmlj
YXRpb25Db250ZXh0LCBmdW5jLnJldHVyblR5cGUpKQogICAgICAgICByZXR1cm4ge2ZhaWx1cmU6
IG5ldyBPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKGZ1bmMsICJSZXR1cm4gdHlwZSAiICsgZnVu
Yy5yZXR1cm5UeXBlICsgIiBkb2VzIG5vdCBtYXRjaCAiICsgcmV0dXJuVHlwZSl9OwotICAgIH0K
ICAgICBsZXQgdmVyaWZpY2F0aW9uUmVzdWx0ID0gdW5pZmljYXRpb25Db250ZXh0LnZlcmlmeSgp
OwogICAgIGlmICghdmVyaWZpY2F0aW9uUmVzdWx0LnJlc3VsdCkKICAgICAgICAgcmV0dXJuIHtm
YWlsdXJlOiBuZXcgT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZShmdW5jLCB2ZXJpZmljYXRpb25S
ZXN1bHQucmVhc29uKX07CkBAIC00OSwzICs0NSwyMSBAQCBmdW5jdGlvbiBpbmZlclR5cGVzRm9y
Q2FsbChmdW5jLCBhcmd1bWVudFR5cGVzLCByZXR1cm5UeXBlKQogICAgIHJldHVybiB7ZnVuYywg
dW5pZmljYXRpb25Db250ZXh0fTsKIH0KIAorZnVuY3Rpb24gaW5mZXJUeXBlc0ZvclR5cGVBcmd1
bWVudHModHlwZSwgdHlwZUFyZ3VtZW50cykKK3sKKyAgICBpZiAodHlwZUFyZ3VtZW50cy5sZW5n
dGggIT0gdHlwZS50eXBlQXJndW1lbnRzLmxlbmd0aCkKKyAgICAgICAgcmV0dXJuIHtmYWlsdXJl
OiBuZXcgVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUodHlwZSwgIldyb25nIG51bWJlciBv
ZiBhcmd1bWVudHMgKHBhc3NlZCAiICsgdHlwZUFyZ3VtZW50cy5sZW5ndGggKyAiLCByZXF1aXJl
ICIgKyB0eXBlLnR5cGVBcmd1bWVudHMubGVuZ3RoICsgIikiKX07CisgICAgbGV0IHVuaWZpY2F0
aW9uQ29udGV4dCA9IG5ldyBVbmlmaWNhdGlvbkNvbnRleHQoKTsKKworICAgIGZvciAobGV0IGkg
PSAwOyBpIDwgdHlwZUFyZ3VtZW50cy5sZW5ndGg7ICsraSkgeworICAgICAgICBpZiAoIXR5cGVB
cmd1bWVudHNbaV0pCisgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk51bGwgdHlwZSBhcmd1
bWVudCBhdCBpID0gIiArIGkpOworICAgICAgICBpZiAoIXR5cGVBcmd1bWVudHNbaV0udW5pZnko
dW5pZmljYXRpb25Db250ZXh0LCB0eXBlLnR5cGVBcmd1bWVudHNbaV0pKQorICAgICAgICAgICAg
cmV0dXJuIHtmYWlsdXJlOiBuZXcgVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUodHlwZSwg
IkFyZ3VtZW50ICMiICsgKGkgKyAxKSArICIgIiArICh0eXBlLnR5cGVBcmd1bWVudHNbaV0ubmFt
ZSA/ICJmb3IgcGFyYW1ldGVyICIgKyB0eXBlLnR5cGVBcmd1bWVudHNbaV0ubmFtZSArICIgIiA6
ICIiKSArICJkb2VzIG5vdCBtYXRjaCAocGFzc2VkICIgKyB0eXBlQXJndW1lbnRzW2ldICsgIiwg
cmVxdWlyZSAiICsgdHlwZS50eXBlQXJndW1lbnRzW2ldLnR5cGUgKyAiKSIpfTsKKyAgICB9Cisg
ICAgbGV0IHZlcmlmaWNhdGlvblJlc3VsdCA9IHVuaWZpY2F0aW9uQ29udGV4dC52ZXJpZnkoKTsK
KyAgICBpZiAoIXZlcmlmaWNhdGlvblJlc3VsdC5yZXN1bHQpCisgICAgICAgIHJldHVybiB7ZmFp
bHVyZTogbmV3IFR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKHR5cGUsIHZlcmlmaWNhdGlv
blJlc3VsdC5yZWFzb24pfTsKKworICAgIHJldHVybiB7dHlwZSwgdW5pZmljYXRpb25Db250ZXh0
fTsKK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ludHJpbnNp
Y3MuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzCmluZGV4
IDUwZDQwYzBjMGU0N2UxMTJiYzc0Y2NmY2NiNzA0OTQyNzExNmIwZmIuLjRiZTBiMjAzYzUwNWFh
MzY3MGY1OGZjNmMxY2Y0MzllYjM3MzU4NmQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL0ludHJpbnNpY3MuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvSW50cmluc2ljcy5qcwpAQCAtMzMsMTUgKzMzLDcgQEAgY2xhc3MgSW50cmluc2ljcyB7
CiAgICAgICAgIC8vIHRvIGNhdGNoIHRoZSBpbnRyaW5zaWNzIG11c3QgYmUgYmFzZWQgb24gdGhl
IHR5cGUgbmFtZXMgdGhhdCBTdGFuZGFyZExpYnJhcnkuanMgdXNlcy4KICAgICAgICAgLy8gRm9y
IGV4YW1wbGUsIGlmIGEgbmF0aXZlIGZ1bmN0aW9uIGlzIGRlY2xhcmVkIHVzaW5nICJpbnQiIHJh
dGhlciB0aGFuICJpbnQiLCB0aGVuIHdlIG11c3QKICAgICAgICAgLy8gdXNlICJpbnQiIGhlcmUs
IHNpbmNlIHdlIGRvbid0IHlldCBrbm93IHRoYXQgdGhleSBhcmUgdGhlIHNhbWUgdHlwZS4KLSAg
ICAgICAgCi0gICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHR5cGVk
ZWYgdm9pZCIsCi0gICAgICAgICAgICB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0aGlzLnZv
aWQgPSB0eXBlOwotICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDA7Ci0gICAgICAgICAgICAg
ICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9ICgpID0+IHsgfTsKLSAgICAgICAgICAgIH0p
OwotICAgICAgICAKKwogICAgICAgICBmdW5jdGlvbiBpc0JpdHdpc2VFcXVpdmFsZW50KGxlZnQs
IHJpZ2h0KQogICAgICAgICB7CiAgICAgICAgICAgICBsZXQgZG91YmxlQXJyYXkgPSBuZXcgRmxv
YXQ2NEFycmF5KDEpOwpAQCAtNTYsNTggKzQ4LDgzIEBAIGNsYXNzIEludHJpbnNpY3MgewogICAg
ICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIH0KIAorICAgICAgICBmdW5jdGlvbiBjYXN0
KHR5cGVkQXJyYXlDb25zdHJ1Y3RvciwgbnVtYmVyKQorICAgICAgICB7CisgICAgICAgICAgICB2
YXIgYXJyYXkgPSBuZXcgdHlwZWRBcnJheUNvbnN0cnVjdG9yKDEpOworICAgICAgICAgICAgYXJy
YXlbMF0gPSBudW1iZXI7CisgICAgICAgICAgICByZXR1cm4gYXJyYXlbMF07CisgICAgICAgIH0K
KworICAgICAgICBmdW5jdGlvbiBiaXR3aXNlQ2FzdCh0eXBlZEFycmF5Q29uc3RydWN0b3IxLCB0
eXBlZEFycmF5Q29uc3RydWN0b3IyLCB2YWx1ZSkKKyAgICAgICAgeworICAgICAgICAgICAgbGV0
IHR5cGVkQXJyYXkxID0gbmV3IHR5cGVkQXJyYXlDb25zdHJ1Y3RvcjEoMSk7CisgICAgICAgICAg
ICBsZXQgdHlwZWRBcnJheTIgPSBuZXcgdHlwZWRBcnJheUNvbnN0cnVjdG9yMih0eXBlZEFycmF5
MS5idWZmZXIpOworICAgICAgICAgICAgdHlwZWRBcnJheTFbMF0gPSB2YWx1ZTsKKyAgICAgICAg
ICAgIHJldHVybiB0eXBlZEFycmF5MlswXTsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9u
IGNhc3RUb0hhbGYobnVtYmVyKQorICAgICAgICB7CisgICAgICAgICAgICAvLyBGSVhNRTogTWFr
ZSB0aGlzIG1hdGggb2JleSBJRUVFIDc1NC4KKyAgICAgICAgICAgIGlmIChOdW1iZXIuaXNOYU4o
bnVtYmVyKSkKKyAgICAgICAgICAgICAgIHJldHVybiBudW1iZXIKKyAgICAgICAgICAgIGlmIChu
dW1iZXIgPiA2NTUwNCkKKyAgICAgICAgICAgICAgICByZXR1cm4gTnVtYmVyLlBPU0lUSVZFX0lO
RklOSVRZOworICAgICAgICAgICAgaWYgKG51bWJlciA8IC02NTUwNCkKKyAgICAgICAgICAgICAg
ICByZXR1cm4gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZOworICAgICAgICAgICAgaWYgKG51bWJl
ciA+IDAgJiYgbnVtYmVyIDwgTWF0aC5wb3coMiwgLTI0KSkKKyAgICAgICAgICAgICAgICByZXR1
cm4gMDsKKyAgICAgICAgICAgIGlmIChudW1iZXIgPCAwICYmIG51bWJlciA+IC1NYXRoLnBvdygy
LCAtMjQpKQorICAgICAgICAgICAgICAgIHJldHVybiAtMDsKKyAgICAgICAgICAgIGxldCBkb3Vi
bGVBcnJheSA9IG5ldyBGbG9hdDY0QXJyYXkoMSk7CisgICAgICAgICAgICBsZXQgdWludEFycmF5
ID0gbmV3IFVpbnQ4QXJyYXkoZG91YmxlQXJyYXkuYnVmZmVyKTsKKyAgICAgICAgICAgIGRvdWJs
ZUFycmF5WzBdID0gbnVtYmVyOworICAgICAgICAgICAgbGV0IHNpZ24gPSB1aW50QXJyYXlbN10g
JiAweDgwOworICAgICAgICAgICAgbGV0IGV4cG9uZW50ID0gKCh1aW50QXJyYXlbN10gJiAweDdm
KSA8PCA0KSB8ICgodWludEFycmF5WzZdICYgMHhmMCkgPj4+IDQpOworICAgICAgICAgICAgbGV0
IHNpZ25pZmljYW5kID0gKCh1aW50QXJyYXlbNl0gJiAweDBmKSA8PCA2KSB8ICgodWludEFycmF5
WzVdICYgMHhmYykgPj4+IDIpOworCisgICAgICAgICAgICBpZiAoKGV4cG9uZW50IC0gMTAyMykg
PCAtMTQpIHsKKyAgICAgICAgICAgICAgICBleHBvbmVudCA9IDA7CisgICAgICAgICAgICAgICAg
c2lnbmlmaWNhbmQgPSAoTWF0aC5hYnMobnVtYmVyKSAqIE1hdGgucG93KDIsIDI0KSkgPj4+IDA7
CisgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gTWF0aC5wb3coMiwgLTE0KSAqIHNpZ25pZmlj
YW5kIC8gMTAyNDsKKyAgICAgICAgICAgICAgICBpZiAoc2lnbiAhPSAwKQorICAgICAgICAgICAg
ICAgICAgICB2YWx1ZSAqPSAtMTsKKyAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7CisgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgIGRvdWJsZUFycmF5WzBdID0gMDsKKworICAgICAgICAg
ICAgdWludEFycmF5WzddIHw9IHNpZ247CisgICAgICAgICAgICB1aW50QXJyYXlbN10gfD0gKGV4
cG9uZW50ID4+PiA0KTsKKyAgICAgICAgICAgIHVpbnRBcnJheVs2XSB8PSAoKGV4cG9uZW50IDw8
IDQpICYgMHhmMCk7CisgICAgICAgICAgICB1aW50QXJyYXlbNl0gfD0gKHNpZ25pZmljYW5kID4+
PiA2KTsKKyAgICAgICAgICAgIHVpbnRBcnJheVs1XSB8PSAoKHNpZ25pZmljYW5kIDw8IDIpICYg
MHhmYyk7CisKKyAgICAgICAgICAgIHJldHVybiBkb3VibGVBcnJheVswXTsKKyAgICAgICAgfQor
CiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgaW50
IiwKKyAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiB2b2lkIiwKICAgICAgICAgICAgIHR5cGUg
PT4gewotICAgICAgICAgICAgICAgIHRoaXMuaW50ID0gdHlwZTsKLSAgICAgICAgICAgICAgICB0
eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmlzSW50ID0gdHJ1
ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKLSAgICAgICAgICAgICAg
ICB0eXBlLmlzU2lnbmVkID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2Vu
dCA9IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQodmFsdWUgfCAwLCB2YWx1ZSk7Ci0gICAg
ICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKLSAgICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRW
YWx1ZSA9IDA7Ci0gICAgICAgICAgICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0gKG9yaWdpbiwg
dmFsdWUpID0+IEludExpdGVyYWwud2l0aFR5cGUob3JpZ2luLCB2YWx1ZSB8IDAsIHR5cGUpOwot
ICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiAodmFsdWUgKyAx
KSB8IDA7Ci0gICAgICAgICAgICAgICAgdHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09
PSBiOwotICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVy
LCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCAwKTsKLSAgICAgICAgICAgICAgICB0eXBl
LmZvcm1hdFZhbHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSB8IDA7Ci0gICAgICAg
ICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVl
IHwgMDsKLSAgICAgICAgICAgICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1bmN0aW9uKigpIHsgCi0g
ICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDB4ZmZmZmZmZmY7ICsraSkg
ewotICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gaSB8IDA7Ci0gICAgICAgICAg
ICAgICAgICAgICAgICB5aWVsZCB7dmFsdWU6IHZhbHVlLCBuYW1lOiB2YWx1ZX07Ci0gICAgICAg
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgICAgIHRoaXMu
dm9pZCA9IHR5cGU7CisgICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMDsKKyAgICAgICAgICAg
ICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKCkgPT4geyB9OwogICAgICAgICAgICAg
fSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdHlwZWRl
ZiB1aW50IiwKKyAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBib29sIiwKICAgICAgICAgICAg
IHR5cGUgPT4gewotICAgICAgICAgICAgICAgIHRoaXMudWludCA9IHR5cGU7CisgICAgICAgICAg
ICAgICAgdGhpcy5ib29sID0gdHlwZTsKICAgICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZl
ID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmlzSW50ID0gdHJ1ZTsKLSAgICAgICAgICAg
ICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmlzU2lnbmVk
ID0gZmFsc2U7Ci0gICAgICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBp
c0JpdHdpc2VFcXVpdmFsZW50KHZhbHVlID4+PiAwLCB2YWx1ZSk7CiAgICAgICAgICAgICAgICAg
dHlwZS5zaXplID0gMTsKLSAgICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7Ci0g
ICAgICAgICAgICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0gKG9yaWdpbiwgdmFsdWUpID0+IElu
dExpdGVyYWwud2l0aFR5cGUob3JpZ2luLCB2YWx1ZSA+Pj4gMCwgdHlwZSk7Ci0gICAgICAgICAg
ICAgICAgdHlwZS5zdWNjZXNzb3JWYWx1ZSA9IHZhbHVlID0+ICh2YWx1ZSArIDEpID4+PiAwOwot
ICAgICAgICAgICAgICAgIHR5cGUudmFsdWVzRXF1YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKLSAg
ICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0
KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7Ci0gICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRW
YWx1ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWUgPj4+IDA7Ci0gICAgICAgICAgICAg
ICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlID4+PiAw
OwotICAgICAgICAgICAgICAgIHR5cGUuYWxsVmFsdWVzID0gZnVuY3Rpb24qKCkgeyAKLSAgICAg
ICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPD0gMHhmZmZmZmZmZjsgKytpKQotICAg
ICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiBpLCBuYW1lOiBpfTsKLSAgICAgICAg
ICAgICAgICB9OworICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAo
YnVmZmVyLCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCBmYWxzZSk7CiAgICAgICAgICAg
ICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAogICAgICAgICAgICAgIm5hdGl2ZSB0eXBl
ZGVmIHVjaGFyIiwKICAgICAgICAgICAgIHR5cGUgPT4gewogICAgICAgICAgICAgICAgIHRoaXMu
dWNoYXIgPSB0eXBlOworICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOwog
ICAgICAgICAgICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOwogICAgICAgICAgICAgICAgIHR5cGUu
aXNOdW1iZXIgPSB0cnVlOwogICAgICAgICAgICAgICAgIHR5cGUuaXNTaWduZWQgPSBmYWxzZTsK
QEAgLTEyNiw0MTkgKzE0Myw4NTAgQEAgY2xhc3MgSW50cmluc2ljcyB7CiAgICAgICAgICAgICAg
ICAgfTsKICAgICAgICAgICAgIH0pOwogCisKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisg
ICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIHVzaG9ydCIsCisgICAgICAgICAgICAgdHlwZSA9
PiB7CisgICAgICAgICAgICAgICAgIHRoaXMudXNob3J0ID0gdHlwZTsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJbnQg
PSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAgICAg
ICAgICAgICAgdHlwZS5pc1NpZ25lZCA9IGZhbHNlOworICAgICAgICAgICAgICAgICB0eXBlLmNh
blJlcHJlc2VudCA9IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQodmFsdWUgJiAweGZmZmYs
IHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5kZWZhdWx0VmFsdWUgPSAwOworICAgICAgICAgICAgICAgICB0eXBlLmNyZWF0ZUxp
dGVyYWwgPSAob3JpZ2luLCB2YWx1ZSkgPT4gSW50TGl0ZXJhbC53aXRoVHlwZShvcmlnaW4sIHZh
bHVlICYgMHhmZmZmLCB0eXBlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5zdWNjZXNzb3JWYWx1
ZSA9IHZhbHVlID0+ICh2YWx1ZSArIDEpICYgMHhmZmZmOworICAgICAgICAgICAgICAgICB0eXBl
LnZhbHVlc0VxdWFsID0gKGEsIGIpID0+IGEgPT09IGI7CisgICAgICAgICAgICAgICAgIHR5cGUu
cG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVyLCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zm
c2V0LCAwKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFs
ID0gdmFsdWUgPT4gdmFsdWUgJiAweGZmZmY7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0
VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSAmIDB4ZmZmZjsKKyAgICAgICAg
ICAgICAgICAgdHlwZS5hbGxWYWx1ZXMgPSBmdW5jdGlvbiooKSB7CisgICAgICAgICAgICAgICAg
ICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSAweGZmZmY7ICsraSkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICB5aWVsZCB7dmFsdWU6IGksIG5hbWU6IGl9OworICAgICAgICAgICAgICAgICB9Owor
ICAgICAgICAgICAgIH0pOworCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAi
bmF0aXZlIHR5cGVkZWYgZmxvYXQiLAotICAgICAgICAgICAgdHlwZSA9PiB7Ci0gICAgICAgICAg
ICAgICAgdGhpcy5mbG9hdCA9IHR5cGU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1pdGl2
ZSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKLSAgICAgICAgICAgICAg
ICB0eXBlLmlzRmxvYXRpbmcgPSB0cnVlOwotICAgICAgICAgICAgICAgIHR5cGUuaXNOdW1iZXIg
PSB0cnVlOwotICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNC
aXR3aXNlRXF1aXZhbGVudChNYXRoLmZyb3VuZCh2YWx1ZSksIHZhbHVlKTsKLSAgICAgICAgICAg
ICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZm
ZXIuc2V0KG9mZnNldCwgMCk7Ci0gICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21J
bnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRW
YWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOwotICAgICAgICAgICAgICAgIHR5
cGUuZm9ybWF0VmFsdWVGcm9tRmxvYXRMaXRlcmFsID0gdmFsdWUgPT4gTWF0aC5mcm91bmQodmFs
dWUpOwotICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIHVpbnQi
LAorICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLnVpbnQgPSB0
eXBlOworICAgICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsKKyAgICAgICAg
ICAgICAgICAgdHlwZS5pc0ludCA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNOdW1i
ZXIgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzU2lnbmVkID0gZmFsc2U7CisgICAg
ICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZh
bGVudCh2YWx1ZSA+Pj4gMCwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAx
OworICAgICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7CisgICAgICAgICAgICAg
ICAgIHR5cGUuY3JlYXRlTGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndp
dGhUeXBlKG9yaWdpbiwgdmFsdWUgPj4+IDAsIHR5cGUpOworICAgICAgICAgICAgICAgICB0eXBl
LnN1Y2Nlc3NvclZhbHVlID0gdmFsdWUgPT4gKHZhbHVlICsgMSkgPj4+IDA7CisgICAgICAgICAg
ICAgICAgIHR5cGUudmFsdWVzRXF1YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVm
ZmVyLnNldChvZmZzZXQsIDApOworICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJv
bUludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSA+Pj4gMDsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlID4+PiAwOworICAg
ICAgICAgICAgICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1bmN0aW9uKigpIHsKKyAgICAgICAgICAg
ICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDB4ZmZmZmZmZmY7ICsraSkKKyAgICAgICAg
ICAgICAgICAgICAgICAgICB5aWVsZCB7dmFsdWU6IGksIG5hbWU6IGl9OworICAgICAgICAgICAg
ICAgICB9OworICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAg
ICAgICAgICAibmF0aXZlIHR5cGVkZWYgYm9vbCIsCi0gICAgICAgICAgICB0eXBlID0+IHsKLSAg
ICAgICAgICAgICAgICB0aGlzLmJvb2wgPSB0eXBlOwotICAgICAgICAgICAgICAgIHR5cGUuaXNQ
cmltaXRpdmUgPSB0cnVlOwotICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7Ci0gICAgICAg
ICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4g
YnVmZmVyLnNldChvZmZzZXQsIGZhbHNlKTsKLSAgICAgICAgICAgIH0pOworICAgICAgICAgICAg
ICJuYXRpdmUgdHlwZWRlZiBjaGFyIiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAg
ICAgICAgICAgdGhpcy5jaGFyID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1p
dGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOworICAgICAg
ICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5p
c1NpZ25lZCA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50ID0gdmFs
dWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudChjYXN0KEludDhBcnJheSwgdmFsdWUpLCB2YWx1ZSk7
CisgICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7CisgICAgICAgICAgICAgICAgIHR5cGUu
ZGVmYXVsdFZhbHVlID0gMDsKKyAgICAgICAgICAgICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0g
KG9yaWdpbiwgdmFsdWUpID0+IEludExpdGVyYWwud2l0aFR5cGUob3JpZ2luLCBjYXN0KEludDhB
cnJheSwgdmFsdWUpLCB0eXBlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5zdWNjZXNzb3JWYWx1
ZSA9IHZhbHVlID0+IGNhc3QoSW50OEFycmF5LCB2YWx1ZSArIDEpOworICAgICAgICAgICAgICAg
ICB0eXBlLnZhbHVlc0VxdWFsID0gKGEsIGIpID0+IGEgPT09IGI7CisgICAgICAgICAgICAgICAg
IHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVyLCBvZmZzZXQpID0+IGJ1ZmZlci5z
ZXQob2Zmc2V0LCAwKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRM
aXRlcmFsID0gdmFsdWUgPT4gY2FzdChJbnQ4QXJyYXksIHZhbHVlKTsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IGNhc3QoSW50OEFy
cmF5LCB2YWx1ZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuYWxsVmFsdWVzID0gZnVuY3Rpb24q
KCkgeworICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPD0gMHhmZjsgKytp
KSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gY2FzdChJbnQ4QXJyYXks
IGkpOworICAgICAgICAgICAgICAgICAgICAgICAgIHlpZWxkIHt2YWx1ZTogdmFsdWUsIG5hbWU6
IHZhbHVlfTsKKyAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgfTsKKyAg
ICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICJu
YXRpdmUgdHlwZWRlZiBzaG9ydCIsCisgICAgICAgICAgICAgdHlwZSA9PiB7CisgICAgICAgICAg
ICAgICAgIHRoaXMuc2hvcnQgPSB0eXBlOworICAgICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0
aXZlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc0ludCA9IHRydWU7CisgICAgICAg
ICAgICAgICAgIHR5cGUuaXNOdW1iZXIgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlz
U2lnbmVkID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1
ZSA9PiBpc0JpdHdpc2VFcXVpdmFsZW50KGNhc3QoSW50MTZBcnJheSwgdmFsdWUpLCB2YWx1ZSk7
CisgICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7CisgICAgICAgICAgICAgICAgIHR5cGUu
ZGVmYXVsdFZhbHVlID0gMDsKKyAgICAgICAgICAgICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0g
KG9yaWdpbiwgdmFsdWUpID0+IEludExpdGVyYWwud2l0aFR5cGUob3JpZ2luLCBjYXN0KEludDE2
QXJyYXksIHZhbHVlKSwgdHlwZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29yVmFs
dWUgPSB2YWx1ZSA9PiBjYXN0KEludDE2QXJyYXksIHZhbHVlICsgMSk7CisgICAgICAgICAgICAg
ICAgIHR5cGUudmFsdWVzRXF1YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVy
LnNldChvZmZzZXQsIDApOworICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUlu
dExpdGVyYWwgPSB2YWx1ZSA9PiBjYXN0KEludDE2QXJyYXksIHZhbHVlKTsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IGNhc3QoSW50
MTZBcnJheSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1bmN0
aW9uKigpIHsKKyAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDB4ZmZm
ZjsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gY2FzdChJbnQx
NkFycmF5LCBpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICB5aWVsZCB7dmFsdWU6IHZhbHVl
LCBuYW1lOiB2YWx1ZX07CisgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAg
IH07CisgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAg
ICAgICAibmF0aXZlIHR5cGVkZWYgaW50IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAg
ICAgICAgICAgICAgdGhpcy5pbnQgPSB0eXBlOworICAgICAgICAgICAgICAgICB0eXBlLmlzUHJp
bWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc0ludCA9IHRydWU7CisgICAg
ICAgICAgICAgICAgIHR5cGUuaXNOdW1iZXIgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBl
LmlzU2lnbmVkID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2
YWx1ZSA9PiBpc0JpdHdpc2VFcXVpdmFsZW50KHZhbHVlIHwgMCwgdmFsdWUpOworICAgICAgICAg
ICAgICAgICB0eXBlLnNpemUgPSAxOworICAgICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1
ZSA9IDA7CisgICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRlTGl0ZXJhbCA9IChvcmlnaW4sIHZh
bHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwgdmFsdWUgfCAwLCB0eXBlKTsKKyAg
ICAgICAgICAgICAgICAgdHlwZS5zdWNjZXNzb3JWYWx1ZSA9IHZhbHVlID0+ICh2YWx1ZSArIDEp
IHwgMDsKKyAgICAgICAgICAgICAgICAgdHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09
PSBiOworICAgICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZl
ciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5
cGUuZm9ybWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlIHwgMDsKKyAgICAg
ICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZh
bHVlIHwgMDsKKyAgICAgICAgICAgICAgICAgdHlwZS5hbGxWYWx1ZXMgPSBmdW5jdGlvbiooKSB7
CisgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSAweGZmZmZmZmZmOyAr
K2kpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBpIHwgMDsKKyAgICAg
ICAgICAgICAgICAgICAgICAgICB5aWVsZCB7dmFsdWU6IHZhbHVlLCBuYW1lOiB2YWx1ZX07Cisg
ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgIH07CisgICAgICAgICAgICAg
fSk7CisKKyAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgIm5hdGl2ZSB0eXBl
ZGVmIGhhbGYiLAorICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlz
LmhhbGYgPSB0eXBlOworICAgICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsK
KyAgICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKKyAgICAgICAgICAgICAgICAgdHlwZS5p
c0Zsb2F0aW5nID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7
CisgICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNl
RXF1aXZhbGVudChjYXN0VG9IYWxmKHZhbHVlKSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0
eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0
KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tSW50TGl0
ZXJhbCA9IHZhbHVlID0+IHZhbHVlOworICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVl
RnJvbVVpbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWU7CisgICAgICAgICAgICAgICAgIHR5cGUu
Zm9ybWF0VmFsdWVGcm9tRmxvYXRMaXRlcmFsID0gdmFsdWUgPT4gY2FzdFRvSGFsZih2YWx1ZSk7
CisgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAg
ICAgIm5hdGl2ZSB0eXBlZGVmIGZsb2F0IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAg
ICAgICAgICAgICAgdGhpcy5mbG9hdCA9IHR5cGU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNQ
cmltaXRpdmUgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOworICAgICAg
ICAgICAgICAgICB0eXBlLmlzRmxvYXRpbmcgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBl
LmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2
YWx1ZSA9PiBpc0JpdHdpc2VFcXVpdmFsZW50KE1hdGguZnJvdW5kKHZhbHVlKSwgdmFsdWUpOwor
ICAgICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zm
c2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9y
bWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOworICAgICAgICAgICAgICAg
ICB0eXBlLmZvcm1hdFZhbHVlRnJvbVVpbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWU7CisgICAg
ICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tRmxvYXRMaXRlcmFsID0gdmFsdWUgPT4g
TWF0aC5mcm91bmQodmFsdWUpOworICAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21h
cC5zZXQoCisgICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGF0b21pY19pbnQiLAorICAgICAg
ICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLmF0b21pY19pbnQgPSB0eXBl
OworICAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAg
ICAgIm5hdGl2ZSB0eXBlZGVmIGF0b21pY191aW50IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsK
KyAgICAgICAgICAgICAgICAgdGhpcy5hdG9taWNfdWludCA9IHR5cGU7CisgICAgICAgICAgICAg
fSk7CiAKICAgICAgICAgZm9yIChsZXQgdmVjdG9yVHlwZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMp
IHsKLSAgICAgICAgICAgIGZvciAobGV0IHZlY3RvclNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVz
KQotICAgICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoYG5hdGl2ZSB0eXBlZGVmIHZlY3Rvcjwk
e3ZlY3RvclR5cGV9LCAke3ZlY3RvclNpemV9PmAsIHR5cGUgPT4ge30pOworICAgICAgICAgICAg
Zm9yIChsZXQgdmVjdG9yU2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpIHsKKyAgICAgICAgICAg
ICAgICB0aGlzLl9tYXAuc2V0KGBuYXRpdmUgdHlwZWRlZiB2ZWN0b3I8JHt2ZWN0b3JUeXBlfSwg
JHt2ZWN0b3JTaXplfT5gLCB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAgICAgdGhpc1tgdmVj
dG9yPCR7dmVjdG9yVHlwZX0sICR7dmVjdG9yU2l6ZX0+YF0gPSB0eXBlOworICAgICAgICAgICAg
ICAgIH0pOworICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIAorCisgICAgICAgIGZv
ciAobGV0IHR5cGUgb2YgWyJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIGZvciAobGV0
IGhlaWdodCA9IDI7IGhlaWdodCA8PSA0OyArK2hlaWdodCkgeworICAgICAgICAgICAgICAgIGZv
ciAobGV0IHdpZHRoID0gMjsgd2lkdGggPD0gNDsgKyt3aWR0aCkgeworICAgICAgICAgICAgICAg
ICAgICB0aGlzLl9tYXAuc2V0KGBuYXRpdmUgdHlwZWRlZiBtYXRyaXg8JHt0eXBlfSwgJHtoZWln
aHR9LCAke3dpZHRofT5gLCB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNb
YG1hdHJpeDwke3R5cGV9LCAke2hlaWdodH0sICR7d2lkdGh9PmBdID0gdHlwZTsKKyAgICAgICAg
ICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAg
ICB9CisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0
b3IgaW50KHVpbnQpIiwKLSAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVl
KCkgfCAwKTsKKyAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBzYW1wbGVyIiwKKyAgICAgICAg
ICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgIHRoaXMuc2FtcGxlciA9IHR5cGU7CisgICAg
ICAgICAgICAgICAgLy8gRklYTUU6IEZpZ3VyZSBvdXQgd2hhdCB0byBwdXQgaGVyZS4KICAgICAg
ICAgICAgIH0pOwotICAgICAgICAKKworICAgICAgICBmb3IgKGxldCB0ZXh0dXJlVHlwZSBvZiBb
IlRleHR1cmUxRCIsICJSV1RleHR1cmUxRCIsICJUZXh0dXJlMURBcnJheSIsICJSV1RleHR1cmUx
REFycmF5IiwgIlRleHR1cmUyRCIsICJSV1RleHR1cmUyRCIsICJUZXh0dXJlMkRBcnJheSIsICJS
V1RleHR1cmUyREFycmF5IiwgIlRleHR1cmUzRCIsICJSV1RleHR1cmUzRCIsICJUZXh0dXJlQ3Vi
ZSJdKSB7CisgICAgICAgICAgICBmb3IgKGxldCB0eXBlQXJndW1lbnQgb2YgWyJib29sIiwgInVj
aGFyIiwgInVzaG9ydCIsICJ1aW50IiwgImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiLCAi
ZmxvYXQiXSkgeworICAgICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAg
ICAgICAgIGBuYXRpdmUgdHlwZWRlZiAke3RleHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0+YCwK
KyAgICAgICAgICAgICAgICAgICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgICAgICAgICB0
aGlzW2Ake3RleHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0+YF0gPSB0eXBlOworICAgICAgICAg
ICAgICAgICAgICB9KTsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMjsgaSA8PSA0OyAr
K2kpIHsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGBuYXRpdmUgdHlwZWRlZiAke3RleHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0k
e2l9PmAsCisgICAgICAgICAgICAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0aGlzW2Ake3RleHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0ke2l9PmBd
ID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHRleHR1cmVUeXBl
IG9mIFsiVGV4dHVyZURlcHRoMkQiLCAiUldUZXh0dXJlRGVwdGgyRCIsICJUZXh0dXJlRGVwdGgy
REFycmF5IiwgIlJXVGV4dHVyZURlcHRoMkRBcnJheSIsICJUZXh0dXJlRGVwdGhDdWJlIl0pIHsK
KyAgICAgICAgICAgIGZvciAobGV0IHR5cGVBcmd1bWVudCBvZiBbImZsb2F0IiwgImhhbGYiXSkg
eworICAgICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgICAgIGBu
YXRpdmUgdHlwZWRlZiAke3RleHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0+YCwKKyAgICAgICAg
ICAgICAgICAgICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgICAgICAgICB0aGlzW2Ake3Rl
eHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0+YF0gPSB0eXBlOworICAgICAgICAgICAgICAgICAg
ICB9KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHByaW1p
dGl2ZVR5cGUgb2YgWyJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNob3J0IiwgImludCIsICJo
YWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAg
ICAgICAgYG5hdGl2ZSBvcGVyYXRvciB1Y2hhcigke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAg
ICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgJiAweGZmKTsKKyAg
ICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHByaW1pdGl2
ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1aW50IiwgImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImhhbGYi
LCAiZmxvYXQiXSkgeworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAg
ICBgbmF0aXZlIG9wZXJhdG9yIHVzaG9ydCgke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAg
ICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24g
PSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgJiAweGZmZmYpOworICAg
ICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZl
VHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIsICJjaGFyIiwgInNob3J0IiwgImludCIsICJoYWxm
IiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAg
ICAgYG5hdGl2ZSBvcGVyYXRvciB1aW50KCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSA+Pj4gMCk7CisgICAgICAg
ICAgICAgICAgfSk7CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBl
IG9mIFsidWNoYXIiLCAidXNob3J0IiwgInVpbnQiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiLCAi
ZmxvYXQiXSkgeworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBg
bmF0aXZlIG9wZXJhdG9yIGNoYXIoJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAg
IGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+IEVQdHIuYm94KGNhc3QoSW50OEFycmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkpOwor
ICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0
aXZlVHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIsICJ1aW50IiwgImNoYXIiLCAiaW50IiwgImhh
bGYiLCAiZmxvYXQiXSkgeworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAg
ICAgICBgbmF0aXZlIG9wZXJhdG9yIHNob3J0KCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAg
ICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlv
biA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChjYXN0KEludDE2QXJyYXksIHZhbHVlLmxvYWRWYWx1
ZSgpKSk7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGxl
dCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAidXNob3J0IiwgInVpbnQiLCAiY2hhciIsICJz
aG9ydCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisg
ICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBpbnQoJHtwcmltaXRpdmVUeXBlfSlgLAor
ICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxl
bWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KGNhc3QoSW50MzJBcnJheSwgdmFsdWUu
bG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAg
IGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAidWludCIsICJj
aGFyIiwgInNob3J0IiwgImludCIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgaGFsZigke3ByaW1pdGl2ZVR5
cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goY2FzdFRvSGFsZih2YWx1
ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAg
ICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIsICJ1aW50Iiwg
ImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiXSkgeworICAgICAgICAgICAgdGhpcy5fbWFw
LnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIGZsb2F0KCR7cHJpbWl0aXZl
VHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChNYXRoLmZyb3VuZCh2
YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgaW50KHVj
aGFyKSIsCisgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIGludChhdG9taWNfaW50KWAsCiAg
ICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpIHwgMCk7CisgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1
ZS5sb2FkVmFsdWUoKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KSIsCisg
ICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIHVpbnQoYXRvbWljX3VpbnQpYCwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgfCAwKTsKKyAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRW
YWx1ZSgpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAu
c2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1aW50KGludCkiLAorICAgICAgICAg
ICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPT0oYm9vbCxib29sKSIsCiAgICAgICAgICAgICBmdW5j
ID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+
IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpID4+PiAwKTsKKyAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkpOwogICAgICAg
ICAgICAgfSk7Ci0gICAgICAgIAorCisgICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2Yg
WyJ1aW50IiwgImludCIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAor
ICAgICAgICAgICAgICAgIGBuYXRpdmUgYm9vbCBvcGVyYXRvcj09KCR7cHJpbWl0aXZlVHlwZX0s
JHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAg
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0Lmxv
YWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgdGhpcy5fbWFw
LnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I8KCR7cHJpbWl0aXZl
VHlwZX0sJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAg
ICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+
CisgICAgICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpIDwgcmln
aHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICB0aGlz
Ll9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgYm9vbCBvcGVyYXRvcjw9KCR7cHJp
bWl0aXZlVHlwZX0sJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4g
eworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdo
dF0pID0+CisgICAgICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgp
IDw9IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I+
KCR7cHJpbWl0aXZlVHlwZX0sJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1
bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0
LCByaWdodF0pID0+CisgICAgICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRW
YWx1ZSgpID4gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIH0pOworCisgICAg
ICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgYm9vbCBvcGVy
YXRvcj49KCR7cHJpbWl0aXZlVHlwZX0sJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAg
ICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFtsZWZ0LCByaWdodF0pID0+CisgICAgICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0
LmxvYWRWYWx1ZSgpID49IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICB9KTsK
KyAgICAgICAgfQorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IG9wZXJhdG9yIHVpbnQodWNoYXIpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9y
LShpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgPj4+
IDApOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4K
KyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKC12YWx1ZS5sb2FkVmFsdWUoKSkgfCAwKTsK
ICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAg
ICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1aW50KGZsb2F0KSIsCisgICAgICAgICAgICAibmF0
aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2
YWx1ZS5sb2FkVmFsdWUoKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZy
b3VuZCgtdmFsdWUubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwog
ICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hh
cihpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yKyhpbnQsaW50KSIsCiAg
ICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpICYgMHhmZik7CisgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRW
YWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9yIHVjaGFyKHVpbnQpIiwKKyAg
ICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yLShpbnQsaW50KSIsCiAgICAgICAgICAgICBm
dW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0p
ID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpICYgMHhmZik7CisgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDAp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9yIHVjaGFyKGZsb2F0KSIsCisgICAgICAgICAgICAi
bmF0aXZlIGludCBvcGVyYXRvciooaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0g
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJv
eCh2YWx1ZS5sb2FkVmFsdWUoKSAmIDB4ZmYpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3goKGxlZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAg
ICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAg
Im5hdGl2ZSBvcGVyYXRvciBmbG9hdChpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9w
ZXJhdG9yLyhpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KE1hdGguZnJvdW5k
KHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlv
biA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVm
dC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7
Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IG9wZXJhdG9yIGZsb2F0KHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRv
cisodWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KE1hdGguZnJvdW5kKHZh
bHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5s
b2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsK
LSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
b3BlcmF0b3IgZmxvYXQodWNoYXIpIiwKKyAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRv
ci0odWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KE1hdGguZnJvdW5kKHZh
bHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5s
b2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsK
LSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
aW50IG9wZXJhdG9yKyhpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0
b3IqKHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDAp
OworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAqIHJpZ2h0
LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcisodWlu
dCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3IvKHVpbnQsdWludCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgo
bGVmdC5sb2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIC8gcmlnaHQubG9hZFZhbHVlKCkp
ID4+PiAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAu
c2V0KAogICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvcisoZmxvYXQsZmxvYXQpIiwK
ICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0
aC5mcm91bmQobGVmdC5sb2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CiAgICAgICAg
ICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAg
ICJuYXRpdmUgaW50IG9wZXJhdG9yLShpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZs
b2F0IG9wZXJhdG9yLShmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRW
YWx1ZSgpKSB8IDApOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChs
ZWZ0LmxvYWRWYWx1ZSgpIC0gcmlnaHQubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwot
ICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB1
aW50IG9wZXJhdG9yLSh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgb3Bl
cmF0b3IqKGZsb2F0LGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIC0gcmlnaHQubG9hZFZhbHVlKCkp
ID4+PiAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQobGVmdC5s
b2FkVmFsdWUoKSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgZmxvYXQg
b3BlcmF0b3ItKGZsb2F0LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJh
dG9yLyhmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAg
ICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChsZWZ0LmxvYWRWYWx1ZSgpIC0gcmlnaHQubG9h
ZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQobGVm
dC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9KTsKLSAg
ICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50
IG9wZXJhdG9yKihpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvciYo
aW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PiB7Ci0gICAgICAgICAgICAgICAgICAg
IHJldHVybiBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8
IDApOwotICAgICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgo
bGVmdC5sb2FkVmFsdWUoKSAmIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIHVpbnQgb3BlcmF0b3IqKHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQg
b3BlcmF0b3J8KGludCxpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkg
Pj4+IDApOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSB8
IHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9y
KihmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3JeKGludCxp
bnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3goTWF0aC5mcm91bmQobGVmdC5sb2FkVmFsdWUoKSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7Cisg
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIF4gcmlnaHQubG9h
ZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yLyhpbnQsaW50KSIs
CisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcn4oaW50KSIsCiAgICAgICAgICAgICBm
dW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCBy
aWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgp
IC8gcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgofnZhbHVlLmxvYWRWYWx1ZSgpKSB8IDAp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3IvKHVpbnQsdWludCkiLAorICAgICAgICAg
ICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3I8PChpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9
PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRd
KSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAvIHJp
Z2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChs
ZWZ0LmxvYWRWYWx1ZSgpIDw8IHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIGludCBvcGVyYXRvciYoaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3Bl
cmF0b3I+PihpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAg
ICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpICYgcmlnaHQubG9hZFZhbHVlKCkpOwor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSA+PiByaWdodC5s
b2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0
aGlzLl9tYXAuc2V0KAogICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yJih1aW50LHVp
bnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KICAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3goKGxlZnQubG9hZFZhbHVlKCkgJiByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAg
ICAgICAgfSk7Ci0gICAgICAgIAotICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAg
Im5hdGl2ZSBpbnQgb3BlcmF0b3J8KGludCxpbnQpIiwKLSAgICAgICAgICAgIGZ1bmMgPT4gewot
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
LSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSB8IHJpZ2h0Lmxv
YWRWYWx1ZSgpKTsKLSAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9t
YXAuc2V0KAogICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yfCh1aW50LHVpbnQpIiwK
ICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxl
ZnQubG9hZFZhbHVlKCkgfCByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAotICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2
ZSBpbnQgb3BlcmF0b3JeKGludCxpbnQpIiwKLSAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAg
ICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSBeIHJpZ2h0LmxvYWRWYWx1
ZSgpKTsKLSAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAogICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yXih1aW50LHVpbnQpIiwKICAgICAg
ICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W2xlZnQsIHJpZ2h0XSkgPT4KICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9h
ZFZhbHVlKCkgXiByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7Ci0g
ICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGlu
dCBvcGVyYXRvcjw8KGludCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0
b3J+KHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8PCByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgofnZh
bHVlLmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcjw8
KHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVu
Yy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgogICAgICAgICAgICAgICAgICAg
ICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSA8PCByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDAp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcj4+KGludCx1aW50KSIsCisgICAgICAgICAg
ICAibmF0aXZlIHVpbnQgb3BlcmF0b3I+Pih1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMg
PT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+PiBy
aWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0Lmxv
YWRWYWx1ZSgpID4+PiByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7
Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IHVpbnQgb3BlcmF0b3I+Pih1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQg
Y29zKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPj4+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguY29zKHZhbHVlLmxvYWRWYWx1ZSgp
KSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQo
Ci0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcn4oaW50KSIsCisgICAgICAgICAgICAi
bmF0aXZlIGZsb2F0IHNpbihmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh+dmFs
dWUubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0
aC5zaW4odmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRv
cn4odWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCB0YW4oZmxvYXQpIiwKICAgICAg
ICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZhbHVlXSkgPT4gRVB0ci5ib3goKH52YWx1ZS5sb2FkVmFsdWUoKSkgPj4+IDApOworICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC50YW4odmFsdWUubG9hZFZhbHVlKCkp
KSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgK
LSAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgb3BlcmF0b3IvKGZsb2F0LGZsb2F0KSIsCisgICAg
ICAgICAgICAibmF0aXZlIGZsb2F0IGFjb3MoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4g
ewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkg
PT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQobGVmdC5sb2FkVmFs
dWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRo
LmZyb3VuZChNYXRoLmFjb3ModmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsK
LSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
Ym9vbCBvcGVyYXRvcj09KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgYXNp
bihmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBF
UHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAg
ICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguYXNpbih2YWx1ZS5sb2FkVmFsdWUoKSkp
KTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPT0odWludCx1aW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGZsb2F0IGF0YW4oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewot
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
LSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA9PSByaWdodC5s
b2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmF0
YW4odmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09
KGJvb2wsYm9vbCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBjb3NoKGZsb2F0KSIsCiAg
ICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQu
bG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3goTWF0aC5mcm91bmQoTWF0aC5jb3NoKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAg
ICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAi
bmF0aXZlIGJvb2wgb3BlcmF0b3I9PShmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2
ZSBmbG9hdCBzaW5oKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkp
OworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAg
ICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5zaW5oKHZhbHVlLmxv
YWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCxpbnQpIiwK
KyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgdGFuaChmbG9hdCkiLAogICAgICAgICAgICAgZnVu
YyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmln
aHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpIDwg
cmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24g
PSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQo
TWF0aC50YW5oKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAg
IAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3Bl
cmF0b3I8KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBjZWlsKGZsb2F0
KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KGxlZnQubG9hZFZhbHVlKCkgPCByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBF
UHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmNlaWwodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAg
ICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcjwoZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJu
YXRpdmUgZmxvYXQgZXhwKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPCByaWdodC5sb2FkVmFsdWUo
KSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9Pgor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmV4cCh2YWx1ZS5s
b2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlz
Ll9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPD0oaW50LGludCki
LAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBmbG9vcihmbG9hdCkiLAogICAgICAgICAgICAg
ZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwg
cmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgp
IDw9IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJv
dW5kKE1hdGguZmxvb3IodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAg
ICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9v
bCBvcGVyYXRvcjw9KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBsb2co
ZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0
ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmxvZyh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsK
ICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAg
ICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPD0oZmxvYXQsZmxvYXQpIiwKKyAgICAgICAg
ICAgICJuYXRpdmUgZmxvYXQgcm91bmQoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewot
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
LSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5s
b2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLnJv
dW5kKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I+
KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgc3FydChmbG9hdCkiLAogICAg
ICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0Lmxv
YWRWYWx1ZSgpID4gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
TWF0aC5mcm91bmQoTWF0aC5zcXJ0KHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIGJvb2wgb3BlcmF0b3I+KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9h
dCB0cnVuYyhmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID4gcmlnaHQubG9hZFZhbHVlKCkpOworICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAg
ICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC50cnVuYyh2YWx1ZS5sb2FkVmFs
dWUoKSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAu
c2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPihmbG9hdCxmbG9hdCkiLAor
ICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBkZHgoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMg
PT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJp
Z2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFt2YWx1ZV0pID0+IEVQdHIuYm94KDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I+
PShpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGRkeShmbG9hdCkiLAogICAg
ICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0Lmxv
YWRWYWx1ZSgpID49IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KDApOwogICAgICAgICAgICAgfSk7
Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IGJvb2wgb3BlcmF0b3I+PSh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQg
cG93KGZsb2F0LGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAg
ICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPj0gcmlnaHQubG9hZFZhbHVlKCkpOwor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLnBvdyhsZWZ0Lmxv
YWRWYWx1ZSgpLCByaWdodC5sb2FkVmFsdWUoKSkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAg
ICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGJvb2wgaXNmaW5pdGUoZmxv
YXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTnVt
YmVyLmlzRmluaXRlKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICB9KTsKKworICAg
ICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSBib29sIGlzaW5mKGZsb2F0
KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KCh2YWx1
ZS5sb2FkVmFsdWUoKSA9PSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpIHx8ICh2YWx1ZS5sb2Fk
VmFsdWUoKSA9PSBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpKTsKKyAgICAgICAgICAgIH0pOwor
CisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGJvb2wgaXNuYW4o
ZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
TnVtYmVyLmlzTmFOKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICB9KTsKKworICAg
ICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMuCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisg
ICAgICAgICAgICAibmF0aXZlIGJvb2wgaXNub3JtYWwoaGFsZikiLAorICAgICAgICAgICAgZnVu
YyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9
PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChpc05hTih2YWx1ZS5sb2FkVmFsdWUoKSkp
OworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGlzLgor
ICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSBib29sIGlzbm9ybWFs
KGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KGlzTmFOKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRv
cj49KGZsb2F0LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGF0YW4yKGZsb2F0
LGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQ
dHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPj0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmF0YW4yKGxlZnQubG9hZFZhbHVl
KCksIHJpZ2h0LmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKLSAgICAgICAgZm9y
IChsZXQgbmF0aXZlVmVjdG9yVHlwZU5hbWUgb2YgYWxsVmVjdG9yVHlwZU5hbWVzKCkpCisgICAg
ICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGludCBhc2ludChmbG9hdCki
LAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChiaXR3aXNl
Q2FzdChGbG9hdDMyQXJyYXksIEludDMyQXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAg
ICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2
ZSB1aW50IGFzdWludChmbG9hdCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveChiaXR3aXNlQ2FzdChGbG9hdDMyQXJyYXksIFVpbnQzMkFycmF5LCB2YWx1
ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNl
dCgKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgYXNmbG9hdChpbnQpIiwKKyAgICAgICAgICAg
IGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goYml0d2lzZUNhc3QoSW50MzJBcnJh
eSwgRmxvYXQzMkFycmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgfSk7CisK
KyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgYXNmbG9h
dCh1aW50KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KGJpdHdpc2VDYXN0KFVpbnQzMkFycmF5LCBGbG9hdDMyQXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgp
KSk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMu
CisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGYxNnRv
ZjMyKHVpbnQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3goMCk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRo
aXMuCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgZjMy
dG9mMTYoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0
ci5ib3goMCk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAg
ICAgICAgICAgIm5hdGl2ZSB2b2lkIEFsbE1lbW9yeUJhcnJpZXJXaXRoR3JvdXBTeW5jKCkiLAor
ICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlv
biA9IGZ1bmN0aW9uKCkge307CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgIm5hdGl2ZSB2b2lkIERldmljZU1lbW9yeUJhcnJpZXJXaXRoR3Jv
dXBTeW5jKCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IGZ1bmN0aW9uKCkge307CisgICAgICAgICAgICB9KTsKKworICAgICAg
ICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSB2b2lkIEdyb3VwTWVtb3J5QmFy
cmllcldpdGhHcm91cFN5bmMoKSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gZnVuY3Rpb24oKSB7fTsKKyAgICAgICAgICAgIH0p
OworCisgICAgICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5cGVOYW1lIG9mIGFsbFZlY3RvclR5
cGVOYW1lcygpKSB7CiAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGBuYXRpdmUgdHlwZWRlZiAk
e25hdGl2ZVZlY3RvclR5cGVOYW1lfWAsIHR5cGUgPT4gewogICAgICAgICAgICAgICAgIHR5cGUu
aXNQcmltaXRpdmUgPSB0cnVlOwogICAgICAgICAgICAgfSk7CisgICAgICAgIH0KIAotICAgICAg
ICBmb3IgKGxldCBzd2l6emxlIG9mIFN3aXp6bGVPcC5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAg
IHRoaXMuX21hcC5zZXQoc3dpenpsZS50b1N0cmluZygpLCBmdW5jID0+IHN3aXp6bGUuaW5zdGFu
dGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CiAKLSAgICAgICAgZm9yIChsZXQgYm9vbE9wIG9m
IE9wZXJhdG9yQm9vbC5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoYm9v
bE9wLnRvU3RyaW5nKCksIGZ1bmMgPT4gYm9vbE9wLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24o
ZnVuYykpOworICAgICAgICBmb3IgKGxldCB2ZWN0b3JUeXBlIG9mIFZlY3RvckVsZW1lbnRUeXBl
cykgeworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZl
ICR7dmVjdG9yVHlwZX0gb3BlcmF0b3IueCgke3ZlY3RvclR5cGV9MilgLAorICAgICAgICAgICAg
ICAgIGZ1bmMgPT4gKG5ldyBCdWlsdGluVmVjdG9yR2V0dGVyKHZlY3RvclR5cGUsIDIsICJ4Iiwg
MCkpLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwogCi0gICAgICAgIGZvciAobGV0
IGFuZGVySW5kZXggb2YgT3BlcmF0b3JBbmRlckluZGV4ZXIuZnVuY3Rpb25zKCkpCi0gICAgICAg
ICAgICB0aGlzLl9tYXAuc2V0KGFuZGVySW5kZXgudG9TdHJpbmcoKSwgZnVuYyA9PiBhbmRlcklu
ZGV4Lmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworICAgICAgICAgICAgdGhpcy5f
bWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0gb3BlcmF0b3Iu
eSgke3ZlY3RvclR5cGV9MilgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4gKG5ldyBCdWlsdGlu
VmVjdG9yR2V0dGVyKHZlY3RvclR5cGUsIDIsICJ5IiwgMSkpLmluc3RhbnRpYXRlSW1wbGVtZW50
YXRpb24oZnVuYykpOwogCi0gICAgICAgIGZvciAobGV0IGNhc3Qgb2YgQnVpbHRpblZlY3RvckNv
bnN0cnVjdG9ycy5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoY2FzdC50
b1N0cmluZygpLCBmdW5jID0+IGNhc3QuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7
CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgJHt2
ZWN0b3JUeXBlfSBvcGVyYXRvci54KCR7dmVjdG9yVHlwZX0zKWAsCisgICAgICAgICAgICAgICAg
ZnVuYyA9PiAobmV3IEJ1aWx0aW5WZWN0b3JHZXR0ZXIodmVjdG9yVHlwZSwgMywgIngiLCAwKSku
aW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CiAKLSAgICAgICAgZm9yIChsZXQgZ2V0
dGVyIG9mIEJ1aWx0aW5WZWN0b3JJbmRleEdldHRlci5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAg
IHRoaXMuX21hcC5zZXQoZ2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMgPT4gZ2V0dGVyLmluc3RhbnRp
YXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAg
ICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0gb3BlcmF0b3IueSgke3ZlY3RvclR5
cGV9MylgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4gKG5ldyBCdWlsdGluVmVjdG9yR2V0dGVy
KHZlY3RvclR5cGUsIDMsICJ5IiwgMSkpLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykp
OwogCi0gICAgICAgIGZvciAobGV0IHNldHRlciBvZiBCdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIu
ZnVuY3Rpb25zKCkpCi0gICAgICAgICAgICB0aGlzLl9tYXAuc2V0KHNldHRlci50b1N0cmluZygp
LCBmdW5jID0+IHNldHRlci5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSAke3ZlY3RvclR5
cGV9IG9wZXJhdG9yLnooJHt2ZWN0b3JUeXBlfTMpYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+
IChuZXcgQnVpbHRpblZlY3RvckdldHRlcih2ZWN0b3JUeXBlLCAzLCAieiIsIDIpKS5pbnN0YW50
aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKIAotICAgICAgICBmb3IgKGxldCBlcXVhbGl0eU9w
ZXJhdG9yIG9mIEJ1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmZ1bmN0aW9ucygpKQotICAg
ICAgICAgICAgdGhpcy5fbWFwLnNldChlcXVhbGl0eU9wZXJhdG9yLnRvU3RyaW5nKCksIGZ1bmMg
PT4gZXF1YWxpdHlPcGVyYXRvci5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAg
ICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSAke3ZlY3Rv
clR5cGV9IG9wZXJhdG9yLngoJHt2ZWN0b3JUeXBlfTQpYCwKKyAgICAgICAgICAgICAgICBmdW5j
ID0+IChuZXcgQnVpbHRpblZlY3RvckdldHRlcih2ZWN0b3JUeXBlLCA0LCAieCIsIDApKS5pbnN0
YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKworICAgICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0gb3BlcmF0b3IueSgke3Zl
Y3RvclR5cGV9NClgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4gKG5ldyBCdWlsdGluVmVjdG9y
R2V0dGVyKHZlY3RvclR5cGUsIDQsICJ5IiwgMSkpLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24o
ZnVuYykpOworCisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBu
YXRpdmUgJHt2ZWN0b3JUeXBlfSBvcGVyYXRvci56KCR7dmVjdG9yVHlwZX00KWAsCisgICAgICAg
ICAgICAgICAgZnVuYyA9PiAobmV3IEJ1aWx0aW5WZWN0b3JHZXR0ZXIodmVjdG9yVHlwZSwgNCwg
InoiLCAyKSkuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CiAKLSAgICAgICAgZm9y
IChsZXQgZ2V0dGVyIG9mIEJ1aWx0aW5WZWN0b3JHZXR0ZXIuZnVuY3Rpb25zKCkpCi0gICAgICAg
ICAgICB0aGlzLl9tYXAuc2V0KGdldHRlci50b1N0cmluZygpLCBmdW5jID0+IGdldHRlci5pbnN0
YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQo
CisgICAgICAgICAgICAgICAgYG5hdGl2ZSAke3ZlY3RvclR5cGV9IG9wZXJhdG9yLncoJHt2ZWN0
b3JUeXBlfTQpYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3Rvckdl
dHRlcih2ZWN0b3JUeXBlLCA0LCAidyIsIDMpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1
bmMpKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAg
ICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0yIG9wZXJhdG9yLng9KCR7dmVjdG9yVHlwZX0y
LCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZl
Y3RvclNldHRlcih2ZWN0b3JUeXBlLCAyLCAieCIsIDApKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0
aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAg
ICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0yIG9wZXJhdG9yLnk9KCR7dmVjdG9y
VHlwZX0yLCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVp
bHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCAyLCAieSIsIDEpKS5pbnN0YW50aWF0ZUltcGxl
bWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0zIG9wZXJhdG9yLng9KCR7
dmVjdG9yVHlwZX0zLCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChu
ZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCAzLCAieCIsIDApKS5pbnN0YW50aWF0
ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5f
bWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0zIG9wZXJhdG9y
Lnk9KCR7dmVjdG9yVHlwZX0zLCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5j
ID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCAzLCAieSIsIDEpKS5pbnN0
YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAg
dGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0zIG9w
ZXJhdG9yLno9KCR7dmVjdG9yVHlwZX0zLCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAg
ICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCAzLCAieiIsIDIp
KS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlw
ZX00IG9wZXJhdG9yLng9KCR7dmVjdG9yVHlwZX00LCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAg
ICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCA0LCAi
eCIsIDApKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAor
ICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVj
dG9yVHlwZX00IG9wZXJhdG9yLnk9KCR7dmVjdG9yVHlwZX00LCR7dmVjdG9yVHlwZX0pYCwKKyAg
ICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBl
LCA0LCAieSIsIDEpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAg
ICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZl
ICR7dmVjdG9yVHlwZX00IG9wZXJhdG9yLno9KCR7dmVjdG9yVHlwZX00LCR7dmVjdG9yVHlwZX0p
YCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0
b3JUeXBlLCA0LCAieiIsIDIpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAg
ICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBg
bmF0aXZlICR7dmVjdG9yVHlwZX00IG9wZXJhdG9yLnc9KCR7dmVjdG9yVHlwZX00LCR7dmVjdG9y
VHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRl
cih2ZWN0b3JUeXBlLCA0LCAidyIsIDMpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMp
KTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHN3aXp6bGUgb2YgU3dpenpsZU9wLmZ1
bmN0aW9ucygpKQorICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzd2l6emxlLnRvU3RyaW5nKCks
IGZ1bmMgPT4gc3dpenpsZS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKworICAg
ICAgICBmb3IgKGxldCBjYXN0IG9mIEJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuZnVuY3Rpb25z
KCkpCisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGNhc3QudG9TdHJpbmcoKSwgZnVuYyA9PiBj
YXN0Lmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwogCi0gICAgICAgIGZvciAobGV0
IHNldHRlciBvZiBCdWlsdGluVmVjdG9yU2V0dGVyLmZ1bmN0aW9ucygpKQotICAgICAgICAgICAg
dGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwgZnVuYyA9PiBzZXR0ZXIuaW5zdGFudGlh
dGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisgICAgICAgIGZvciAobGV0IGVxdWFsaXR5T3BlcmF0
b3Igb2YgQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuZnVuY3Rpb25zKCkpCisgICAgICAg
ICAgICB0aGlzLl9tYXAuc2V0KGVxdWFsaXR5T3BlcmF0b3IudG9TdHJpbmcoKSwgZnVuYyA9PiBl
cXVhbGl0eU9wZXJhdG9yLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwogICAgIH0K
LSAgICAKKwogICAgIGFkZCh0aGluZykKICAgICB7CiAgICAgICAgIGxldCBpbnRyaW5zaWMgPSB0
aGlzLl9tYXAuZ2V0KHRoaW5nLnRvU3RyaW5nKCkpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4VHlwZS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL01hdHJpeFR5cGUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2QxZWY2NDAzYzA3OTI2ZjExMTNlZTY4
ZTRmNWIzMGU5YmMzNzA0MAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL01hdHJpeFR5cGUuanMKQEAgLTAsMCArMSw2MiBAQAorLyoKKyAqIENvcHlyaWdo
dCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQg
QU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisidXNlIHN0cmljdCI7CisKK2NsYXNzIE1hdHJp
eFR5cGUgZXh0ZW5kcyBOYXRpdmVUeXBlIHsKKyAgICBjb25zdHJ1Y3RvcihvcmlnaW4sIG5hbWUs
IHR5cGVBcmd1bWVudHMpCisgICAgeworICAgICAgICBzdXBlcihvcmlnaW4sIG5hbWUsIHR5cGVB
cmd1bWVudHMpOworICAgIH0KKworICAgIGdldCBlbGVtZW50VHlwZSgpIHsgcmV0dXJuIHRoaXMu
dHlwZUFyZ3VtZW50c1swXTsgfQorICAgIGdldCBudW1Sb3dzKCkgeyByZXR1cm4gdGhpcy50eXBl
QXJndW1lbnRzWzFdOyB9CisgICAgZ2V0IG51bUNvbHVtbnMoKSB7IHJldHVybiB0aGlzLnR5cGVB
cmd1bWVudHNbMl07IH0KKyAgICBnZXQgbnVtUm93c1ZhbHVlKCkgeyByZXR1cm4gdGhpcy5udW1S
b3dzLnZhbHVlOyB9CisgICAgZ2V0IG51bUNvbHVtbnNWYWx1ZSgpIHsgcmV0dXJuIHRoaXMubnVt
Q29sdW1ucy52YWx1ZTsgfQorICAgIGdldCBzaXplKCkgeyByZXR1cm4gdGhpcy5lbGVtZW50VHlw
ZS5zaXplICogdGhpcy5udW1Sb3dzVmFsdWUgKiB0aGlzLm51bUNvbHVtbnNWYWx1ZTsgfQorCisg
ICAgdW5pZnlJbXBsKHVuaWZpY2F0aW9uQ29udGV4dCwgb3RoZXIpCisgICAgeworICAgICAgICBp
ZiAoIShvdGhlciBpbnN0YW5jZW9mIE1hdHJpeFR5cGUpKQorICAgICAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgICAgIGlmICh0aGlzLm51bVJvd3NWYWx1ZSAhPT0gb3RoZXIubnVtUm93c1Zh
bHVlIHx8IHRoaXMucnVuQ29sdW1uc1ZhbHVlICE9PSBvdGhlci5udW1Db2x1bW5zVmFsdWUpCisg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFR5
cGUudW5pZnkodW5pZmljYXRpb25Db250ZXh0LCBvdGhlci5lbGVtZW50VHlwZSk7CisgICAgfQor
CisgICAgcG9wdWxhdGVEZWZhdWx0VmFsdWUoYnVmZmVyLCBvZmZzZXQpCisgICAgeworICAgICAg
ICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMubnVtUm93c1ZhbHVlICogdGhpcy5ydW5Db2x1bW5z
VmFsdWU7ICsraSkKKyAgICAgICAgICAgIHRoaXMuZWxlbWVudFR5cGUucG9wdWxhdGVEZWZhdWx0
VmFsdWUoYnVmZmVyLCBvZmZzZXQgKyBpICogdGhpcy5lbGVtZW50VHlwZS5zaXplKTsKKyAgICB9
CisKKyAgICB0b1N0cmluZygpCisgICAgeworICAgICAgICByZXR1cm4gYG5hdGl2ZSB0eXBlZGVm
IG1hdHJpeDwke3RoaXMuZWxlbWVudFR5cGV9LCAke3RoaXMubnVtUm93c1ZhbHVlfSwgJHt0aGlz
Lm51bUNvbHVtbnNWYWx1ZX0+YDsKKyAgICB9Cit9CisKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL05hbWVDb250ZXh0LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvTmFtZUNvbnRleHQuanMKaW5kZXggMWJhYjNmYzU2MDI2MDEwNzdiM2ZhODg1YTYw
NTRhYjg2MGIwYTE5My4uYzg5OTY4Yzc3OTYwN2I3Y2FiY2M2YTVmOTY5YjRhYjkxM2U3MjYzZSAx
MDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZUNvbnRleHQuanMK
KysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZUNvbnRleHQuanMKQEAgLTY5
LDExICs2OSwzMyBAQCBjbGFzcyBOYW1lQ29udGV4dCB7CiAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgIH0KIAorICAgICAgICBpZiAodGhpbmcua2luZCA9PSBUeXBlKSB7CisgICAgICAgICAg
ICB0aGlzLl9zZXQuYWRkKHRoaW5nKTsKKyAgICAgICAgICAgIGlmICh0aGluZy50eXBlQXJndW1l
bnRzICYmIHRoaW5nLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDApIHsKKyAgICAgICAgICAgICAg
ICBsZXQgYXJyYXkgPSB0aGlzLl9tYXAuZ2V0KHRoaW5nLm5hbWUpOworICAgICAgICAgICAgICAg
IGlmICghYXJyYXkpIHsKKyAgICAgICAgICAgICAgICAgICAgYXJyYXkgPSBbXTsKKyAgICAgICAg
ICAgICAgICAgICAgYXJyYXkua2luZCA9IFR5cGU7CisgICAgICAgICAgICAgICAgICAgIHRoaXMu
X21hcC5zZXQodGhpbmcubmFtZSwgYXJyYXkpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICAgICBpZiAoYXJyYXkua2luZCAhPSBUeXBlKQorICAgICAgICAgICAgICAgICAgICB0aHJv
dyBuZXcgV1R5cGVFcnJvcih0aGluZy5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiQ2Fubm90IHJldXNl
IHR5cGUgbmFtZSBmb3IgZnVuY3Rpb246ICIgKyB0aGluZy5uYW1lKTsKKyAgICAgICAgICAgICAg
ICBhcnJheS5wdXNoKHRoaW5nKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgICAgIGlmICh0aGlzLl9tYXAuaGFzKHRoaW5nLm5hbWUp
KQorICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcih0aGluZy5vcmlnaW4u
b3JpZ2luU3RyaW5nLCAiRHVwbGljYXRlIG5hbWU6ICIgKyB0aGluZy5uYW1lKTsKKyAgICAgICAg
ICAgICAgICB0aGlzLl9tYXAuc2V0KHRoaW5nLm5hbWUsIHRoaW5nKTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICAKICAgICAgICAgaWYgKHRo
aXMuX21hcC5oYXModGhpbmcubmFtZSkpCiAgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJv
cih0aGluZy5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiRHVwbGljYXRlIG5hbWU6ICIgKyB0aGluZy5u
YW1lKTsKIAogICAgICAgICB0aGlzLl9zZXQuYWRkKHRoaW5nKTsKICAgICAgICAgdGhpcy5fbWFw
LnNldCh0aGluZy5uYW1lLCB0aGluZyk7CisKICAgICB9CiAgICAgCiAgICAgZ2V0KGtpbmQsIG5h
bWUpCkBAIC0xMDIsNiArMTI0LDEwIEBAIGNsYXNzIE5hbWVDb250ZXh0IHsKICAgICAgICAgICAg
IGZvciAobGV0IGZ1bmMgb2YgdGhpbmcpCiAgICAgICAgICAgICAgICAgeWllbGQgZnVuYzsKICAg
ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfSBlbHNlIGlmICh0aGluZy5raW5kID09PSBUeXBl
ICYmICh0aGluZyBpbnN0YW5jZW9mIEFycmF5KSkgeworICAgICAgICAgICAgZm9yIChsZXQgdHlw
ZSBvZiB0aGluZykKKyAgICAgICAgICAgICAgICB5aWVsZCB0eXBlOworICAgICAgICAgICAgcmV0
dXJuOwogICAgICAgICB9CiAgICAgICAgIHlpZWxkIHRoaW5nOwogICAgIH0KQEAgLTE2Myw4ICsx
ODksOCBAQCBjbGFzcyBOYW1lQ29udGV4dCB7CiAgICAgewogICAgICAgICBmb3IgKGxldCB2YWx1
ZSBvZiB0aGlzLl9tYXAudmFsdWVzKCkpIHsKICAgICAgICAgICAgIGlmICh2YWx1ZSBpbnN0YW5j
ZW9mIEFycmF5KSB7Ci0gICAgICAgICAgICAgICAgZm9yIChsZXQgZnVuYyBvZiB2YWx1ZSkKLSAg
ICAgICAgICAgICAgICAgICAgeWllbGQgZnVuYzsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCB0
aGluZyBvZiB2YWx1ZSkKKyAgICAgICAgICAgICAgICAgICAgeWllbGQgdGhpbmc7CiAgICAgICAg
ICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICB5aWVsZCB2YWx1
ZTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hbWVSZXNvbHZl
ci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hbWVSZXNvbHZlci5qcwppbmRl
eCBmNjE1YTJmYjRlODdkYzFkZWI3YjAxYjU3MmZiN2FmNjI2YWJkMDk1Li45YTA5OWY0ODVlNmU5
MjdlMTY0MzdiYmY4MjY0MWY2MWU0NTI1Y2YxIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9OYW1lUmVzb2x2ZXIuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvTmFtZVJlc29sdmVyLmpzCkBAIC0xMjAsMTIgKzEyMCwxOSBAQCBjbGFzcyBOYW1l
UmVzb2x2ZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAKICAgICB2aXNpdFR5cGVSZWYobm9kZSkK
ICAgICB7CisgICAgICAgIHN1cGVyLnZpc2l0VHlwZVJlZihub2RlKTsKICAgICAgICAgbGV0IHR5
cGUgPSBub2RlLnR5cGU7CiAgICAgICAgIGlmICghdHlwZSkgewogICAgICAgICAgICAgdHlwZSA9
IHRoaXMuX25hbWVDb250ZXh0LmdldChUeXBlLCBub2RlLm5hbWUpOwogICAgICAgICAgICAgaWYg
KCF0eXBlKQogICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKG5vZGUub3JpZ2lu
Lm9yaWdpblN0cmluZywgIkNvdWxkIG5vdCBmaW5kIHR5cGUgbmFtZWQgIiArIG5vZGUubmFtZSk7
Ci0gICAgICAgICAgICBub2RlLnR5cGUgPSB0eXBlOworICAgICAgICAgICAgaWYgKHR5cGUgaW5z
dGFuY2VvZiBBcnJheSkgeworICAgICAgICAgICAgICAgIC8vIFR5cGUgdW5pZmljYXRpb24gcmVx
dWlyZXMgdGhlIC50eXBlIHZhbHVlIHRvIGJlIHNldCBhbHJlYWR5LCBzbyB3ZSBjYW4gZWFnZXJs
eSBzZXQgaXQgbm93LgorICAgICAgICAgICAgICAgIGZvciAobGV0IG92ZXJsb2FkIG9mIHR5cGUp
CisgICAgICAgICAgICAgICAgICAgIE5vZGUudmlzaXQob3ZlcmxvYWQsIHRoaXMpOworICAgICAg
ICAgICAgICAgIG5vZGUucmVzb2x2ZSh0eXBlKTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAg
ICAgICAgICAgIG5vZGUudHlwZSA9IHR5cGU7CiAgICAgICAgIH0KICAgICB9CiAgICAgCkBAIC0y
MDgsOSArMjE1LDQgQEAgY2xhc3MgTmFtZVJlc29sdmVyIGV4dGVuZHMgVmlzaXRvciB7CiAgICAg
ICAgIAogICAgICAgICBzdXBlci52aXNpdENhbGxFeHByZXNzaW9uKG5vZGUpOwogICAgIH0KLQot
ICAgIHZpc2l0VmVjdG9yVHlwZShub2RlKQotICAgIHsKLSAgICAgICAgbm9kZS5lbGVtZW50VHlw
ZS52aXNpdCh0aGlzKTsKLSAgICB9CiB9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
TmF0aXZlVHlwZS5qcwppbmRleCBlMmQ4NTFjYmNjYmEzYTk3MjM0YzdiZDM5MjkwNzgyOWNhOWUw
NWYyLi5iMzY4YTJlOGIyNGY1NDhlYWI4OGEyODI0YjQ5NWJlMjNjODdjYjg1IDEwMDY0NAotLS0g
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpzCisrKyBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hdGl2ZVR5cGUuanMKQEAgLTI1LDExICsyNSwxNCBA
QAogInVzZSBzdHJpY3QiOwogCiBjbGFzcyBOYXRpdmVUeXBlIGV4dGVuZHMgVHlwZSB7Ci0gICAg
Y29uc3RydWN0b3Iob3JpZ2luLCBuYW1lKQorICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwgbmFtZSwg
dHlwZUFyZ3VtZW50cykKICAgICB7CisgICAgICAgIGlmICghKHR5cGVBcmd1bWVudHMgaW5zdGFu
Y2VvZiBBcnJheSkpCisgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoInR5cGUgcGFyYW1ldGVy
cyBub3QgYXJyYXk6ICIgKyB0eXBlQXJndW1lbnRzKTsKICAgICAgICAgc3VwZXIoKTsKICAgICAg
ICAgdGhpcy5fb3JpZ2luID0gb3JpZ2luOwogICAgICAgICB0aGlzLl9uYW1lID0gbmFtZTsKKyAg
ICAgICAgdGhpcy5fdHlwZUFyZ3VtZW50cyA9IHR5cGVBcmd1bWVudHM7CiAgICAgICAgIHRoaXMu
X2lzTnVtYmVyID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX2lzSW50ID0gZmFsc2U7CiAgICAgICAg
IHRoaXMuX2lzRmxvYXRpbmcgPSBmYWxzZTsKQEAgLTM4LDYgKzQxLDcgQEAgY2xhc3MgTmF0aXZl
VHlwZSBleHRlbmRzIFR5cGUgewogICAgIAogICAgIGdldCBvcmlnaW4oKSB7IHJldHVybiB0aGlz
Ll9vcmlnaW47IH0KICAgICBnZXQgbmFtZSgpIHsgcmV0dXJuIHRoaXMuX25hbWU7IH0KKyAgICBn
ZXQgdHlwZUFyZ3VtZW50cygpIHsgcmV0dXJuIHRoaXMuX3R5cGVBcmd1bWVudHM7IH0KICAgICBn
ZXQgaXNOYXRpdmUoKSB7IHJldHVybiB0cnVlOyB9CiAgICAgCiAgICAgLy8gV2UgbGV0IEludHJp
bnNpY3MuanMgc2V0IHRoZXNlIGFzIGl0IGxpa2VzLgpAQCAtNTIsMTkgKzU2LDIwIEBAIGNsYXNz
IE5hdGl2ZVR5cGUgZXh0ZW5kcyBUeXBlIHsKICAgICAKICAgICB0b1N0cmluZygpCiAgICAgewot
ICAgICAgICByZXR1cm4gYG5hdGl2ZSB0eXBlZGVmICR7dGhpcy5uYW1lfWA7CisgICAgICAgIGxl
dCByZXN1bHQgPSBgbmF0aXZlIHR5cGVkZWYgJHt0aGlzLm5hbWV9YDsKKyAgICAgICAgaWYgKHRo
aXMudHlwZUFyZ3VtZW50cy5sZW5ndGgpCisgICAgICAgICAgICByZXN1bHQgKz0gIjwiICsgdGhp
cy50eXBlQXJndW1lbnRzLmpvaW4oIiwiKSArICI+IjsKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsK
ICAgICB9CiAgICAgCiAgICAgc3RhdGljIGNyZWF0ZShvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVu
dHMpCiAgICAgewotICAgICAgICAvLyBGSVhNRTogRm9yIG5hdGl2ZSB0eXBlcyBsaWtlIFRleHR1
cmUxRCB0aGlzIHNob3VsZCByZXNvbHZlIHRoZSB0eXBlIHRvIHNvbWV0aGluZyBjb25jcmV0ZSBi
eSBjaGFuZ2luZyB0aGUgdHlwZSBuYW1lLgotICAgICAgICBpZiAodHlwZUFyZ3VtZW50cy5sZW5n
dGgpCi0gICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcihvcmlnaW4ub3JpZ2luU3RyaW5n
LCBgJHtuYW1lfTwke3R5cGVBcmd1bWVudHMuam9pbigiLCIpfT46IFN1cHBvcnQgZm9yIG5hdGl2
ZSB0eXBlcyB3aXRoIHR5cGUgYXJndW1lbnRzIGlzIGN1cnJlbnRseSB1bmltcGxlbWVudGVkLmAp
OworICAgICAgICBpZiAobmFtZSA9PSAidmVjdG9yIikKKyAgICAgICAgICAgIHJldHVybiBuZXcg
VmVjdG9yVHlwZShvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVudHMpOworICAgICAgICBpZiAobmFt
ZSA9PSAibWF0cml4IikKKyAgICAgICAgICAgIHJldHVybiBuZXcgTWF0cml4VHlwZShvcmlnaW4s
IG5hbWUsIHR5cGVBcmd1bWVudHMpOwogCi0gICAgICAgIGlmIChhbGxWZWN0b3JUeXBlTmFtZXMo
KS5pbmRleE9mKG5hbWUpID4gLTEpCi0gICAgICAgICAgICByZXR1cm4gbmV3IFZlY3RvclR5cGUo
b3JpZ2luLCBuYW1lKTsKLQotICAgICAgICByZXR1cm4gbmV3IE5hdGl2ZVR5cGUob3JpZ2luLCBu
YW1lKTsKKyAgICAgICAgcmV0dXJuIG5ldyBOYXRpdmVUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFy
Z3VtZW50cyk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXguanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9PcGVyYXRvckFuZGVySW5kZXguanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDY3MDM3MWZiOTBmMmExZmQxNWMyZGRmNmM0YTM5NmMwZjIzOWNlYmYuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4LmpzCisrKyAvZGV2L251bGwKQEAgLTEsNzEgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICog
Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkK
LSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0idXNlIHN0cmlj
dCI7Ci0KLWNsYXNzIE9wZXJhdG9yQW5kZXJJbmRleGVyIHsKLSAgICBjb25zdHJ1Y3RvcihiYXNl
VHlwZU5hbWUsIGFkZHJlc3NTcGFjZSkKLSAgICB7Ci0gICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFt
ZSA9IGJhc2VUeXBlTmFtZTsKLSAgICAgICAgdGhpcy5fYWRkcmVzc1NwYWNlID0gYWRkcmVzc1Nw
YWNlOwotICAgIH0KLQotICAgIGdldCBhZGRyZXNzU3BhY2UoKSB7IHJldHVybiB0aGlzLl9hZGRy
ZXNzU3BhY2U7IH0KLSAgICBnZXQgYmFzZVR5cGVOYW1lKCkgeyByZXR1cm4gdGhpcy5fYmFzZVR5
cGVOYW1lOyB9Ci0KLSAgICB0b1N0cmluZygpCi0gICAgewotICAgICAgICByZXR1cm4gYG5hdGl2
ZSAke3RoaXMuYmFzZVR5cGVOYW1lfSogJHt0aGlzLmFkZHJlc3NTcGFjZX0gb3BlcmF0b3ImW10o
JHt0aGlzLmJhc2VUeXBlTmFtZX1bXSAke3RoaXMuYWRkcmVzc1NwYWNlfSx1aW50KWA7Ci0gICAg
fQotCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewotICAgICAgICBpZiAoIXRoaXMuX2Z1
bmN0aW9ucykgewotICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zID0gW107Ci0KLSAgICAgICAg
ICAgIGNvbnN0IHR5cGVOYW1lcyA9IFsgInVpbnQiLCAiaW50IiwgImZsb2F0IiwgImJvb2wiIF0u
Y29uY2F0KGFsbFZlY3RvclR5cGVOYW1lcygpKTsKLSAgICAgICAgICAgIGNvbnN0IGFkZHJlc3NT
cGFjZXMgPSBbICJ0aHJlYWQiLCAidGhyZWFkZ3JvdXAiLCAiZGV2aWNlIiwgImNvbnN0YW50IiBd
OwotCi0gICAgICAgICAgICBmb3IgKGxldCBhZGRyZXNzU3BhY2Ugb2YgYWRkcmVzc1NwYWNlcykg
ewotICAgICAgICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIHR5cGVOYW1lcykKLSAgICAg
ICAgICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zLnB1c2gobmV3IE9wZXJhdG9yQW5kZXJJbmRl
eGVyKHR5cGVOYW1lLCBhZGRyZXNzU3BhY2UpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQot
ICAgICAgICByZXR1cm4gdGhpcy5fZnVuY3Rpb25zOwotICAgIH0KLQotICAgIGluc3RhbnRpYXRl
SW1wbGVtZW50YXRpb24oZnVuYykKLSAgICB7Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24g
PSAoW3JlZiwgaW5kZXhdLCBub2RlKSA9PiB7Ci0gICAgICAgICAgICByZWYgPSByZWYubG9hZFZh
bHVlKCk7Ci0gICAgICAgICAgICBpZiAoIXJlZikKLSAgICAgICAgICAgICAgICB0aHJvdyBuZXcg
V1RyYXBFcnJvcihub2RlLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJOdWxsIGRlcmVmZXJlbmNlIik7
Ci0gICAgICAgICAgICBpbmRleCA9IGluZGV4LmxvYWRWYWx1ZSgpOwotICAgICAgICAgICAgaWYg
KGluZGV4ID4gcmVmLmxlbmd0aCkKLSAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBFcnJv
cihub2RlLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJBcnJheSBpbmRleCAiICsgaW5kZXggKyAiIGlz
IG91dCBvZiBib3VuZHMgb2YgIiArIHJlZik7Ci0gICAgICAgICAgICByZXR1cm4gRVB0ci5ib3go
cmVmLnB0ci5wbHVzKGluZGV4ICogbm9kZS5hcmd1bWVudFR5cGVzWzBdLmVsZW1lbnRUeXBlLnNp
emUpKTsKLSAgICAgICAgfTsKLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlz
OwotICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXhlci5qcyBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRleGVyLmpzCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjAxMmYwNjc4MGY3YWQ5MzIyZDZjN2JlNDc5MGNkNDQ2MTgxZjg5YjQKLS0tIC9kZXYvbnVs
bAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXhl
ci5qcwpAQCAtMCwwICsxLDU1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworY2xhc3MgT3BlcmF0b3JBbmRlckluZGV4ZXIgewor
ICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwgYWRkcmVzc1NwYWNlKQorICAgIHsKKyAgICAg
ICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1lOworICAgICAgICB0aGlzLl9hZGRy
ZXNzU3BhY2UgPSBhZGRyZXNzU3BhY2U7CisgICAgfQorCisgICAgZ2V0IGFkZHJlc3NTcGFjZSgp
IHsgcmV0dXJuIHRoaXMuX2FkZHJlc3NTcGFjZTsgfQorICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7
IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KKworICAgIHRvU3RyaW5nKCkKKyAgICB7Cisg
ICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlwZU5hbWV9KiAke3RoaXMuYWRkcmVz
c1NwYWNlfSBvcGVyYXRvciZbXSgke3RoaXMuYmFzZVR5cGVOYW1lfVtdICR7dGhpcy5hZGRyZXNz
U3BhY2V9LHVpbnQpYDsKKyAgICB9CisKKyAgICBpbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1
bmMpCisgICAgeworICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtyZWYsIGluZGV4XSwg
bm9kZSkgPT4geworICAgICAgICAgICAgcmVmID0gcmVmLmxvYWRWYWx1ZSgpOworICAgICAgICAg
ICAgaWYgKCFyZWYpCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUcmFwRXJyb3Iobm9kZS5v
cmlnaW4ub3JpZ2luU3RyaW5nLCAiTnVsbCBkZXJlZmVyZW5jZSIpOworICAgICAgICAgICAgaW5k
ZXggPSBpbmRleC5sb2FkVmFsdWUoKTsKKyAgICAgICAgICAgIGlmIChpbmRleCA+IHJlZi5sZW5n
dGgpCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUcmFwRXJyb3Iobm9kZS5vcmlnaW4ub3Jp
Z2luU3RyaW5nLCAiQXJyYXkgaW5kZXggIiArIGluZGV4ICsgIiBpcyBvdXQgb2YgYm91bmRzIG9m
ICIgKyByZWYpOworICAgICAgICAgICAgcmV0dXJuIEVQdHIuYm94KHJlZi5wdHIucGx1cyhpbmRl
eCAqIG5vZGUuYXJndW1lbnRUeXBlc1swXS5lbGVtZW50VHlwZS5zaXplKSk7CisgICAgICAgIH07
CisgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKKyAgICB9Cit9CmRpZmYg
LS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckJvb2wuanMgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckJvb2wuanMKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDU4YmIwZTA5YjgwYmVlMTA3MDg5YjFjOWQyMDBjYmM2OGE1Y2I5
ZDMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JCb29sLmpzCisrKyAvZGV2L251bGwKQEAg
LTEsNjggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBt
ZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUg
SU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF
Q1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg
REFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBP
RiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAq
IFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9O
IEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNU
IExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lT
RSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICov
Ci0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIE9wZXJhdG9yQm9vbCB7Ci0gICAgY29uc3RydWN0b3Io
YmFzZVR5cGVOYW1lKQotICAgIHsKLSAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5
cGVOYW1lOwotICAgIH0KLQotICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9i
YXNlVHlwZU5hbWU7IH0KLQotICAgIHRvU3RyaW5nKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBg
bmF0aXZlIG9wZXJhdG9yIGJvb2woJHt0aGlzLmJhc2VUeXBlTmFtZX0pYDsKLSAgICB9Ci0KLSAg
ICBzdGF0aWMgZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIC8vIEZJWE1FOiBUaGVzZSBvcGVy
YXRvcnMgc2hvdWxkIGJlIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5IHdoZXJlIHBvc3NpYmxlLgot
ICAgICAgICBpZiAoIU9wZXJhdG9yQm9vbC5fZnVuY3Rpb25zKSB7Ci0gICAgICAgICAgICBPcGVy
YXRvckJvb2wuX2Z1bmN0aW9ucyA9IFtdOwotCi0gICAgICAgICAgICAvLyBib29sIGlzIG5vdCBp
bmNsdWRlZCBiZWNhdXNlIHRoaXMgaXMgZ2VuZXJhdGVkIGJ5IHRoZSBjb3B5IGNvbnN0cnVjdG9y
LgotICAgICAgICAgICAgLy8gRklYTUU6IEluY2x1ZGUgYWxsIG5hdGl2ZSB0eXBlcy4KLSAgICAg
ICAgICAgIGNvbnN0IHR5cGVOYW1lcyA9IFsgInVjaGFyIiwgInVpbnQiLCAiaW50IiwgImZsb2F0
IiBdLmNvbmNhdChhbGxWZWN0b3JUeXBlTmFtZXMoKSk7Ci0KLSAgICAgICAgICAgIGZvciAobGV0
IHR5cGVOYW1lIG9mIHR5cGVOYW1lcykKLSAgICAgICAgICAgICAgICBPcGVyYXRvckJvb2wuX2Z1
bmN0aW9ucy5wdXNoKG5ldyBPcGVyYXRvckJvb2wodHlwZU5hbWUpKTsKLSAgICAgICAgfQotICAg
ICAgICByZXR1cm4gT3BlcmF0b3JCb29sLl9mdW5jdGlvbnM7Ci0gICAgfQotCi0gICAgaW5zdGFu
dGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQotICAgIHsKLSAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbcmVmXSwgbm9kZSkgPT4gewotICAgICAgICAgICAgY29uc3Qgc2l6ZSA9IG5vZGUu
YXJndW1lbnRUeXBlc1swXS5zaXplOwotICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBz
aXplOyArK2kpIHsKLSAgICAgICAgICAgICAgICBpZiAoISFyZWYuZ2V0KGkpKQotICAgICAgICAg
ICAgICAgICAgICByZXR1cm4gRVB0ci5ib3godHJ1ZSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAg
ICAgICByZXR1cm4gRVB0ci5ib3goZmFsc2UpOwotICAgICAgICB9Ci0gICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb25EYXRhID0gdGhpczsKLSAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5q
cyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ByZXBhcmUuanMKaW5kZXggN2IxNjEz
OWU5NWI4MWUyZThkYTgzNTRiZDhjMTc5YjE5MGJhZWZhMC4uODM0NTkyZDM2ZjM0NTdkZmE4NmI1
NzUxYmI3MjYyNDcyYTNmMGEyZCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvUHJlcGFyZS5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVw
YXJlLmpzCkBAIC00MCwyMCArNDAsMTkgQEAgbGV0IHByZXBhcmUgPSAoKCkgPT4gewogICAgICAg
ICB9CiAgICAgICAgIAogICAgICAgICBmb2xkQ29uc3RleHBycyhwcm9ncmFtKTsKLSAgICAgICAg
cmVtb3ZlVHlwZUFyZ3VtZW50cyhwcm9ncmFtKTsKIAogICAgICAgICBsZXQgbmFtZVJlc29sdmVy
ID0gY3JlYXRlTmFtZVJlc29sdmVyKHByb2dyYW0pOwogICAgICAgICByZXNvbHZlTmFtZXNJblR5
cGVzKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7CiAgICAgICAgIHJlc29sdmVUeXBlRGVmc0luVHlw
ZXMocHJvZ3JhbSk7CiAgICAgICAgIGNoZWNrUmVjdXJzaXZlVHlwZXMocHJvZ3JhbSk7CiAgICAg
ICAgIHN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMocHJvZ3JhbSk7Ci0gICAgICAgIHN5bnRoZXNp
emVPcGVyYXRvckJvb2wocHJvZ3JhbSk7CiAgICAgICAgIHN5bnRoZXNpemVFbnVtRnVuY3Rpb25z
KHByb2dyYW0pOwogICAgICAgICBzeW50aGVzaXplQXJyYXlPcGVyYXRvckxlbmd0aChwcm9ncmFt
KTsKICAgICAgICAgc3ludGhlc2l6ZUNvcHlDb25zdHJ1Y3Rvck9wZXJhdG9yKHByb2dyYW0pOwog
ICAgICAgICBzeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IocHJvZ3JhbSk7CiAg
ICAgICAgIHJlc29sdmVOYW1lc0luRnVuY3Rpb25zKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7CiAg
ICAgICAgIHJlc29sdmVUeXBlRGVmc0luRnVuY3Rpb25zKHByb2dyYW0pOworICAgICAgICBjaGVj
a1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9ncmFtKTsKICAgICAgICAgCiAgICAgICAgIGNoZWNrKHBy
b2dyYW0pOwogICAgICAgICBjaGVja0xpdGVyYWxUeXBlcyhwcm9ncmFtKTsKQEAgLTY2LDYgKzY1
LDcgQEAgbGV0IHByZXBhcmUgPSAoKCkgPT4gewogICAgICAgICBjaGVja0xvb3BzKHByb2dyYW0p
OwogICAgICAgICBjaGVja1JlY3Vyc2lvbihwcm9ncmFtKTsKICAgICAgICAgY2hlY2tQcm9ncmFt
V3JhcHBlZChwcm9ncmFtKTsKKyAgICAgICAgY2hlY2tUeXBlc1dpdGhBcmd1bWVudHMocHJvZ3Jh
bSk7CiAgICAgICAgIGZpbmRIaWdoWm9tYmllcyhwcm9ncmFtKTsKICAgICAgICAgcHJvZ3JhbS52
aXNpdChuZXcgU3RydWN0TGF5b3V0QnVpbGRlcigpKTsKICAgICAgICAgaW5saW5lKHByb2dyYW0p
OwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUHJvZ3JhbS5qcyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Byb2dyYW0uanMKaW5kZXggMDY2MjVkOThm
YzQxZTc0YzkzZGVjZTgwYjcwY2U1NWM3YWY3NGRkNS4uYWMxZGVmYjRmYmFhYTZlOGUxMzQyOTcz
NGNjZjQ5MTUzMzliYTUzOSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvUHJvZ3JhbS5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFt
LmpzCkBAIC00OCwxOSArNDgsMjUgQEAgY2xhc3MgUHJvZ3JhbSBleHRlbmRzIE5vZGUgewogICAg
ICAgICBpZiAoc3RhdGVtZW50IGluc3RhbmNlb2YgRnVuYykgewogICAgICAgICAgICAgbGV0IGFy
cmF5ID0gdGhpcy5fZnVuY3Rpb25zLmdldChzdGF0ZW1lbnQubmFtZSk7CiAgICAgICAgICAgICBp
ZiAoIWFycmF5KQotICAgICAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucy5zZXQoc3RhdGVtZW50
Lm5hbWUsIGFycmF5ID0gW10pOworICAgICAgICAgICAgICAgIHRoaXMuZnVuY3Rpb25zLnNldChz
dGF0ZW1lbnQubmFtZSwgYXJyYXkgPSBbXSk7CiAgICAgICAgICAgICBhcnJheS5wdXNoKHN0YXRl
bWVudCk7Ci0gICAgICAgIH0gZWxzZSBpZiAoc3RhdGVtZW50IGluc3RhbmNlb2YgVHlwZSkKLSAg
ICAgICAgICAgIHRoaXMuX3R5cGVzLnNldChzdGF0ZW1lbnQubmFtZSwgc3RhdGVtZW50KTsKLSAg
ICAgICAgZWxzZQorICAgICAgICB9IGVsc2UgaWYgKHN0YXRlbWVudCBpbnN0YW5jZW9mIFR5cGUp
IHsKKyAgICAgICAgICAgIGlmIChzdGF0ZW1lbnQuaXNOYXRpdmUgJiYgc3RhdGVtZW50LnR5cGVB
cmd1bWVudHMubGVuZ3RoICE9IDApIHsKKyAgICAgICAgICAgICAgICBsZXQgYXJyYXkgPSB0aGlz
LnR5cGVzLmdldChzdGF0ZW1lbnQubmFtZSk7CisgICAgICAgICAgICAgICAgaWYgKCFhcnJheSkK
KyAgICAgICAgICAgICAgICAgICAgdGhpcy50eXBlcy5zZXQoc3RhdGVtZW50Lm5hbWUsIGFycmF5
ID0gW10pOworICAgICAgICAgICAgICAgIGFycmF5LnB1c2goc3RhdGVtZW50KTsKKyAgICAgICAg
ICAgIH0gZWxzZQorICAgICAgICAgICAgICAgIHRoaXMudHlwZXMuc2V0KHN0YXRlbWVudC5uYW1l
LCBzdGF0ZW1lbnQpOworICAgICAgICB9IGVsc2UKICAgICAgICAgICAgIHRocm93IG5ldyBFcnJv
cigiU3RhdGVtZW50IGlzIG5vdCBhIGZ1bmN0aW9uIG9yIHR5cGU6ICIgKyBzdGF0ZW1lbnQpOwot
ICAgICAgICB0aGlzLl90b3BMZXZlbFN0YXRlbWVudHMucHVzaChzdGF0ZW1lbnQpOwotICAgICAg
ICB0aGlzLl9nbG9iYWxOYW1lQ29udGV4dC5hZGQoc3RhdGVtZW50KTsKKyAgICAgICAgdGhpcy50
b3BMZXZlbFN0YXRlbWVudHMucHVzaChzdGF0ZW1lbnQpOworICAgICAgICB0aGlzLmdsb2JhbE5h
bWVDb250ZXh0LmFkZChzdGF0ZW1lbnQpOwogICAgIH0KICAgICAKICAgICB0b1N0cmluZygpCiAg
ICAgewotICAgICAgICBpZiAoIXRoaXMuX3RvcExldmVsU3RhdGVtZW50cy5sZW5ndGgpCisgICAg
ICAgIGlmICghdGhpcy50b3BMZXZlbFN0YXRlbWVudHMubGVuZ3RoKQogICAgICAgICAgICAgcmV0
dXJuICIiOwogICAgICAgICByZXR1cm4gdGhpcy5fdG9wTGV2ZWxTdGF0ZW1lbnRzLmpvaW4oIjsi
KSArICI7IjsKICAgICB9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UmVtb3ZlVHlwZUFyZ3VtZW50cy5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTNk
YjllNjQ3YzkyMWM5NTRlODk5OGNlMTY3NWRlN2NiNjFmMTQyYi4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNjUgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
Ci0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAq
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0idXNlIHN0cmljdCI7
Ci0KLWZ1bmN0aW9uIHJlbW92ZVR5cGVBcmd1bWVudHMocHJvZ3JhbSkKLXsKLSAgICBjbGFzcyBS
ZW1vdmVUeXBlQXJndW1lbnRzIGV4dGVuZHMgVmlzaXRvciB7Ci0gICAgICAgIHN0YXRpYyByZXNv
bHZlTmFtZUFuZEFyZ3VtZW50cyhub2RlKQotICAgICAgICB7Ci0gICAgICAgICAgICBpZiAoIW5v
ZGUudHlwZUFyZ3VtZW50cykKLSAgICAgICAgICAgICAgICByZXR1cm4gbm9kZS5uYW1lOwotCi0g
ICAgICAgICAgICBzd2l0Y2ggKG5vZGUubmFtZSkgewotICAgICAgICAgICAgY2FzZSAidmVjdG9y
IjoKLSAgICAgICAgICAgICAgICBpZiAobm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAyKQot
ICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1N5bnRheEVycm9yKG5vZGUub3JpZ2luU3Ry
aW5nLCBgJHtub2RlLm5hbWV9IHNob3VsZCBoYXZlIDIgdHlwZSBhcmd1bWVudHMsIGdvdCAke25v
ZGUudHlwZUFyZ3VtZW50cy5sZW5ndGh9LmApOwotCi0gICAgICAgICAgICAgICAgY29uc3QgZWxl
bWVudFR5cGVOYW1lID0gbm9kZS50eXBlQXJndW1lbnRzWzBdLm5hbWU7Ci0gICAgICAgICAgICAg
ICAgY29uc3QgbGVuZ3RoVmFsdWUgPSBub2RlLnR5cGVBcmd1bWVudHNbMV0udmFsdWU7Ci0KLSAg
ICAgICAgICAgICAgICBpZiAoVmVjdG9yRWxlbWVudFR5cGVzLmluZGV4T2YoZWxlbWVudFR5cGVO
YW1lKSA8IDApCi0gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBXU3ludGF4RXJyb3Iobm9k
ZS5vcmlnaW5TdHJpbmcsIGAke2VsZW1lbnRUeXBlTmFtZX0gaXMgbm90IGEgdmFsaWQgdmVjdG9y
IGVsZW1lbnQgdHlwZS5gKTsKLSAgICAgICAgICAgICAgICBpZiAoVmVjdG9yRWxlbWVudFNpemVz
LmluZGV4T2YobGVuZ3RoVmFsdWUpIDwgMCkKLSAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3
IFdTeW50YXhFcnJvcihub2RlLm9yaWdpblN0cmluZywgYCR7bGVuZ3RoVmFsdWV9IGlzIG5vdCBh
IHZhbGlkIHNpemUgZm9yIHZlY3RvcnMgd2l0aCBlbGVtZW50IHR5cGUgJHtlbGVtZW50VHlwZU5h
bWV9LmApOwotCi0gICAgICAgICAgICAgICAgcmV0dXJuIGAke2VsZW1lbnRUeXBlTmFtZX0ke2xl
bmd0aFZhbHVlfWA7Ci0gICAgICAgICAgICAvLyBGSVhNRTogRnVydGhlciBjYXNlcyBmb3IgbWF0
cmljZXMsIHRleHR1cmVzLCBldGMuCi0gICAgICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAg
ICAgIGlmIChub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoKQotICAgICAgICAgICAgICAgICAgICB0
aHJvdyBuZXcgV1N5bnRheEVycm9yKGAke25vZGUubmFtZX0ke2FyZ3VtZW50cy5qb2luKCIsICIp
fSBpcyBub3QgYSBwZXJtaXR0ZWQgZ2VuZXJpYyB0eXBlIG9yIGZ1bmN0aW9uYCk7Ci0gICAgICAg
ICAgICAgICAgcmV0dXJuIG5vZGUubmFtZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotCi0g
ICAgICAgIHZpc2l0VHlwZVJlZihub2RlKQotICAgICAgICB7Ci0gICAgICAgICAgICBub2RlLl9u
YW1lID0gUmVtb3ZlVHlwZUFyZ3VtZW50cy5yZXNvbHZlTmFtZUFuZEFyZ3VtZW50cyhub2RlKTsK
LSAgICAgICAgICAgIG5vZGUuX3R5cGVBcmd1bWVudHMgPSBudWxsOwotICAgICAgICB9Ci0gICAg
fQotCi0gICAgcHJvZ3JhbS52aXNpdChuZXcgUmVtb3ZlVHlwZUFyZ3VtZW50cygpKTsKLX0KZGlm
ZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVOYW1lcy5qcyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVOYW1lcy5qcwppbmRleCAyZTQw
MmM4ZDZjMGEzNjA5ODU2MWUwMjc1ZWU1M2U3NzhmZDM4NGI4Li5iOGI1MzM0MjQ1OWFlODM5YWNm
N2YwN2MyYmJhZWE5NmU4YTU0Y2RmIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9SZXNvbHZlTmFtZXMuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvUmVzb2x2ZU5hbWVzLmpzCkBAIC0zMSw4ICszMSwxMyBAQCBmdW5jdGlvbiBjcmVhdGVOYW1l
UmVzb2x2ZXIocHJvZ3JhbSkKIAogZnVuY3Rpb24gcmVzb2x2ZU5hbWVzSW5UeXBlcyhwcm9ncmFt
LCBuYW1lUmVzb2x2ZXIpCiB7Ci0gICAgZm9yIChsZXQgdHlwZSBvZiBwcm9ncmFtLnR5cGVzLnZh
bHVlcygpKQotICAgICAgICBuYW1lUmVzb2x2ZXIuZG9TdGF0ZW1lbnQodHlwZSk7CisgICAgZm9y
IChsZXQgdHlwZSBvZiBwcm9ncmFtLnR5cGVzLnZhbHVlcygpKSB7CisgICAgICAgIGlmICh0eXBl
IGluc3RhbmNlb2YgQXJyYXkpIHsKKyAgICAgICAgICAgIGZvciAobGV0IGNvbnN0aXR1ZW50VHlw
ZSBvZiB0eXBlKQorICAgICAgICAgICAgICAgIG5hbWVSZXNvbHZlci5kb1N0YXRlbWVudChjb25z
dGl0dWVudFR5cGUpOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIG5hbWVSZXNvbHZlci5k
b1N0YXRlbWVudCh0eXBlKTsKKyAgICB9CiB9CiAKIGZ1bmN0aW9uIHJlc29sdmVOYW1lc0luRnVu
Y3Rpb25zKHByb2dyYW0sIG5hbWVSZXNvbHZlcikKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVPdmVybG9hZEltcGwuanMgYi9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9SZXNvbHZlT3ZlcmxvYWRJbXBsLmpzCmluZGV4IGQwZjFlMzRkNjE3ZWEy
NzI2NjQ2N2MxNjE3MDcxNTQ2NjRhNDQ5YWQuLjdhMDk3YmNhNDcwZWNiNTZhNmVlM2RlZjUyYWFm
NWY3OGI1MDY1MTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jl
c29sdmVPdmVybG9hZEltcGwuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UmVzb2x2ZU92ZXJsb2FkSW1wbC5qcwpAQCAtMTAwLDMgKzEwMCwyOCBAQCBmdW5jdGlvbiByZXNv
bHZlT3ZlcmxvYWRJbXBsKGZ1bmN0aW9ucywgYXJndW1lbnRUeXBlcywgcmV0dXJuVHlwZSwgYWxs
b3dFbnRyeVBvaQogICAgIAogICAgIHJldHVybiB7ZmFpbHVyZXM6IGFtYmlndWl0eUxpc3QubWFw
KG92ZXJsb2FkID0+IG5ldyBPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKG92ZXJsb2FkLmZ1bmMs
IG1lc3NhZ2UpKX07CiB9CisKK2Z1bmN0aW9uIHJlc29sdmVUeXBlT3ZlcmxvYWRJbXBsKHR5cGVz
LCB0eXBlQXJndW1lbnRzKQoreworICAgIGlmICghdHlwZXMpCisgICAgICAgIHRocm93IG5ldyBF
cnJvcigiTnVsbCB0eXBlczsgdGhhdCBzaG91bGQgaGF2ZSBiZWVuIGNhdWdodCBieSB0aGUgY2Fs
bGVyLiIpOworCisgICAgbGV0IGZhaWx1cmVzID0gW107CisgICAgbGV0IHN1Y2Nlc3NlcyA9IFtd
OworICAgIGZvciAobGV0IHR5cGUgb2YgdHlwZXMpIHsKKyAgICAgICAgbGV0IG92ZXJsb2FkID0g
aW5mZXJUeXBlc0ZvclR5cGVBcmd1bWVudHModHlwZSwgdHlwZUFyZ3VtZW50cyk7CisgICAgICAg
IGlmIChvdmVybG9hZC5mYWlsdXJlKQorICAgICAgICAgICAgZmFpbHVyZXMucHVzaChvdmVybG9h
ZC5mYWlsdXJlKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgc3VjY2Vzc2VzLnB1c2gob3Zl
cmxvYWQpOworICAgIH0KKyAgICAKKyAgICBpZiAoIXN1Y2Nlc3Nlcy5sZW5ndGgpCisgICAgICAg
IHJldHVybiB7ZmFpbHVyZXM6IGZhaWx1cmVzfTsKKyAgICAKKyAgICBpZiAoc3VjY2Vzc2VzLmxl
bmd0aCA9PSAxKQorICAgICAgICByZXR1cm4gc3VjY2Vzc2VzWzBdOworICAgIAorICAgIGxldCBt
ZXNzYWdlID0gIkFtYmlndW91cyBvdmVybG9hZCAtIHR5cGVzIG11dHVhbGx5IGFwcGxpY2FibGUi
OworICAgIHJldHVybiB7ZmFpbHVyZXM6IHN1Y2Nlc3Nlcy5tYXAob3ZlcmxvYWQgPT4gbmV3IFR5
cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKG92ZXJsb2FkLnR5cGUsIG1lc3NhZ2UpKX07Cit9
CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXNvbHZlVHlwZURl
ZnMuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXNvbHZlVHlwZURlZnMuanMK
aW5kZXggOTE0M2Y4ZTFlMDBhMDQ5ODE0YjkwYTM0NWM1YWY0NTE0NTlkODU3NC4uMDU3NGJlY2Q1
NTMxNTA5NDc4YTJkZWZkYzJmZTdjNjhlNjFjM2QzNSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZVR5cGVEZWZzLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVUeXBlRGVmcy5qcwpAQCAtMjcsOCArMjcsMTMgQEAKIGZ1
bmN0aW9uIHJlc29sdmVUeXBlRGVmc0luVHlwZXMocHJvZ3JhbSkKIHsKICAgICBsZXQgcmVzb2x2
ZXIgPSBuZXcgVHlwZURlZlJlc29sdmVyKCk7Ci0gICAgZm9yIChsZXQgdHlwZSBvZiBwcm9ncmFt
LnR5cGVzLnZhbHVlcygpKQotICAgICAgICB0eXBlLnZpc2l0KHJlc29sdmVyKTsKKyAgICBmb3Ig
KGxldCB0eXBlIG9mIHByb2dyYW0udHlwZXMudmFsdWVzKCkpIHsKKyAgICAgICAgaWYgKHR5cGUg
aW5zdGFuY2VvZiBBcnJheSkgeworICAgICAgICAgICAgZm9yIChsZXQgY29uc3RpdHVlbnRUeXBl
IG9mIHR5cGUpCisgICAgICAgICAgICAgICAgY29uc3RpdHVlbnRUeXBlLnZpc2l0KHJlc29sdmVy
KTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICB0eXBlLnZpc2l0KHJlc29sdmVyKTsKKyAg
ICB9CiB9CiAKIGZ1bmN0aW9uIHJlc29sdmVUeXBlRGVmc0luRnVuY3Rpb25zKHByb2dyYW0pCmRp
ZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXdyaXRlci5qcyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVyLmpzCmluZGV4IGQ1NDdkMjAzZjBk
YmY4Y2FiZWU0Mzc3ODAzYmQ1YjA4NGU5ODA3YmMuLmJkODNjMzdkOWM0Nzc3MTdlMzUyMzcyOGQx
NWRmNDI3OTBkYTFiMmYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Jld3JpdGVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVy
LmpzCkBAIC05Nyw3ICs5Nyw3IEBAIGNsYXNzIFJld3JpdGVyIHsKICAgICAKICAgICB2aXNpdFR5
cGVSZWYobm9kZSkKICAgICB7Ci0gICAgICAgIGxldCByZXN1bHQgPSBuZXcgVHlwZVJlZihub2Rl
Lm9yaWdpbiwgbm9kZS5uYW1lKTsKKyAgICAgICAgbGV0IHJlc3VsdCA9IG5ldyBUeXBlUmVmKG5v
ZGUub3JpZ2luLCBub2RlLm5hbWUsIG5vZGUudHlwZUFyZ3VtZW50cy5tYXAoYXJndW1lbnQgPT4g
YXJndW1lbnQudmlzaXQodGhpcykpKTsKICAgICAgICAgaWYgKG5vZGUudHlwZSkKICAgICAgICAg
ICAgIHJlc3VsdC50eXBlID0gTm9kZS52aXNpdChub2RlLnR5cGUsIHRoaXMpOwogICAgICAgICBy
ZXR1cm4gcmVzdWx0OwpAQCAtMzgyLDkgKzM4MiwxNCBAQCBjbGFzcyBSZXdyaXRlciB7CiAKICAg
ICB2aXNpdFZlY3RvclR5cGUobm9kZSkKICAgICB7Ci0gICAgICAgIGNvbnN0IHZlY1R5cGUgPSBu
ZXcgVmVjdG9yVHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lKTsKLSAgICAgICAgdmVjVHlwZS5f
ZWxlbWVudFR5cGUgPSBub2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBjb25z
dCB2ZWNUeXBlID0gbmV3IFZlY3RvclR5cGUobm9kZS5vcmlnaW4sIG5vZGUubmFtZSwgbm9kZS50
eXBlQXJndW1lbnRzLm1hcChhcmd1bWVudCA9PiBhcmd1bWVudC52aXNpdCh0aGlzKSkpOwogICAg
ICAgICByZXR1cm4gdmVjVHlwZTsKICAgICB9CisKKyAgICB2aXNpdE1hdHJpeFR5cGUobm9kZSkK
KyAgICB7CisgICAgICAgIGNvbnN0IG1hdFR5cGUgPSBuZXcgTWF0cml4VHlwZShub2RlLm9yaWdp
biwgbm9kZS5uYW1lLCBub2RlLnR5cGVBcmd1bWVudHMubWFwKGFyZ3VtZW50ID0+IGFyZ3VtZW50
LnZpc2l0KHRoaXMpKSk7CisgICAgICAgIHJldHVybiBtYXRUeXBlOworICAgIH0KIH0KIApkaWZm
IC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbCBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1NQSVJWLmh0bWwKaW5kZXggYzdiMzk0MGYyYjExYmQ4
OTYxNGYxNGE5YjUyYzQ3YTU2MTY2YWIxNC4uMzUyZTVmODA3NTdjZWQ3Y2QwMzk1ZTg4ODkwNDE2
ZDU2MjM3YTQ3NyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU1BJ
UlYuaHRtbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TUElSVi5odG1sCkBA
IC0zMiw4ICszMiw2IEBAIHRkIHsKICAgICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckNvbnN0
cnVjdG9ycy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JHZXR0
ZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9yU2V0dGVyLmpz
Ij48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4R2V0dGVyLmpz
Ij48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmpz
Ij48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0
b3IuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJDYWxsRXhwcmVzc2lvbi5qcyI+PC9z
Y3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNhbGxGdW5jdGlvbi5qcyI+PC9zY3JpcHQ+CkBAIC00
Myw2ICs0MSw3IEBAIHRkIHsKICAgICA8c2NyaXB0IHNyYz0iQ2hlY2tSZWN1cnNpb24uanMiPjwv
c2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJDaGVja1JlY3Vyc2l2ZVR5cGVzLmpzIj48L3Njcmlw
dD4KICAgICA8c2NyaXB0IHNyYz0iQ2hlY2tSZXR1cm5zLmpzIj48L3NjcmlwdD4KKyAgICA8c2Ny
aXB0IHNyYz0iQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMiPjwvc2NyaXB0PgogICAgIDxzY3Jp
cHQgc3JjPSJDaGVja1VucmVhY2hhYmxlQ29kZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBz
cmM9IkNoZWNrV3JhcHBlZC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNrZXIu
anMiPjwvc2NyaXB0PgpAQCAtOTUsNiArOTQsNyBAQCB0ZCB7CiAgICAgPHNjcmlwdCBzcmM9Ikxv
b3BDaGVja2VyLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTWFrZUFycmF5UmVmRXhw
cmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9Ik1ha2VQdHJFeHByZXNzaW9u
LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iTWF0cml4VHlwZS5qcyI+PC9zY3JpcHQ+
CiAgICAgPHNjcmlwdCBzcmM9Ik5hbWVDb250ZXh0LmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iTmFtZUZpbmRlci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9Ik5hbWVSZXNv
bHZlci5qcyI+PC9zY3JpcHQ+CkBAIC0xMDIsOSArMTAyLDggQEAgdGQgewogICAgIDxzY3JpcHQg
c3JjPSJOb3JtYWxVc2VQcm9wZXJ0eVJlc29sdmVyLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iTnVsbExpdGVyYWwuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJOdWxsVHlw
ZS5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQW5kZXJJbmRleC5qcyI+
PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQW5kZXJJbmRleGVyLmpzIj48L3Nj
cmlwdD4KICAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JBcnJheVJlZkxlbmd0aC5qcyI+PC9zY3Jp
cHQ+Ci0gICAgPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9Ik9yaWdpbktpbmQuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJPdmVy
bG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iUGFy
c2UuanMiPjwvc2NyaXB0PgpAQCAtMTE2LDcgKzExNSw2IEBAIHRkIHsKICAgICA8c2NyaXB0IHNy
Yz0iUmVhZE1vZGlmeVdyaXRlRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBz
cmM9IlJlY3Vyc2lvbkNoZWNrZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJSZWN1
cnNpdmVUeXBlQ2hlY2tlci5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9IlJlbW92ZVR5
cGVBcmd1bWVudHMuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJSZXNvbHZlTmFtZXMu
anMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJSZXNvbHZlT3ZlcmxvYWRJbXBsLmpzIj48
L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iUmVzb2x2ZVByb3BlcnRpZXMuanMiPjwvc2NyaXB0
PgpAQCAtMTMzLDEzICsxMzEsMTMgQEAgdGQgewogICAgIDxzY3JpcHQgc3JjPSJTeW50aGVzaXpl
QXJyYXlPcGVyYXRvckxlbmd0aC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlN5bnRo
ZXNpemVFbnVtRnVuY3Rpb25zLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iU3ludGhl
c2l6ZVN0cnVjdEFjY2Vzc29ycy5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9IlN5bnRo
ZXNpemVPcGVyYXRvckJvb2wuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJTeW50aGVz
aXplQ29weUNvbnN0cnVjdG9yT3BlcmF0b3IuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3Jj
PSJTeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanMiPjwvc2NyaXB0PgogICAg
IDxzY3JpcHQgc3JjPSJUcmFwU3RhdGVtZW50LmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNy
Yz0iVHlwZURlZi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlR5cGVEZWZSZXNvbHZl
ci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlR5cGVSZWYuanMiPjwvc2NyaXB0Pgor
ICAgIDxzY3JpcHQgc3JjPSJUeXBlT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qcyI+PC9zY3Jp
cHQ+CiAgICAgPHNjcmlwdCBzcmM9IlR5cGVkVmFsdWUuanMiPjwvc2NyaXB0PgogICAgIDxzY3Jp
cHQgc3JjPSJVaW50TGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlVpbnRM
aXRlcmFsVHlwZS5qcyI+PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9TdGFuZGFyZExpYnJhcnkuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9TdGFuZGFyZExpYnJhcnkuanMKaW5kZXggMDZiMjUxY2YwYTI0ODE5Y2FiNTA2NWVmNTQ0
NWUxNDg5ZDVlYWFmYy4uMmJhNDYwYzBjNTY4OWM1ODNkYzcwODQ4N2RlZWJlYjBkZmEzNDhjZCAx
MDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhbmRhcmRMaWJyYXJ5
LmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFyeS5q
cwpAQCAtMzMsNTIgKzMzLDY0MyBAQCBsZXQgc3RhbmRhcmRMaWJyYXJ5ID0gYAogbmF0aXZlIHR5
cGVkZWYgdm9pZDsKIG5hdGl2ZSB0eXBlZGVmIGJvb2w7CiBuYXRpdmUgdHlwZWRlZiB1Y2hhcjsK
K25hdGl2ZSB0eXBlZGVmIHVzaG9ydDsKIG5hdGl2ZSB0eXBlZGVmIHVpbnQ7CituYXRpdmUgdHlw
ZWRlZiBjaGFyOworbmF0aXZlIHR5cGVkZWYgc2hvcnQ7CiBuYXRpdmUgdHlwZWRlZiBpbnQ7Citu
YXRpdmUgdHlwZWRlZiBoYWxmOwogbmF0aXZlIHR5cGVkZWYgZmxvYXQ7CituYXRpdmUgdHlwZWRl
ZiBhdG9taWNfaW50OworbmF0aXZlIHR5cGVkZWYgYXRvbWljX3VpbnQ7CiAKLS8vIEZJWE1FOiBB
ZGQgc3VwcG9ydCBmb3IgdGhlc2UgdHlwZXMgdG8gSW50cmluc2ljcy5qcwotLy8gbmF0aXZlIHR5
cGVkZWYgdXNob3J0OwotLy8gbmF0aXZlIHR5cGVkZWYgY2hhcjsKLS8vIG5hdGl2ZSB0eXBlZGVm
IHNob3J0OwotLy8gbmF0aXZlIHR5cGVkZWYgaGFsZjsKLS8vIG5hdGl2ZSB0eXBlZGVmIGF0b21p
Y19pbnQ7Ci0vLyBuYXRpdmUgdHlwZWRlZiBhdG9taWNfdWludDsKK25hdGl2ZSB0eXBlZGVmIHZl
Y3Rvcjxib29sLCAyPjsKK3R5cGVkZWYgYm9vbDIgPSB2ZWN0b3I8Ym9vbCwgMj47CituYXRpdmUg
dHlwZWRlZiB2ZWN0b3I8Ym9vbCwgMz47Cit0eXBlZGVmIGJvb2wzID0gdmVjdG9yPGJvb2wsIDM+
OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGJvb2wsIDQ+OwordHlwZWRlZiBib29sNCA9IHZlY3Rv
cjxib29sLCA0PjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjx1Y2hhciwgMj47Cit0eXBlZGVmIHVj
aGFyMiA9IHZlY3Rvcjx1Y2hhciwgMj47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8dWNoYXIsIDM+
OwordHlwZWRlZiB1Y2hhcjMgPSB2ZWN0b3I8dWNoYXIsIDM+OworbmF0aXZlIHR5cGVkZWYgdmVj
dG9yPHVjaGFyLCA0PjsKK3R5cGVkZWYgdWNoYXI0ID0gdmVjdG9yPHVjaGFyLCA0PjsKK25hdGl2
ZSB0eXBlZGVmIHZlY3Rvcjx1c2hvcnQsIDI+OwordHlwZWRlZiB1c2hvcnQyID0gdmVjdG9yPHVz
aG9ydCwgMj47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8dXNob3J0LCAzPjsKK3R5cGVkZWYgdXNo
b3J0MyA9IHZlY3Rvcjx1c2hvcnQsIDM+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVzaG9ydCwg
ND47Cit0eXBlZGVmIHVzaG9ydDQgPSB2ZWN0b3I8dXNob3J0LCA0PjsKK25hdGl2ZSB0eXBlZGVm
IHZlY3Rvcjx1aW50LCAyPjsKK3R5cGVkZWYgdWludDIgPSB2ZWN0b3I8dWludCwgMj47CituYXRp
dmUgdHlwZWRlZiB2ZWN0b3I8dWludCwgMz47Cit0eXBlZGVmIHVpbnQzID0gdmVjdG9yPHVpbnQs
IDM+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVpbnQsIDQ+OwordHlwZWRlZiB1aW50NCA9IHZl
Y3Rvcjx1aW50LCA0PjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxjaGFyLCAyPjsKK3R5cGVkZWYg
Y2hhcjIgPSB2ZWN0b3I8Y2hhciwgMj47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8Y2hhciwgMz47
Cit0eXBlZGVmIGNoYXIzID0gdmVjdG9yPGNoYXIsIDM+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9y
PGNoYXIsIDQ+OwordHlwZWRlZiBjaGFyNCA9IHZlY3RvcjxjaGFyLCA0PjsKK25hdGl2ZSB0eXBl
ZGVmIHZlY3RvcjxzaG9ydCwgMj47Cit0eXBlZGVmIHNob3J0MiA9IHZlY3RvcjxzaG9ydCwgMj47
CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8c2hvcnQsIDM+OwordHlwZWRlZiBzaG9ydDMgPSB2ZWN0
b3I8c2hvcnQsIDM+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHNob3J0LCA0PjsKK3R5cGVkZWYg
c2hvcnQ0ID0gdmVjdG9yPHNob3J0LCA0PjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxpbnQsIDI+
OwordHlwZWRlZiBpbnQyID0gdmVjdG9yPGludCwgMj47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8
aW50LCAzPjsKK3R5cGVkZWYgaW50MyA9IHZlY3RvcjxpbnQsIDM+OworbmF0aXZlIHR5cGVkZWYg
dmVjdG9yPGludCwgND47Cit0eXBlZGVmIGludDQgPSB2ZWN0b3I8aW50LCA0PjsKK25hdGl2ZSB0
eXBlZGVmIHZlY3RvcjxoYWxmLCAyPjsKK3R5cGVkZWYgaGFsZjIgPSB2ZWN0b3I8aGFsZiwgMj47
CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8aGFsZiwgMz47Cit0eXBlZGVmIGhhbGYzID0gdmVjdG9y
PGhhbGYsIDM+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGhhbGYsIDQ+OwordHlwZWRlZiBoYWxm
NCA9IHZlY3RvcjxoYWxmLCA0PjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxmbG9hdCwgMj47Cit0
eXBlZGVmIGZsb2F0MiA9IHZlY3RvcjxmbG9hdCwgMj47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8
ZmxvYXQsIDM+OwordHlwZWRlZiBmbG9hdDMgPSB2ZWN0b3I8ZmxvYXQsIDM+OworbmF0aXZlIHR5
cGVkZWYgdmVjdG9yPGZsb2F0LCA0PjsKK3R5cGVkZWYgZmxvYXQ0ID0gdmVjdG9yPGZsb2F0LCA0
PjsKIAotbmF0aXZlIG9wZXJhdG9yIGludCh1aW50KTsKLW5hdGl2ZSBvcGVyYXRvciBpbnQodWNo
YXIpOwotbmF0aXZlIG9wZXJhdG9yIGludChmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWludChp
bnQpOwotbmF0aXZlIG9wZXJhdG9yIHVpbnQodWNoYXIpOwotbmF0aXZlIG9wZXJhdG9yIHVpbnQo
ZmxvYXQpOwotbmF0aXZlIG9wZXJhdG9yIHVjaGFyKGludCk7CituYXRpdmUgdHlwZWRlZiBtYXRy
aXg8aGFsZiwgMiwgMj47Cit0eXBlZGVmIGhhbGYyeDIgPSBtYXRyaXg8aGFsZiwgMiwgMj47Citu
YXRpdmUgdHlwZWRlZiBtYXRyaXg8aGFsZiwgMiwgMz47Cit0eXBlZGVmIGhhbGYyeDMgPSBtYXRy
aXg8aGFsZiwgMiwgMz47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8aGFsZiwgMiwgND47Cit0eXBl
ZGVmIGhhbGYyeDQgPSBtYXRyaXg8aGFsZiwgMiwgND47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8
aGFsZiwgMywgMj47Cit0eXBlZGVmIGhhbGYzeDIgPSBtYXRyaXg8aGFsZiwgMywgMj47CituYXRp
dmUgdHlwZWRlZiBtYXRyaXg8aGFsZiwgMywgMz47Cit0eXBlZGVmIGhhbGYzeDMgPSBtYXRyaXg8
aGFsZiwgMywgMz47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8aGFsZiwgMywgND47Cit0eXBlZGVm
IGhhbGYzeDQgPSBtYXRyaXg8aGFsZiwgMywgND47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8aGFs
ZiwgNCwgMj47Cit0eXBlZGVmIGhhbGY0eDIgPSBtYXRyaXg8aGFsZiwgNCwgMj47CituYXRpdmUg
dHlwZWRlZiBtYXRyaXg8aGFsZiwgNCwgMz47Cit0eXBlZGVmIGhhbGY0eDMgPSBtYXRyaXg8aGFs
ZiwgNCwgMz47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8aGFsZiwgNCwgND47Cit0eXBlZGVmIGhh
bGY0eDQgPSBtYXRyaXg8aGFsZiwgNCwgND47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8ZmxvYXQs
IDIsIDI+OwordHlwZWRlZiBmbG9hdDJ4MiA9IG1hdHJpeDxmbG9hdCwgMiwgMj47CituYXRpdmUg
dHlwZWRlZiBtYXRyaXg8ZmxvYXQsIDIsIDM+OwordHlwZWRlZiBmbG9hdDJ4MyA9IG1hdHJpeDxm
bG9hdCwgMiwgMz47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8ZmxvYXQsIDIsIDQ+OwordHlwZWRl
ZiBmbG9hdDJ4NCA9IG1hdHJpeDxmbG9hdCwgMiwgND47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8
ZmxvYXQsIDMsIDI+OwordHlwZWRlZiBmbG9hdDN4MiA9IG1hdHJpeDxmbG9hdCwgMywgMj47Citu
YXRpdmUgdHlwZWRlZiBtYXRyaXg8ZmxvYXQsIDMsIDM+OwordHlwZWRlZiBmbG9hdDN4MyA9IG1h
dHJpeDxmbG9hdCwgMywgMz47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8ZmxvYXQsIDMsIDQ+Owor
dHlwZWRlZiBmbG9hdDN4NCA9IG1hdHJpeDxmbG9hdCwgMywgND47CituYXRpdmUgdHlwZWRlZiBt
YXRyaXg8ZmxvYXQsIDQsIDI+OwordHlwZWRlZiBmbG9hdDR4MiA9IG1hdHJpeDxmbG9hdCwgNCwg
Mj47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8ZmxvYXQsIDQsIDM+OwordHlwZWRlZiBmbG9hdDR4
MyA9IG1hdHJpeDxmbG9hdCwgNCwgMz47CituYXRpdmUgdHlwZWRlZiBtYXRyaXg8ZmxvYXQsIDQs
IDQ+OwordHlwZWRlZiBmbG9hdDR4NCA9IG1hdHJpeDxmbG9hdCwgNCwgND47CisKK25hdGl2ZSB0
eXBlZGVmIHNhbXBsZXI7CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Ym9vbD47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMUQ8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGJvb2wz
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxib29sND47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHVjaGFyMj47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMUQ8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1Y2hh
cjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMUQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0Mz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MUQ8dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dWludDI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEPHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1aW50ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8
Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxRDxjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8
c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEPGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50Mj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50
ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGhhbGYzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxRDxoYWxmND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8ZmxvYXQ+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxmbG9hdDQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMUQ8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxi
b29sMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxib29sMz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUxRDxib29sND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1Y2hhcj47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMUQ8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVjaGFyND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1c2hvcnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8dWludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1aW50Mj47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUxRDx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1
aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxjaGFyPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTFEPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNoYXIzPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHNob3J0Mj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxRDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MUQ8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGludD47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxRDxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGludDM+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUxRDxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGhhbGYyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFE
PGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGZsb2F0PjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTFEPGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxmbG9h
dDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8Ym9v
bDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbDM+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8
dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWNoYXIyPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxREFycmF5PHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURB
cnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dXNob3J0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTFEQXJyYXk8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1c2hv
cnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHVpbnQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEQXJyYXk8dWludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8
dWludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWludDQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTFEQXJyYXk8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJh
eTxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyMz47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURB
cnJheTxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxzaG9ydDI+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUxREFycmF5PHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxpbnQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMURBcnJheTxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGludDQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMURBcnJheTxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmMz47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmND47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMURBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxmbG9h
dDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8ZmxvYXQzPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUxREFycmF5PGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFy
cmF5PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxib29sMj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEQXJyYXk8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTx1Y2hh
cj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVjaGFyMj47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxREFycmF5PHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUx
REFycmF5PHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydD47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFE
QXJyYXk8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVpbnQ+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUxREFycmF5PHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8
dWludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxjaGFyPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MURBcnJheTxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGNoYXI0PjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMURBcnJheTxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJh
eTxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxzaG9ydDQ+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMURBcnJheTxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aW50Mz47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGludDQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMURBcnJheTxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8
aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxoYWxmMz47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTFEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdDI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdDM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGJv
b2w+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyRDxib29sMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Ym9vbDQ+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1Y2hh
cjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMkQ8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVzaG9ydDQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEPHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVpbnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkQ8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGNoYXI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxjaGFyMz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxzaG9ydDI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEPHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8c2hvcnQ0PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PGludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGludDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEPGludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGhhbGY+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxoYWxm
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxmbG9hdDI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Zmxv
YXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGJvb2w+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkQ8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9vbDM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkQ8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWNoYXIyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
RDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dXNob3J0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8
dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1c2hvcnQ0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWlu
dDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWludDM+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkQ8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Y2hhcj47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUyRDxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxjaGFyND47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyRDxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxz
aG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8c2hvcnQzPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEPHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxpbnQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyRDxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGludDQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMkQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxo
YWxmMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxoYWxmMz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUyRDxoYWxmND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxmbG9hdD47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMkQ8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGZsb2F0ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUyREFycmF5PGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2wzPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyREFycmF5PHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVjaGFy
Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEQXJyYXk8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5
PHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1c2hvcnQyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTJEQXJyYXk8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1aW50PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyREFycmF5PHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVpbnQ0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGNoYXI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEQXJyYXk8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hh
cjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hhcjQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEQXJyYXk8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8
c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHNob3J0Mz47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMkRBcnJheTxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGludDI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRB
cnJheTxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGhhbGY+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aGFsZjQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTJEQXJyYXk8ZmxvYXQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGZsb2F0Mz47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkRBcnJheTxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8
Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxib29sMz47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEQXJyYXk8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcjI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1c2hvcnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dXNob3J0Mz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUyREFycmF5PHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dWludDI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyREFycmF5PHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8Y2hh
cj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGNoYXIyPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEQXJyYXk8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTxjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHNob3J0PjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTJEQXJyYXk8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8
c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aW50PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
REFycmF5PGludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxpbnQ0PjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyREFycmF5PGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aGFs
ZjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxoYWxmND47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUyREFycmF5PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJE
QXJyYXk8ZmxvYXQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQzPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUzRDxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxib29sMj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlM0Q8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGJv
b2w0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlM0Q8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1Y2hhcjM+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8
dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1c2hvcnQ0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUzRDx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWludDM+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTNEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxjaGFyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
M0Q8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGNoYXI0PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8c2hvcnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTNEPHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8aW50PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxpbnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxo
YWxmPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlM0Q8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGhhbGY0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUzRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8Zmxv
YXQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTNEPGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxib29sPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTNEPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGJvb2w0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTNEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVj
aGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlM0Q8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVzaG9y
dD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTNEPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dXNob3J0
ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTNEPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTNEPGNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Y2hhcjI+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlM0Q8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Y2hh
cjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlM0Q8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHNob3J0Mz47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlM0Q8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGludDI+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlM0Q8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxp
bnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlM0Q8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFsZjM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlM0Q8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8ZmxvYXQyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUz
RDxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Ym9vbD47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlQ3ViZTxib29sMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxib29s
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxib29sND47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlQ3ViZTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1Y2hhcjI+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmVDdWJlPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
Q3ViZTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVzaG9ydDQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3Vi
ZTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1aW50Mz47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlQ3ViZTx1aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxjaGFy
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmVDdWJlPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGNoYXI0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVD
dWJlPHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxzaG9ydDM+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZUN1YmU8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJl
PGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxpbnQyPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmVDdWJlPGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aW50ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVD
dWJlPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGhhbGYzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmVDdWJlPGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGZs
b2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGZsb2F0Mj47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlQ3ViZTxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8ZmxvYXQ0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVEZXB0aDJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmVEZXB0aDJEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVwdGgyRDxm
bG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmVEZXB0aDJEPGhhbGY+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZURlcHRoMkRBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
RGVwdGgyREFycmF5PGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVwdGgyREFycmF5
PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZURlcHRoMkRBcnJheTxoYWxmPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVEZXB0aEN1YmU8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZURlcHRoQ3ViZTxoYWxmPjsKKworbmF0aXZlIG9wZXJhdG9yIHVjaGFyKHVzaG9ydCk7CiBu
YXRpdmUgb3BlcmF0b3IgdWNoYXIodWludCk7CituYXRpdmUgb3BlcmF0b3IgdWNoYXIoY2hhcik7
CituYXRpdmUgb3BlcmF0b3IgdWNoYXIoc2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIHVjaGFyKGlu
dCk7CituYXRpdmUgb3BlcmF0b3IgdWNoYXIoaGFsZik7CiBuYXRpdmUgb3BlcmF0b3IgdWNoYXIo
ZmxvYXQpOwotbmF0aXZlIG9wZXJhdG9yIGZsb2F0KGludCk7Ci1uYXRpdmUgb3BlcmF0b3IgZmxv
YXQodWludCk7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRv
ciB1c2hvcnQodWludCk7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KGNoYXIpOworbmF0aXZlIG9w
ZXJhdG9yIHVzaG9ydChzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KGludCk7CituYXRp
dmUgb3BlcmF0b3IgdXNob3J0KGhhbGYpOworbmF0aXZlIG9wZXJhdG9yIHVzaG9ydChmbG9hdCk7
CituYXRpdmUgb3BlcmF0b3IgdWludCh1Y2hhcik7CituYXRpdmUgb3BlcmF0b3IgdWludCh1c2hv
cnQpOworbmF0aXZlIG9wZXJhdG9yIHVpbnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgdWludChz
aG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdWludChpbnQpOworbmF0aXZlIG9wZXJhdG9yIHVpbnQo
aGFsZik7CituYXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCk7CituYXRpdmUgb3BlcmF0b3IgY2hh
cih1Y2hhcik7CituYXRpdmUgb3BlcmF0b3IgY2hhcih1c2hvcnQpOworbmF0aXZlIG9wZXJhdG9y
IGNoYXIodWludCk7CituYXRpdmUgb3BlcmF0b3IgY2hhcihzaG9ydCk7CituYXRpdmUgb3BlcmF0
b3IgY2hhcihpbnQpOworbmF0aXZlIG9wZXJhdG9yIGNoYXIoaGFsZik7CituYXRpdmUgb3BlcmF0
b3IgY2hhcihmbG9hdCk7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQodWNoYXIpOworbmF0aXZlIG9w
ZXJhdG9yIHNob3J0KHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQodWludCk7CituYXRp
dmUgb3BlcmF0b3Igc2hvcnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQoaW50KTsKK25h
dGl2ZSBvcGVyYXRvciBzaG9ydChoYWxmKTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydChmbG9hdCk7
CituYXRpdmUgb3BlcmF0b3IgaW50KHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodXNob3J0
KTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodWludCk7CituYXRpdmUgb3BlcmF0b3IgaW50KGNoYXIp
OworbmF0aXZlIG9wZXJhdG9yIGludChzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgaW50KGhhbGYp
OworbmF0aXZlIG9wZXJhdG9yIGludChmbG9hdCk7CituYXRpdmUgb3BlcmF0b3IgaGFsZih1Y2hh
cik7CituYXRpdmUgb3BlcmF0b3IgaGFsZih1c2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGhhbGYo
dWludCk7CituYXRpdmUgb3BlcmF0b3IgaGFsZihjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBoYWxm
KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKGludCk7CituYXRpdmUgb3BlcmF0b3IgaGFs
ZihmbG9hdCk7CiBuYXRpdmUgb3BlcmF0b3IgZmxvYXQodWNoYXIpOworbmF0aXZlIG9wZXJhdG9y
IGZsb2F0KHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQodWludCk7CituYXRpdmUgb3Bl
cmF0b3IgZmxvYXQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQoc2hvcnQpOworbmF0aXZl
IG9wZXJhdG9yIGZsb2F0KGludCk7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQoaGFsZik7CisKK29w
ZXJhdG9yIGJvb2wodWNoYXIgeCkgeworICAgIHJldHVybiB4ICE9IDA7Cit9CitvcGVyYXRvciBi
b29sKHVzaG9ydCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2wodWlu
dCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woY2hhciB4KSB7Cisg
ICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woc2hvcnQgeCkgeworICAgIHJldHVy
biB4ICE9IDA7Cit9CitvcGVyYXRvciBib29sKGludCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsK
K30KK29wZXJhdG9yIGJvb2woaGFsZiB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJh
dG9yIGJvb2woZmxvYXQgeCkgeworICAgIHJldHVybiB4ICE9IDA7Cit9CisKK25hdGl2ZSBvcGVy
YXRvciBpbnQoYXRvbWljX2ludCk7CituYXRpdmUgb3BlcmF0b3IgdWludChhdG9taWNfdWludCk7
CiAKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0oYm9vbCwgYm9vbCk7Citib29sIG9wZXJhdG9yJihi
b29sIGEsIGJvb2wgYikgeworICAgIHJldHVybiBhICYmIGI7Cit9Citib29sIG9wZXJhdG9yfChi
b29sIGEsIGJvb2wgYikgeworICAgIHJldHVybiBhIHx8IGI7Cit9Citib29sIG9wZXJhdG9yXihi
b29sIGEsIGJvb2wgYikgeworICAgIGlmIChhKQorICAgICAgICByZXR1cm4gIWI7CisgICAgcmV0
dXJuIGI7Cit9Citib29sIG9wZXJhdG9yfihib29sIHZhbHVlKSB7CisgICAgcmV0dXJuICF2YWx1
ZTsKK30KIG5hdGl2ZSBpbnQgb3BlcmF0b3IrKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJh
dG9yKyh1aW50LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yKyh1Y2hhciBhLCB1Y2hhciBiKSB7IHJl
dHVybiB1Y2hhcih1aW50KGEpICsgdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvciso
ZmxvYXQsIGZsb2F0KTsKLWludCBvcGVyYXRvcisrKGludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUg
KyAxOyB9Ci11aW50IG9wZXJhdG9yKysodWludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgKyAxOyB9
Ci11Y2hhciBvcGVyYXRvcisrKHVjaGFyIHZhbHVlKSB7IHJldHVybiB2YWx1ZSArIDE7IH0KIG5h
dGl2ZSBpbnQgb3BlcmF0b3ItKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yLSh1aW50
LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yLSh1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hh
cih1aW50KGEpIC0gdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsIGZs
b2F0KTsKLWludCBvcGVyYXRvci0tKGludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgLSAxOyB9Ci11
aW50IG9wZXJhdG9yLS0odWludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgLSAxOyB9Ci11Y2hhciBv
cGVyYXRvci0tKHVjaGFyIHZhbHVlKSB7IHJldHVybiB2YWx1ZSAtIDE7IH0KIG5hdGl2ZSBpbnQg
b3BlcmF0b3IqKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LCB1aW50KTsK
LXVjaGFyIG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEp
ICogdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvciooZmxvYXQsIGZsb2F0KTsKIG5h
dGl2ZSBpbnQgb3BlcmF0b3IvKGludCwgaW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0oaW50
LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCwgaW50KTsKK25hdGl2ZSBib29sIG9w
ZXJhdG9yPD0oaW50LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+KGludCwgaW50KTsKK25h
dGl2ZSBib29sIG9wZXJhdG9yPj0oaW50LCBpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IrKHVp
bnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3ItKHVpbnQsIHVpbnQpOworbmF0aXZlIHVp
bnQgb3BlcmF0b3IqKHVpbnQsIHVpbnQpOwogbmF0aXZlIHVpbnQgb3BlcmF0b3IvKHVpbnQsIHVp
bnQpOwotdWNoYXIgb3BlcmF0b3IvKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVp
bnQoYSkgLyB1aW50KGIpKTsgfQorbmF0aXZlIGJvb2wgb3BlcmF0b3I9PSh1aW50LCB1aW50KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPCh1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9y
PD0odWludCwgdWludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4odWludCwgdWludCk7CituYXRp
dmUgYm9vbCBvcGVyYXRvcj49KHVpbnQsIHVpbnQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yKyhm
bG9hdCwgZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCwgZmxvYXQpOworbmF0
aXZlIGZsb2F0IG9wZXJhdG9yKihmbG9hdCwgZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9y
LyhmbG9hdCwgZmxvYXQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShmbG9hdCwgZmxvYXQpOwor
bmF0aXZlIGJvb2wgb3BlcmF0b3I8KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRv
cjw9KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4oZmxvYXQsIGZsb2F0KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPj0oZmxvYXQsIGZsb2F0KTsKIG5hdGl2ZSBpbnQgb3BlcmF0
b3ImKGludCwgaW50KTsKIG5hdGl2ZSBpbnQgb3BlcmF0b3J8KGludCwgaW50KTsKIG5hdGl2ZSBp
bnQgb3BlcmF0b3JeKGludCwgaW50KTsKQEAgLTkxLDg0ICs2ODIsMjU3NSBAQCBuYXRpdmUgdWlu
dCBvcGVyYXRvcl4odWludCwgdWludCk7CiBuYXRpdmUgdWludCBvcGVyYXRvcn4odWludCk7CiBu
YXRpdmUgdWludCBvcGVyYXRvcjw8KHVpbnQsIHVpbnQpOwogbmF0aXZlIHVpbnQgb3BlcmF0b3I+
Pih1aW50LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yJih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVy
biB1Y2hhcih1aW50KGEpICYgdWludChiKSk7IH0KLXVjaGFyIG9wZXJhdG9yfCh1Y2hhciBhLCB1
Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpIHwgdWludChiKSk7IH0KLXVjaGFyIG9wZXJh
dG9yXih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpIF4gdWludChiKSk7
IH0KLXVjaGFyIG9wZXJhdG9yfih1Y2hhciB2YWx1ZSkgeyByZXR1cm4gdWNoYXIofnVpbnQodmFs
dWUpKTsgfQotdWNoYXIgb3BlcmF0b3I8PCh1Y2hhciBhLCB1aW50IGIpIHsgcmV0dXJuIHVjaGFy
KHVpbnQoYSkgPDwgKGIgJiA3KSk7IH0KLXVjaGFyIG9wZXJhdG9yPj4odWNoYXIgYSwgdWludCBi
KSB7IHJldHVybiB1Y2hhcih1aW50KGEpID4+IChiICYgNykpOyB9Ci1uYXRpdmUgZmxvYXQgb3Bl
cmF0b3IvKGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGludCwgaW50KTsK
LW5hdGl2ZSBib29sIG9wZXJhdG9yPT0odWludCwgdWludCk7Ci1ib29sIG9wZXJhdG9yPT0odWNo
YXIgYSwgdWNoYXIgYikgeyByZXR1cm4gdWludChhKSA9PSB1aW50KGIpOyB9Ci1uYXRpdmUgYm9v
bCBvcGVyYXRvcj09KGJvb2wsIGJvb2wpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShmbG9hdCwg
ZmxvYXQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCwgaW50KTsKLW5hdGl2ZSBib29sIG9w
ZXJhdG9yPCh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I8KHVjaGFyIGEsIHVjaGFyIGIpIHsg
cmV0dXJuIHVpbnQoYSkgPCB1aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcjwoZmxvYXQs
IGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPD0oaW50LCBpbnQpOwotbmF0aXZlIGJvb2wg
b3BlcmF0b3I8PSh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I8PSh1Y2hhciBhLCB1Y2hhciBi
KSB7IHJldHVybiB1aW50KGEpIDw9IHVpbnQoYik7IH0KLW5hdGl2ZSBib29sIG9wZXJhdG9yPD0o
ZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPihpbnQsIGludCk7Ci1uYXRpdmUg
Ym9vbCBvcGVyYXRvcj4odWludCwgdWludCk7Ci1ib29sIG9wZXJhdG9yPih1Y2hhciBhLCB1Y2hh
ciBiKSB7IHJldHVybiB1aW50KGEpID4gdWludChiKTsgfQotbmF0aXZlIGJvb2wgb3BlcmF0b3I+
KGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj49KGludCwgaW50KTsKLW5hdGl2
ZSBib29sIG9wZXJhdG9yPj0odWludCwgdWludCk7Ci1ib29sIG9wZXJhdG9yPj0odWNoYXIgYSwg
dWNoYXIgYikgeyByZXR1cm4gdWludChhKSA+PSB1aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVy
YXRvcj49KGZsb2F0LCBmbG9hdCk7Ci0KLWJvb2wgb3BlcmF0b3ImKGJvb2wgYSwgYm9vbCBiKQot
ewotICAgIGlmIChhKQotICAgICAgICByZXR1cm4gYjsKLSAgICByZXR1cm4gZmFsc2U7Cit1Y2hh
ciBvcGVyYXRvcisodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEp
ICsgdWludChiKSk7CiB9Ci0KLWJvb2wgb3BlcmF0b3J8KGJvb2wgYSwgYm9vbCBiKQotewotICAg
IGlmIChhKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBpZiAoYikKLSAgICAgICAgcmV0dXJu
IHRydWU7Ci0gICAgcmV0dXJuIGZhbHNlOwordWNoYXIgb3BlcmF0b3ItKHVjaGFyIGEsIHVjaGFy
IGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSAtIHVpbnQoYikpOwogfQotCi1ib29sIG9w
ZXJhdG9yXihib29sIGEsIGJvb2wgYikKLXsKLSAgICBpZiAoYSkKLSAgICAgICAgcmV0dXJuICFi
OwotICAgIHJldHVybiBiOwordWNoYXIgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAg
ICByZXR1cm4gdWNoYXIodWludChhKSAqIHVpbnQoYikpOwogfQotCi1ib29sIG9wZXJhdG9yfihi
b29sIHZhbHVlKQotewotICAgIHJldHVybiAhdmFsdWU7Cit1Y2hhciBvcGVyYXRvci8odWNoYXIg
YSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIC8gdWludChiKSk7CiB9Cit1
Y2hhciBvcGVyYXRvciYodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50
KGEpICYgdWludChiKSk7Cit9Cit1Y2hhciBvcGVyYXRvcnwodWNoYXIgYSwgdWNoYXIgYikgewor
ICAgIHJldHVybiB1Y2hhcih1aW50KGEpIHwgdWludChiKSk7Cit9Cit1Y2hhciBvcGVyYXRvcl4o
dWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIF4gdWludChiKSk7
Cit9Cit1Y2hhciBvcGVyYXRvcn4odWNoYXIgYSkgeworICAgIHJldHVybiB1Y2hhcih+dWludChh
KSk7Cit9Citib29sIG9wZXJhdG9yPT0odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1
aW50KGEpID09IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPCh1Y2hhciBhLCB1Y2hhciBiKSB7
CisgICAgcmV0dXJuIHVpbnQoYSkgPCB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KHVjaGFy
IGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWludChhKSA8PSB1aW50KGIpOworfQorYm9vbCBv
cGVyYXRvcj4odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEpID4gdWludChi
KTsKK30KK2Jvb2wgb3BlcmF0b3I+PSh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJuIHVp
bnQoYSkgPj0gdWludChiKTsKK30KK3VzaG9ydCBvcGVyYXRvcisodXNob3J0IGEsIHVzaG9ydCBi
KSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpICsgdWludChiKSk7Cit9Cit1c2hvcnQgb3Bl
cmF0b3ItKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWludChhKSAt
IHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yKih1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAg
ICByZXR1cm4gdXNob3J0KHVpbnQoYSkgKiB1aW50KGIpKTsKK30KK3VzaG9ydCBvcGVyYXRvci8o
dXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpIC8gdWludChi
KSk7Cit9Cit1c2hvcnQgb3BlcmF0b3ImKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVy
biB1c2hvcnQodWludChhKSAmIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yfCh1c2hvcnQg
YSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgfCB1aW50KGIpKTsKK30K
K3VzaG9ydCBvcGVyYXRvcl4odXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9y
dCh1aW50KGEpIF4gdWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3J+KHVzaG9ydCBhKSB7Cisg
ICAgcmV0dXJuIHVzaG9ydCh+dWludChhKSk7Cit9Citib29sIG9wZXJhdG9yPT0odXNob3J0IGEs
IHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVpbnQoYSkgPT0gdWludChiKTsKK30KK2Jvb2wgb3Bl
cmF0b3I8KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpIDwgdWludChi
KTsKK30KK2Jvb2wgb3BlcmF0b3I8PSh1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4g
dWludChhKSA8PSB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcj4odXNob3J0IGEsIHVzaG9ydCBi
KSB7CisgICAgcmV0dXJuIHVpbnQoYSkgPiB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcj49KHVz
aG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpID49IHVpbnQoYik7Cit9Cit1
Y2hhciBvcGVyYXRvcjw8KHVjaGFyIGEsIHVpbnQgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50
KGEpIDw8IChiICYgMjU1KSk7Cit9Cit1c2hvcnQgb3BlcmF0b3I8PCh1c2hvcnQgYSwgdWludCBi
KSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpIDw8IChiICYgNjU1MzUpKTsKK30KK3VjaGFy
IG9wZXJhdG9yPj4odWNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIHVjaGFyKHVpbnQoYSkg
Pj4gKGIgJiAyNTUpKTsKK30KK3VzaG9ydCBvcGVyYXRvcj4+KHVzaG9ydCBhLCB1aW50IGIpIHsK
KyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgPj4gKGIgJiA2NTUzNSkpOworfQorY2hhciBvcGVy
YXRvcisoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgKyBpbnQoYikp
OworfQorY2hhciBvcGVyYXRvci0oY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihp
bnQoYSkgLSBpbnQoYikpOworfQorY2hhciBvcGVyYXRvciooY2hhciBhLCBjaGFyIGIpIHsKKyAg
ICByZXR1cm4gY2hhcihpbnQoYSkgKiBpbnQoYikpOworfQorY2hhciBvcGVyYXRvci8oY2hhciBh
LCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgLyBpbnQoYikpOworfQorY2hhciBv
cGVyYXRvciYoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgJiBpbnQo
YikpOworfQorY2hhciBvcGVyYXRvcnwoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hh
cihpbnQoYSkgfCBpbnQoYikpOworfQorY2hhciBvcGVyYXRvcl4oY2hhciBhLCBjaGFyIGIpIHsK
KyAgICByZXR1cm4gY2hhcihpbnQoYSkgXiBpbnQoYikpOworfQorY2hhciBvcGVyYXRvcn4oY2hh
ciBhKSB7CisgICAgcmV0dXJuIGNoYXIofmludChhKSk7Cit9Citib29sIG9wZXJhdG9yPT0oY2hh
ciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gaW50KGEpID09IGludChiKTsKK30KK2Jvb2wgb3Bl
cmF0b3I+KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGludChhKSA+IGludChiKTsKK30K
K2Jvb2wgb3BlcmF0b3I+PShjaGFyIGEsIGNoYXIgYikgeworICAgIHJldHVybiBpbnQoYSkgPj0g
aW50KGIpOworfQorYm9vbCBvcGVyYXRvcjwoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4g
aW50KGEpIDwgaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KGNoYXIgYSwgY2hhciBiKSB7Cisg
ICAgcmV0dXJuIGludChhKSA8PSBpbnQoYik7Cit9CitzaG9ydCBvcGVyYXRvcisoc2hvcnQgYSwg
c2hvcnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgKyBpbnQoYikpOworfQorc2hvcnQg
b3BlcmF0b3ItKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpIC0g
aW50KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0
dXJuIHNob3J0KGludChhKSAqIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvci8oc2hvcnQgYSwg
c2hvcnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgLyBpbnQoYikpOworfQorc2hvcnQg
b3BlcmF0b3ImKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpICYg
aW50KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yfChzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0
dXJuIHNob3J0KGludChhKSB8IGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvcl4oc2hvcnQgYSwg
c2hvcnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgXiBpbnQoYikpOworfQorc2hvcnQg
b3BlcmF0b3J+KHNob3J0IGEpIHsKKyAgICByZXR1cm4gc2hvcnQofmludChhKSk7Cit9Citib29s
IG9wZXJhdG9yPT0oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPT0gaW50
KGIpOworfQorYm9vbCBvcGVyYXRvcj4oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBp
bnQoYSkgPiBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0oc2hvcnQgYSwgc2hvcnQgYikgewor
ICAgIHJldHVybiBpbnQoYSkgPj0gaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjwoc2hvcnQgYSwg
c2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPCBpbnQoYik7Cit9Citib29sIG9wZXJhdG9y
PD0oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPD0gaW50KGIpOworfQor
Y2hhciBvcGVyYXRvcjw8KGNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEp
IDw8IChiICYgMjU1KSk7Cit9CitzaG9ydCBvcGVyYXRvcjw8KHNob3J0IGEsIHVpbnQgYikgewor
ICAgIHJldHVybiBzaG9ydChpbnQoYSkgPDwgKGIgJiA2NTUzNSkpOworfQorY2hhciBvcGVyYXRv
cj4+KGNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpID4+IChiICYgMjU1
KSk7Cit9CitzaG9ydCBvcGVyYXRvcj4+KHNob3J0IGEsIHVpbnQgYikgeworICAgIHJldHVybiBz
aG9ydChpbnQoYSkgPj4gKGIgJiA2NTUzNSkpOworfQordWNoYXIgb3BlcmF0b3IrKyh1Y2hhciB2
YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9Cit1Y2hhciBvcGVyYXRvci0tKHVjaGFy
IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK3VzaG9ydCBvcGVyYXRvcisrKHVz
aG9ydCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9Cit1c2hvcnQgb3BlcmF0b3It
LSh1c2hvcnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQordWludCBvcGVyYXRv
cisrKHVpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQordWludCBvcGVyYXRv
ci0tKHVpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorY2hhciBvcGVyYXRv
cisrKGNoYXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQorY2hhciBvcGVyYXRv
ci0tKGNoYXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorc2hvcnQgb3BlcmF0
b3IrKyhzaG9ydCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitzaG9ydCBvcGVy
YXRvci0tKHNob3J0IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK2ludCBvcGVy
YXRvcisrKGludCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitpbnQgb3BlcmF0
b3ItLShpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQoraGFsZiBvcGVyYXRv
cisrKGhhbGYgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQoraGFsZiBvcGVyYXRv
ci0tKGhhbGYgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorZmxvYXQgb3BlcmF0
b3IrKyhmbG9hdCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitmbG9hdCBvcGVy
YXRvci0tKGZsb2F0IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK2hhbGYgb3Bl
cmF0b3IrKGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxvYXQoYSkgKyBmbG9h
dChiKSk7Cit9CitoYWxmIG9wZXJhdG9yLShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBo
YWxmKGZsb2F0KGEpIC0gZmxvYXQoYikpOworfQoraGFsZiBvcGVyYXRvciooaGFsZiBhLCBoYWxm
IGIpIHsKKyAgICByZXR1cm4gaGFsZihmbG9hdChhKSAqIGZsb2F0KGIpKTsKK30KK2hhbGYgb3Bl
cmF0b3IvKGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxvYXQoYSkgLyBmbG9h
dChiKSk7Cit9Citib29sIG9wZXJhdG9yPT0oaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4g
ZmxvYXQoYSkgPT0gZmxvYXQoYik7Cit9Citib29sIG9wZXJhdG9yPChoYWxmIGEsIGhhbGYgYikg
eworICAgIHJldHVybiBmbG9hdChhKSA8IGZsb2F0KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KGhh
bGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGZsb2F0KGEpIDw9IGZsb2F0KGIpOworfQorYm9v
bCBvcGVyYXRvcj4oaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQoYSkgPCBmbG9h
dChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+PShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBm
bG9hdChhKSA8PSBmbG9hdChiKTsKK30KK2NoYXIgb3BlcmF0b3ItKGNoYXIgeCkgeworICAgIHJl
dHVybiBjaGFyKC1pbnQoeCkpOworfQorc2hvcnQgb3BlcmF0b3ItKHNob3J0IHgpIHsKKyAgICBy
ZXR1cm4gc2hvcnQoLWludCh4KSk7Cit9CitoYWxmIG9wZXJhdG9yLShoYWxmIHgpIHsKKyAgICBy
ZXR1cm4gaGFsZigtZmxvYXQoeCkpOworfQorbmF0aXZlIGludCBvcGVyYXRvci0oaW50KTsKK25h
dGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQpOwogCi1uYXRpdmUgdHlwZWRlZiB1Y2hhcjI7Ci1u
YXRpdmUgdHlwZWRlZiB1Y2hhcjM7Ci1uYXRpdmUgdHlwZWRlZiB1Y2hhcjQ7Ci0KLW5hdGl2ZSB0
eXBlZGVmIHVpbnQyOwotbmF0aXZlIHR5cGVkZWYgdWludDM7Ci1uYXRpdmUgdHlwZWRlZiB1aW50
NDsKK3VjaGFyMiBvcGVyYXRvcisodWNoYXIyIGEsIHVjaGFyMiBiKSB7CisgICAgdWNoYXIyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLSh1Y2hhcjIg
YSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
LSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjIgb3BlcmF0b3IqKHVjaGFyMiBhLCB1Y2hhcjIgYikgeworICAgIHVjaGFyMiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsx
XSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBvcGVyYXRvcioodWNoYXIy
IGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjIgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyMiBiKSB7CisgICAgdWNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLyh1Y2hhcjIgYSwgdWNoYXIyIGIp
IHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIg
b3BlcmF0b3IvKHVjaGFyMiBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLyh1Y2hhciBhLCB1Y2hhcjIgYikgeworICAg
IHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvcisodWNo
YXIzIGEsIHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLSh1
Y2hhcjMgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iq
KHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0
WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRv
cioodWNoYXIzIGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9
IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IqKHVjaGFy
IGEsIHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICog
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLyh1Y2hhcjMgYSwgdWNo
YXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBi
WzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IvKHVjaGFyMyBhLCB1
Y2hhciBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsK
KyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLyh1Y2hhciBhLCB1Y2hhcjMgYikg
eworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvcisodWNoYXI0IGEsIHVjaGFyNCBiKSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1
bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLSh1Y2hhcjQgYSwgdWNoYXI0IGIpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJl
c3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IqKHVjaGFyNCBhLCB1Y2hhcjQgYikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07Cisg
ICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvcioodWNoYXI0IGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJl
c3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyNCBiKSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBh
ICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLyh1Y2hhcjQg
YSwgdWNoYXI0IGIpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
LyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFb
Ml0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IvKHVjaGFyNCBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8g
YjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLyh1Y2hhciBhLCB1Y2hh
cjQgYikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAg
cmVzdWx0WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3Bl
cmF0b3IrKHVzaG9ydDIgYSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3ItKHVzaG9ydDIgYSwgdXNob3J0
MiBiKSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDIgb3BlcmF0b3IqKHVzaG9ydDIgYSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAq
IGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IqKHVzaG9ydDIg
YSwgdXNob3J0IGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
ICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0MiBvcGVyYXRvcioodXNob3J0IGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLyh1c2hvcnQyIGEsIHVz
aG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQyIG9wZXJhdG9yLyh1c2hvcnQyIGEsIHVzaG9ydCBiKSB7CisgICAgdXNob3J0MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAv
IGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IvKHVzaG9ydCBhLCB1
c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0MyBvcGVyYXRvcisodXNob3J0MyBhLCB1c2hvcnQzIGIpIHsKKyAgICB1c2hvcnQzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsg
YlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0MyBvcGVyYXRvci0odXNob3J0MyBhLCB1c2hvcnQzIGIpIHsKKyAgICB1c2hvcnQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0MyBvcGVyYXRvcioodXNob3J0MyBhLCB1c2hvcnQzIGIpIHsKKyAgICB1
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvcioodXNob3J0MyBhLCB1c2hvcnQgYikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yKih1c2hvcnQgYSwgdXNob3J0MyBiKSB7CisgICAg
dXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDMgb3BlcmF0b3IvKHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7CisgICAgdXNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IvKHVzaG9ydDMgYSwgdXNob3J0IGIpIHsKKyAg
ICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRb
MV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0MyBvcGVyYXRvci8odXNob3J0IGEsIHVzaG9ydDMgYikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKyh1c2hvcnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJlc3VsdFsz
XSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
LSh1c2hvcnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJl
c3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKih1c2hvcnQ0IGEsIHVzaG9ydDQg
YikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJd
OworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yKih1c2hvcnQ0IGEsIHVzaG9ydCBiKSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7
CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IqKHVzaG9ydCBhLCB1c2hvcnQ0
IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICBy
ZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci8odXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci8odXNob3J0NCBhLCB1c2hv
cnQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAg
IHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLyh1c2hvcnQgYSwgdXNob3J0NCBiKSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yKyh1aW50MiBhLCB1aW50MiBiKSB7CisgICAgdWlu
dDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci0odWlu
dDIgYSwgdWludDIgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDIgb3BlcmF0b3IqKHVpbnQyIGEsIHVpbnQyIGIpIHsKKyAgICB1aW50MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAq
IGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yKih1aW50MiBhLCB1
aW50IGIpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9w
ZXJhdG9yKih1aW50IGEsIHVpbnQyIGIpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLyh1aW50MiBhLCB1aW50MiBiKSB7CisgICAgdWludDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci8odWludDIg
YSwgdWludCBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBi
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MiBvcGVyYXRvci8odWludCBhLCB1aW50MiBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvcisodWludDMgYSwgdWludDMgYikgeworICAgIHVp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDMgb3BlcmF0b3ItKHVpbnQzIGEsIHVpbnQzIGIpIHsKKyAgICB1aW50
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yKih1aW50MyBhLCB1aW50MyBiKSB7CisgICAgdWludDMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50MyBvcGVyYXRvcioodWludDMgYSwgdWludCBiKSB7CisgICAgdWludDMgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBi
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MyBvcGVyYXRvcioodWludCBhLCB1aW50MyBiKSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci8o
dWludDMgYSwgdWludDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IvKHVp
bnQzIGEsIHVpbnQgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8g
YjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IvKHVpbnQgYSwgdWludDMg
YikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IrKHVpbnQ0IGEsIHVpbnQ0IGIpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmVzdWx0
WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
LSh1aW50NCBhLCB1aW50NCBiKSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvcioodWludDQgYSwgdWludDQgYikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXN1bHRb
M10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iq
KHVpbnQ0IGEsIHVpbnQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJd
ICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IqKHVpbnQgYSwgdWludDQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IvKHVpbnQ0IGEsIHVpbnQ0IGIpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmVzdWx0
WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lyh1aW50NCBhLCB1aW50IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsy
XSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLyh1aW50IGEsIHVpbnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAg
cmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yKyhjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAg
Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci0o
Y2hhcjIgYSwgY2hhcjIgYikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjIgb3BlcmF0b3IqKGNoYXIyIGEsIGNoYXIyIGIpIHsKKyAgICBjaGFyMiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsx
XSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yKihjaGFyMiBh
LCBjaGFyIGIpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7
CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIy
IG9wZXJhdG9yKihjaGFyIGEsIGNoYXIyIGIpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLyhjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAgY2hh
cjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci8oY2hh
cjIgYSwgY2hhciBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
LyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMiBvcGVyYXRvci8oY2hhciBhLCBjaGFyMiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvcisoY2hhcjMgYSwgY2hhcjMgYikgeworICAg
IGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3ItKGNoYXIzIGEsIGNoYXIzIGIpIHsKKyAgICBj
aGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yKihjaGFyMyBhLCBjaGFyMyBiKSB7CisgICAgY2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvciooY2hhcjMgYSwgY2hhciBiKSB7CisgICAgY2hhcjMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
KiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMyBvcGVyYXRvciooY2hhciBhLCBjaGFyMyBiKSB7CisgICAgY2hhcjMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJl
c3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRv
ci8oY2hhcjMgYSwgY2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iv
KGNoYXIzIGEsIGNoYXIgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IvKGNoYXIgYSwgY2hh
cjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IrKGNoYXI0IGEsIGNoYXI0IGIpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLShjaGFyNCBhLCBjaGFyNCBiKSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvciooY2hhcjQgYSwgY2hhcjQgYikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXN1
bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3IqKGNoYXI0IGEsIGNoYXIgYikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBh
WzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IqKGNoYXIgYSwgY2hhcjQgYikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IvKGNoYXI0IGEsIGNoYXI0IGIpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLyhjaGFyNCBhLCBjaGFyIGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0g
YVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLyhjaGFyIGEsIGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvcisoc2hvcnQyIGEsIHNob3J0MiBiKSB7
CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9w
ZXJhdG9yLShzaG9ydDIgYSwgc2hvcnQyIGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IqKHNob3J0MiBhLCBzaG9ydDIgYikg
eworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBv
cGVyYXRvciooc2hvcnQyIGEsIHNob3J0IGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IqKHNob3J0IGEsIHNob3J0MiBiKSB7CisgICAg
c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJhdG9yLyhzaG9y
dDIgYSwgc2hvcnQyIGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFb
MF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IvKHNob3J0MiBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJhdG9yLyhzaG9ydCBhLCBz
aG9ydDIgYikgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
MyBvcGVyYXRvcisoc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQzIG9wZXJhdG9yLShzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDMgb3BlcmF0b3IqKHNob3J0MyBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0MyBvcGVyYXRvciooc2hvcnQzIGEsIHNob3J0IGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOwor
ICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMg
b3BlcmF0b3IqKHNob3J0IGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9y
LyhzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0
b3IvKHNob3J0MyBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0g
PSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLyhzaG9y
dCBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAv
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvcisoc2hvcnQ0IGEsIHNo
b3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsg
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLShzaG9ydDQgYSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
LSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFb
M10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IqKHNob3J0
NCBhLCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvciooc2hvcnQ0IGEsIHNob3J0IGIpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10g
KiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IqKHNob3J0IGEsIHNo
b3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAg
ICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLyhzaG9ydDQgYSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IvKHNob3J0NCBhLCBzaG9ydCBi
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXN1
bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
LyhzaG9ydCBhLCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDIgb3BlcmF0b3IrKGludDIgYSwgaW50MiBiKSB7CisgICAgaW50MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3ItKGludDIgYSwgaW50MiBiKSB7
CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0
b3IqKGludDIgYSwgaW50MiBiKSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDIgb3BlcmF0b3IqKGludDIgYSwgaW50IGIpIHsKKyAgICBpbnQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvciooaW50IGEsIGludDIgYikgewor
ICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLyhpbnQy
IGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQyIG9wZXJhdG9yLyhpbnQyIGEsIGludCBiKSB7CisgICAgaW50MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IvKGludCBhLCBpbnQyIGIpIHsKKyAgICBpbnQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8g
YlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvcisoaW50MyBhLCBpbnQz
IGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci0oaW50MyBhLCBpbnQzIGIpIHsK
KyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvciooaW50MyBhLCBpbnQzIGIpIHsKKyAgICBp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50MyBvcGVyYXRvciooaW50MyBhLCBpbnQgYikgeworICAgIGludDMgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBi
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQz
IG9wZXJhdG9yKihpbnQgYSwgaW50MyBiKSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJd
ID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IvKGludDMg
YSwgaW50MyBiKSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAv
IGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IvKGludDMgYSwgaW50
IGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci8oaW50IGEsIGludDMgYikgeworICAgIGludDMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yKyhpbnQ0IGEsIGludDQgYikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLShpbnQ0IGEsIGludDQgYikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJl
c3VsdFszXSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yKihpbnQ0IGEsIGludDQgYikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yKihpbnQ0IGEsIGludCBiKSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAq
IGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IqKGludCBhLCBpbnQ0IGIpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10g
PSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci8oaW50NCBh
LCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8g
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci8oaW50NCBhLCBpbnQgYikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJl
c3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLyhpbnQgYSwgaW50NCBiKSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yKyhoYWxmMiBhLCBoYWxmMiBi
KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBv
cGVyYXRvci0oaGFsZjIgYSwgaGFsZjIgYikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IqKGhhbGYyIGEsIGhhbGYyIGIpIHsKKyAg
ICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9y
KihoYWxmMiBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYyIG9wZXJhdG9yKihoYWxmIGEsIGhhbGYyIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLyhoYWxmMiBhLCBoYWxmMiBiKSB7
CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVy
YXRvci8oaGFsZjIgYSwgaGFsZiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMiBvcGVyYXRvci8oaGFsZiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvcisoaGFsZjMgYSwgaGFsZjMg
YikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3ItKGhhbGYzIGEsIGhhbGYzIGIp
IHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yKihoYWxmMyBhLCBoYWxmMyBiKSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvciooaGFsZjMgYSwgaGFsZiBiKSB7Cisg
ICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMyBvcGVyYXRvciooaGFsZiBhLCBoYWxmMyBiKSB7CisgICAgaGFsZjMgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
MyBvcGVyYXRvci8oaGFsZjMgYSwgaGFsZjMgYikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMg
b3BlcmF0b3IvKGhhbGYzIGEsIGhhbGYgYikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IvKGhh
bGYgYSwgaGFsZjMgYikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IrKGhhbGY0IGEsIGhhbGY0
IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07
CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLShoYWxmNCBhLCBoYWxmNCBiKSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOwor
ICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBiWzNd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvciooaGFsZjQgYSwgaGFsZjQg
YikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsK
KyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3IqKGhhbGY0IGEsIGhhbGYgYikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1
bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjQgYikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICog
YlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IvKGhhbGY0IGEsIGhhbGY0
IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07
CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLyhoYWxmNCBhLCBoYWxmIGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVz
dWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLyhoYWxmIGEsIGhhbGY0IGIpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAv
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvcisoZmxvYXQyIGEsIGZs
b2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQyIG9wZXJhdG9yLShmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBi
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IqKGZsb2F0MiBhLCBm
bG9hdDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MiBvcGVyYXRvciooZmxvYXQyIGEsIGZsb2F0IGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0MiBi
KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJh
dG9yLyhmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IvKGZsb2F0MiBhLCBmbG9hdCBiKSB7Cisg
ICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRb
MV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yLyhm
bG9hdCBhLCBmbG9hdDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MyBvcGVyYXRvcisoZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAgZmxvYXQzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzIG9wZXJhdG9yLShmbG9hdDMgYSwgZmxvYXQzIGIpIHsKKyAgICBmbG9hdDMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IqKGZsb2F0MyBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvciooZmxvYXQzIGEsIGZsb2F0IGIpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDMgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0MyBiKSB7CisgICAgZmxvYXQzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
IG9wZXJhdG9yLyhmbG9hdDMgYSwgZmxvYXQzIGIpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOwor
ICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDMgb3BlcmF0b3IvKGZsb2F0MyBhLCBmbG9hdCBiKSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJh
dG9yLyhmbG9hdCBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJd
ID0gYSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvcisoZmxv
YXQ0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdICsgYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLShmbG9hdDQgYSwgZmxvYXQ0IGIpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3Vs
dFszXSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3IqKGZsb2F0NCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvciooZmxvYXQ0IGEsIGZsb2F0IGIpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFsz
XSA9IGFbM10gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IqKGZs
b2F0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
ICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICog
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLyhmbG9hdDQgYSwgZmxvYXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10g
LyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IvKGZsb2F0NCBh
LCBmbG9hdCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsK
KyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLyhmbG9hdCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLShjaGFyMiBhKSB7CisgICAgY2hhcjIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci0oY2hhcjMgYSkgeworICAgIGNoYXIzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAg
ICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3ItKGNoYXI0IGEpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07
CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmVz
dWx0WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvci0o
c2hvcnQyIGEpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOwor
ICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3Bl
cmF0b3ItKHNob3J0MyBhKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAt
YVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLShzaG9ydDQgYSkgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFb
MV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmVzdWx0WzNdID0gLWFbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3ItKGludDIgYSkgeworICAgIGludDIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLShpbnQzIGEpIHsKKyAgICBpbnQzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAg
ICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci0oaW50NCBhKSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07Cisg
ICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmVzdWx0
WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLShoYWxm
MiBhKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJl
c3VsdFsxXSA9IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci0o
aGFsZjMgYSkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAg
ICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3ItKGhhbGY0IGEpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVz
dWx0WzJdID0gLWFbMl07CisgICAgcmVzdWx0WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MiBvcGVyYXRvci0oZmxvYXQyIGEpIHsKKyAgICBmbG9hdDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3ItKGZsb2F0MyBhKSB7CisgICAgZmxvYXQzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAg
ICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLShmbG9hdDQgYSkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFb
MF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAg
cmVzdWx0WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KIAotbmF0aXZlIHR5cGVk
ZWYgaW50MjsKLW5hdGl2ZSB0eXBlZGVmIGludDM7Ci1uYXRpdmUgdHlwZWRlZiBpbnQ0OworYm9v
bCBvcGVyYXRvcj09KGJvb2wyIGEsIGJvb2wyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAm
JiBhLnkgPT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KGJvb2wzIGEsIGJvb2wzIGIpIHsKKyAg
ICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29s
IG9wZXJhdG9yPT0oYm9vbDQgYSwgYm9vbDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYm
IGEueSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGJvb2wg
b3BlcmF0b3IueChib29sMik7CituYXRpdmUgYm9vbCBvcGVyYXRvci55KGJvb2wyKTsKK25hdGl2
ZSBib29sIG9wZXJhdG9yLngoYm9vbDMpOworbmF0aXZlIGJvb2wgb3BlcmF0b3IueShib29sMyk7
CituYXRpdmUgYm9vbCBvcGVyYXRvci56KGJvb2wzKTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLngo
Ym9vbDQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3IueShib29sNCk7CituYXRpdmUgYm9vbCBvcGVy
YXRvci56KGJvb2w0KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLncoYm9vbDQpOworbmF0aXZlIGJv
b2wyIG9wZXJhdG9yLng9KGJvb2wyLCBib29sKTsKK25hdGl2ZSBib29sMiBvcGVyYXRvci55PShi
b29sMiwgYm9vbCk7CituYXRpdmUgYm9vbDMgb3BlcmF0b3IueD0oYm9vbDMsIGJvb2wpOworbmF0
aXZlIGJvb2wzIG9wZXJhdG9yLnk9KGJvb2wzLCBib29sKTsKK25hdGl2ZSBib29sMyBvcGVyYXRv
ci56PShib29sMywgYm9vbCk7CituYXRpdmUgYm9vbDQgb3BlcmF0b3IueD0oYm9vbDQsIGJvb2wp
OworbmF0aXZlIGJvb2w0IG9wZXJhdG9yLnk9KGJvb2w0LCBib29sKTsKK25hdGl2ZSBib29sNCBv
cGVyYXRvci56PShib29sNCwgYm9vbCk7CituYXRpdmUgYm9vbDQgb3BlcmF0b3Iudz0oYm9vbDQs
IGJvb2wpOworYm9vbCBvcGVyYXRvcltdKGJvb2wyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAo
aW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJuIHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAg
ICAgICAgcmV0dXJuIHYueTsKKyAgICB0cmFwOworfQorYm9vbCBvcGVyYXRvcltdKGJvb2wzIHYs
IHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJuIHYueDsK
KyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBpZiAoaW5kZXgg
PT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICB0cmFwOworfQorYm9vbCBvcGVyYXRvcltd
KGJvb2w0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0
dXJuIHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBp
ZiAoaW5kZXggPT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICBpZiAoaW5kZXggPT0gMykK
KyAgICAgICAgcmV0dXJuIHYudzsKKyAgICB0cmFwOworfQorYm9vbDIgb3BlcmF0b3JbXT0oYm9v
bDIgdiwgdWludCBpbmRleCwgYm9vbCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAg
ICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICBjYXNlIDE6CisgICAgICAg
ICAgICB2LnkgPSBhOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9
CisgICAgcmV0dXJuIHY7Cit9Citib29sMyBvcGVyYXRvcltdPShib29sMyB2LCB1aW50IGluZGV4
LCBib29sIGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAg
ICAgICAgIHYueCA9IGE7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7Cisg
ICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2w0IG9wZXJhdG9y
W109KGJvb2w0IHYsIHVpbnQgaW5kZXgsIGJvb2wgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsK
KyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgY2FzZSAxOgor
ICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0g
YTsKKyAgICAgICAgY2FzZSAzOgorICAgICAgICAgICAgdi53ID0gYTsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVy
YXRvcj09KHVjaGFyMiBhLCB1Y2hhcjIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEu
eSA9PSBiLnk7Cit9Citib29sIG9wZXJhdG9yPT0odWNoYXIzIGEsIHVjaGFyMyBiKSB7CisgICAg
cmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBv
cGVyYXRvcj09KHVjaGFyNCBhLCB1Y2hhcjQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYm
IGEueSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHVjaGFy
IG9wZXJhdG9yLngodWNoYXIyKTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRvci55KHVjaGFyMik7Citu
YXRpdmUgdWNoYXIgb3BlcmF0b3IueCh1Y2hhcjMpOworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLnko
dWNoYXIzKTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRvci56KHVjaGFyMyk7CituYXRpdmUgdWNoYXIg
b3BlcmF0b3IueCh1Y2hhcjQpOworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLnkodWNoYXI0KTsKK25h
dGl2ZSB1Y2hhciBvcGVyYXRvci56KHVjaGFyNCk7CituYXRpdmUgdWNoYXIgb3BlcmF0b3Iudyh1
Y2hhcjQpOworbmF0aXZlIHVjaGFyMiBvcGVyYXRvci54PSh1Y2hhcjIsIHVjaGFyKTsKK25hdGl2
ZSB1Y2hhcjIgb3BlcmF0b3IueT0odWNoYXIyLCB1Y2hhcik7CituYXRpdmUgdWNoYXIzIG9wZXJh
dG9yLng9KHVjaGFyMywgdWNoYXIpOworbmF0aXZlIHVjaGFyMyBvcGVyYXRvci55PSh1Y2hhcjMs
IHVjaGFyKTsKK25hdGl2ZSB1Y2hhcjMgb3BlcmF0b3Iuej0odWNoYXIzLCB1Y2hhcik7CituYXRp
dmUgdWNoYXI0IG9wZXJhdG9yLng9KHVjaGFyNCwgdWNoYXIpOworbmF0aXZlIHVjaGFyNCBvcGVy
YXRvci55PSh1Y2hhcjQsIHVjaGFyKTsKK25hdGl2ZSB1Y2hhcjQgb3BlcmF0b3Iuej0odWNoYXI0
LCB1Y2hhcik7CituYXRpdmUgdWNoYXI0IG9wZXJhdG9yLnc9KHVjaGFyNCwgdWNoYXIpOwordWNo
YXIgb3BlcmF0b3JbXSh1Y2hhcjIgdiwgdWludCBpbmRleCkgeworICAgIGlmIChpbmRleCA9PSAw
KQorICAgICAgICByZXR1cm4gdi54OworICAgIGlmIChpbmRleCA9PSAxKQorICAgICAgICByZXR1
cm4gdi55OworICAgIHRyYXA7Cit9Cit1Y2hhciBvcGVyYXRvcltdKHVjaGFyMyB2LCB1aW50IGlu
ZGV4KSB7CisgICAgaWYgKGluZGV4ID09IDApCisgICAgICAgIHJldHVybiB2Lng7CisgICAgaWYg
KGluZGV4ID09IDEpCisgICAgICAgIHJldHVybiB2Lnk7CisgICAgaWYgKGluZGV4ID09IDIpCisg
ICAgICAgIHJldHVybiB2Lno7CisgICAgdHJhcDsKK30KK3VjaGFyIG9wZXJhdG9yW10odWNoYXI0
IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJuIHYu
eDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBpZiAoaW5k
ZXggPT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICBpZiAoaW5kZXggPT0gMykKKyAgICAg
ICAgcmV0dXJuIHYudzsKKyAgICB0cmFwOworfQordWNoYXIyIG9wZXJhdG9yW109KHVjaGFyMiB2
LCB1aW50IGluZGV4LCB1Y2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBj
YXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAg
ICB2LnkgPSBhOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cisg
ICAgcmV0dXJuIHY7Cit9Cit1Y2hhcjMgb3BlcmF0b3JbXT0odWNoYXIzIHYsIHVpbnQgaW5kZXgs
IHVjaGFyIGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAg
ICAgICAgIHYueCA9IGE7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7Cisg
ICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3VjaGFyNCBvcGVyYXRv
cltdPSh1Y2hhcjQgdiwgdWludCBpbmRleCwgdWNoYXIgYSkgeworICAgIHN3aXRjaCAoaW5kZXgp
IHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgY2FzZSAx
OgorICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56
ID0gYTsKKyAgICAgICAgY2FzZSAzOgorICAgICAgICAgICAgdi53ID0gYTsKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBv
cGVyYXRvcj09KHVzaG9ydDIgYSwgdXNob3J0MiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLngg
JiYgYS55ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PSh1c2hvcnQzIGEsIHVzaG9ydDMgYikg
eworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30K
K2Jvb2wgb3BlcmF0b3I9PSh1c2hvcnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHJldHVybiBhLngg
PT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0
aXZlIHVzaG9ydCBvcGVyYXRvci54KHVzaG9ydDIpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci55
KHVzaG9ydDIpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci54KHVzaG9ydDMpOworbmF0aXZlIHVz
aG9ydCBvcGVyYXRvci55KHVzaG9ydDMpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci56KHVzaG9y
dDMpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci54KHVzaG9ydDQpOworbmF0aXZlIHVzaG9ydCBv
cGVyYXRvci55KHVzaG9ydDQpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci56KHVzaG9ydDQpOwor
bmF0aXZlIHVzaG9ydCBvcGVyYXRvci53KHVzaG9ydDQpOworbmF0aXZlIHVzaG9ydDIgb3BlcmF0
b3IueD0odXNob3J0MiwgdXNob3J0KTsKK25hdGl2ZSB1c2hvcnQyIG9wZXJhdG9yLnk9KHVzaG9y
dDIsIHVzaG9ydCk7CituYXRpdmUgdXNob3J0MyBvcGVyYXRvci54PSh1c2hvcnQzLCB1c2hvcnQp
OworbmF0aXZlIHVzaG9ydDMgb3BlcmF0b3IueT0odXNob3J0MywgdXNob3J0KTsKK25hdGl2ZSB1
c2hvcnQzIG9wZXJhdG9yLno9KHVzaG9ydDMsIHVzaG9ydCk7CituYXRpdmUgdXNob3J0NCBvcGVy
YXRvci54PSh1c2hvcnQ0LCB1c2hvcnQpOworbmF0aXZlIHVzaG9ydDQgb3BlcmF0b3IueT0odXNo
b3J0NCwgdXNob3J0KTsKK25hdGl2ZSB1c2hvcnQ0IG9wZXJhdG9yLno9KHVzaG9ydDQsIHVzaG9y
dCk7CituYXRpdmUgdXNob3J0NCBvcGVyYXRvci53PSh1c2hvcnQ0LCB1c2hvcnQpOwordXNob3J0
IG9wZXJhdG9yW10odXNob3J0MiB2LCB1aW50IGluZGV4KSB7CisgICAgaWYgKGluZGV4ID09IDAp
CisgICAgICAgIHJldHVybiB2Lng7CisgICAgaWYgKGluZGV4ID09IDEpCisgICAgICAgIHJldHVy
biB2Lnk7CisgICAgdHJhcDsKK30KK3VzaG9ydCBvcGVyYXRvcltdKHVzaG9ydDMgdiwgdWludCBp
bmRleCkgeworICAgIGlmIChpbmRleCA9PSAwKQorICAgICAgICByZXR1cm4gdi54OworICAgIGlm
IChpbmRleCA9PSAxKQorICAgICAgICByZXR1cm4gdi55OworICAgIGlmIChpbmRleCA9PSAyKQor
ICAgICAgICByZXR1cm4gdi56OworICAgIHRyYXA7Cit9Cit1c2hvcnQgb3BlcmF0b3JbXSh1c2hv
cnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJu
IHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBpZiAo
aW5kZXggPT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICBpZiAoaW5kZXggPT0gMykKKyAg
ICAgICAgcmV0dXJuIHYudzsKKyAgICB0cmFwOworfQordXNob3J0MiBvcGVyYXRvcltdPSh1c2hv
cnQyIHYsIHVpbnQgaW5kZXgsIHVzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICBjYXNlIDE6CisgICAg
ICAgICAgICB2LnkgPSBhOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAg
ICB9CisgICAgcmV0dXJuIHY7Cit9Cit1c2hvcnQzIG9wZXJhdG9yW109KHVzaG9ydDMgdiwgdWlu
dCBpbmRleCwgdXNob3J0IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2Ug
MDoKKyAgICAgICAgICAgIHYueCA9IGE7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYu
eSA9IGE7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3VzaG9y
dDQgb3BlcmF0b3JbXT0odXNob3J0NCB2LCB1aW50IGluZGV4LCB1c2hvcnQgYSkgeworICAgIHN3
aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAg
ICAgICAgY2FzZSAxOgorICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgY2FzZSAyOgorICAg
ICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgY2FzZSAzOgorICAgICAgICAgICAgdi53ID0gYTsK
KyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2
OworfQorYm9vbCBvcGVyYXRvcj09KHVpbnQyIGEsIHVpbnQyIGIpIHsKKyAgICByZXR1cm4gYS54
ID09IGIueCAmJiBhLnkgPT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KHVpbnQzIGEsIHVpbnQz
IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7
Cit9Citib29sIG9wZXJhdG9yPT0odWludDQgYSwgdWludDQgYikgeworICAgIHJldHVybiBhLngg
PT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0
aXZlIHVpbnQgb3BlcmF0b3IueCh1aW50Mik7CituYXRpdmUgdWludCBvcGVyYXRvci55KHVpbnQy
KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLngodWludDMpOworbmF0aXZlIHVpbnQgb3BlcmF0b3Iu
eSh1aW50Myk7CituYXRpdmUgdWludCBvcGVyYXRvci56KHVpbnQzKTsKK25hdGl2ZSB1aW50IG9w
ZXJhdG9yLngodWludDQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IueSh1aW50NCk7CituYXRpdmUg
dWludCBvcGVyYXRvci56KHVpbnQ0KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLncodWludDQpOwor
bmF0aXZlIHVpbnQyIG9wZXJhdG9yLng9KHVpbnQyLCB1aW50KTsKK25hdGl2ZSB1aW50MiBvcGVy
YXRvci55PSh1aW50MiwgdWludCk7CituYXRpdmUgdWludDMgb3BlcmF0b3IueD0odWludDMsIHVp
bnQpOworbmF0aXZlIHVpbnQzIG9wZXJhdG9yLnk9KHVpbnQzLCB1aW50KTsKK25hdGl2ZSB1aW50
MyBvcGVyYXRvci56PSh1aW50MywgdWludCk7CituYXRpdmUgdWludDQgb3BlcmF0b3IueD0odWlu
dDQsIHVpbnQpOworbmF0aXZlIHVpbnQ0IG9wZXJhdG9yLnk9KHVpbnQ0LCB1aW50KTsKK25hdGl2
ZSB1aW50NCBvcGVyYXRvci56PSh1aW50NCwgdWludCk7CituYXRpdmUgdWludDQgb3BlcmF0b3Iu
dz0odWludDQsIHVpbnQpOwordWludCBvcGVyYXRvcltdKHVpbnQyIHYsIHVpbnQgaW5kZXgpIHsK
KyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJuIHYueDsKKyAgICBpZiAoaW5kZXgg
PT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICB0cmFwOworfQordWludCBvcGVyYXRvcltd
KHVpbnQzIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0
dXJuIHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBp
ZiAoaW5kZXggPT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICB0cmFwOworfQordWludCBv
cGVyYXRvcltdKHVpbnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAg
ICAgICAgcmV0dXJuIHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYu
eTsKKyAgICBpZiAoaW5kZXggPT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICBpZiAoaW5k
ZXggPT0gMykKKyAgICAgICAgcmV0dXJuIHYudzsKKyAgICB0cmFwOworfQordWludDIgb3BlcmF0
b3JbXT0odWludDIgdiwgdWludCBpbmRleCwgdWludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkg
eworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICBjYXNlIDE6
CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJh
cDsKKyAgICB9CisgICAgcmV0dXJuIHY7Cit9Cit1aW50MyBvcGVyYXRvcltdPSh1aW50MyB2LCB1
aW50IGluZGV4LCB1aW50IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2Ug
MDoKKyAgICAgICAgICAgIHYueCA9IGE7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYu
eSA9IGE7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3VpbnQ0
IG9wZXJhdG9yW109KHVpbnQ0IHYsIHVpbnQgaW5kZXgsIHVpbnQgYSkgeworICAgIHN3aXRjaCAo
aW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAg
Y2FzZSAxOgorICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAg
ICAgdi56ID0gYTsKKyAgICAgICAgY2FzZSAzOgorICAgICAgICAgICAgdi53ID0gYTsKKyAgICAg
ICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQor
Ym9vbCBvcGVyYXRvcj09KGNoYXIyIGEsIGNoYXIyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIu
eCAmJiBhLnkgPT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KGNoYXIzIGEsIGNoYXIzIGIpIHsK
KyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citi
b29sIG9wZXJhdG9yPT0oY2hhcjQgYSwgY2hhcjQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54
ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGNo
YXIgb3BlcmF0b3IueChjaGFyMik7CituYXRpdmUgY2hhciBvcGVyYXRvci55KGNoYXIyKTsKK25h
dGl2ZSBjaGFyIG9wZXJhdG9yLngoY2hhcjMpOworbmF0aXZlIGNoYXIgb3BlcmF0b3IueShjaGFy
Myk7CituYXRpdmUgY2hhciBvcGVyYXRvci56KGNoYXIzKTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9y
LngoY2hhcjQpOworbmF0aXZlIGNoYXIgb3BlcmF0b3IueShjaGFyNCk7CituYXRpdmUgY2hhciBv
cGVyYXRvci56KGNoYXI0KTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9yLncoY2hhcjQpOworbmF0aXZl
IGNoYXIyIG9wZXJhdG9yLng9KGNoYXIyLCBjaGFyKTsKK25hdGl2ZSBjaGFyMiBvcGVyYXRvci55
PShjaGFyMiwgY2hhcik7CituYXRpdmUgY2hhcjMgb3BlcmF0b3IueD0oY2hhcjMsIGNoYXIpOwor
bmF0aXZlIGNoYXIzIG9wZXJhdG9yLnk9KGNoYXIzLCBjaGFyKTsKK25hdGl2ZSBjaGFyMyBvcGVy
YXRvci56PShjaGFyMywgY2hhcik7CituYXRpdmUgY2hhcjQgb3BlcmF0b3IueD0oY2hhcjQsIGNo
YXIpOworbmF0aXZlIGNoYXI0IG9wZXJhdG9yLnk9KGNoYXI0LCBjaGFyKTsKK25hdGl2ZSBjaGFy
NCBvcGVyYXRvci56PShjaGFyNCwgY2hhcik7CituYXRpdmUgY2hhcjQgb3BlcmF0b3Iudz0oY2hh
cjQsIGNoYXIpOworY2hhciBvcGVyYXRvcltdKGNoYXIyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBp
ZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJuIHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkK
KyAgICAgICAgcmV0dXJuIHYueTsKKyAgICB0cmFwOworfQorY2hhciBvcGVyYXRvcltdKGNoYXIz
IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJuIHYu
eDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBpZiAoaW5k
ZXggPT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICB0cmFwOworfQorY2hhciBvcGVyYXRv
cltdKGNoYXI0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAg
cmV0dXJuIHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAg
ICBpZiAoaW5kZXggPT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICBpZiAoaW5kZXggPT0g
MykKKyAgICAgICAgcmV0dXJuIHYudzsKKyAgICB0cmFwOworfQorY2hhcjIgb3BlcmF0b3JbXT0o
Y2hhcjIgdiwgdWludCBpbmRleCwgY2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICBjYXNlIDE6CisgICAg
ICAgICAgICB2LnkgPSBhOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAg
ICB9CisgICAgcmV0dXJuIHY7Cit9CitjaGFyMyBvcGVyYXRvcltdPShjaGFyMyB2LCB1aW50IGlu
ZGV4LCBjaGFyIGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHYueCA9IGE7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7
CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2NoYXI0IG9wZXJh
dG9yW109KGNoYXI0IHYsIHVpbnQgaW5kZXgsIGNoYXIgYSkgeworICAgIHN3aXRjaCAoaW5kZXgp
IHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgY2FzZSAx
OgorICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56
ID0gYTsKKyAgICAgICAgY2FzZSAzOgorICAgICAgICAgICAgdi53ID0gYTsKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBv
cGVyYXRvcj09KHNob3J0MiBhLCBzaG9ydDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYm
IGEueSA9PSBiLnk7Cit9Citib29sIG9wZXJhdG9yPT0oc2hvcnQzIGEsIHNob3J0MyBiKSB7Cisg
ICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9v
bCBvcGVyYXRvcj09KHNob3J0NCBhLCBzaG9ydDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54
ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHNo
b3J0IG9wZXJhdG9yLngoc2hvcnQyKTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci55KHNob3J0Mik7
CituYXRpdmUgc2hvcnQgb3BlcmF0b3IueChzaG9ydDMpOworbmF0aXZlIHNob3J0IG9wZXJhdG9y
Lnkoc2hvcnQzKTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci56KHNob3J0Myk7CituYXRpdmUgc2hv
cnQgb3BlcmF0b3IueChzaG9ydDQpOworbmF0aXZlIHNob3J0IG9wZXJhdG9yLnkoc2hvcnQ0KTsK
K25hdGl2ZSBzaG9ydCBvcGVyYXRvci56KHNob3J0NCk7CituYXRpdmUgc2hvcnQgb3BlcmF0b3Iu
dyhzaG9ydDQpOworbmF0aXZlIHNob3J0MiBvcGVyYXRvci54PShzaG9ydDIsIHNob3J0KTsKK25h
dGl2ZSBzaG9ydDIgb3BlcmF0b3IueT0oc2hvcnQyLCBzaG9ydCk7CituYXRpdmUgc2hvcnQzIG9w
ZXJhdG9yLng9KHNob3J0Mywgc2hvcnQpOworbmF0aXZlIHNob3J0MyBvcGVyYXRvci55PShzaG9y
dDMsIHNob3J0KTsKK25hdGl2ZSBzaG9ydDMgb3BlcmF0b3Iuej0oc2hvcnQzLCBzaG9ydCk7Citu
YXRpdmUgc2hvcnQ0IG9wZXJhdG9yLng9KHNob3J0NCwgc2hvcnQpOworbmF0aXZlIHNob3J0NCBv
cGVyYXRvci55PShzaG9ydDQsIHNob3J0KTsKK25hdGl2ZSBzaG9ydDQgb3BlcmF0b3Iuej0oc2hv
cnQ0LCBzaG9ydCk7CituYXRpdmUgc2hvcnQ0IG9wZXJhdG9yLnc9KHNob3J0NCwgc2hvcnQpOwor
c2hvcnQgb3BlcmF0b3JbXShzaG9ydDIgdiwgdWludCBpbmRleCkgeworICAgIGlmIChpbmRleCA9
PSAwKQorICAgICAgICByZXR1cm4gdi54OworICAgIGlmIChpbmRleCA9PSAxKQorICAgICAgICBy
ZXR1cm4gdi55OworICAgIHRyYXA7Cit9CitzaG9ydCBvcGVyYXRvcltdKHNob3J0MyB2LCB1aW50
IGluZGV4KSB7CisgICAgaWYgKGluZGV4ID09IDApCisgICAgICAgIHJldHVybiB2Lng7CisgICAg
aWYgKGluZGV4ID09IDEpCisgICAgICAgIHJldHVybiB2Lnk7CisgICAgaWYgKGluZGV4ID09IDIp
CisgICAgICAgIHJldHVybiB2Lno7CisgICAgdHJhcDsKK30KK3Nob3J0IG9wZXJhdG9yW10oc2hv
cnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJu
IHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBpZiAo
aW5kZXggPT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICBpZiAoaW5kZXggPT0gMykKKyAg
ICAgICAgcmV0dXJuIHYudzsKKyAgICB0cmFwOworfQorc2hvcnQyIG9wZXJhdG9yW109KHNob3J0
MiB2LCB1aW50IGluZGV4LCBzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAg
ICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICBjYXNlIDE6CisgICAgICAg
ICAgICB2LnkgPSBhOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9
CisgICAgcmV0dXJuIHY7Cit9CitzaG9ydDMgb3BlcmF0b3JbXT0oc2hvcnQzIHYsIHVpbnQgaW5k
ZXgsIHNob3J0IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHYueCA9IGE7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7
CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3Nob3J0NCBvcGVy
YXRvcltdPShzaG9ydDQgdiwgdWludCBpbmRleCwgc2hvcnQgYSkgeworICAgIHN3aXRjaCAoaW5k
ZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgY2Fz
ZSAxOgorICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAg
di56ID0gYTsKKyAgICAgICAgY2FzZSAzOgorICAgICAgICAgICAgdi53ID0gYTsKKyAgICAgICAg
ZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9v
bCBvcGVyYXRvcj09KGludDIgYSwgaW50MiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYg
YS55ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShpbnQzIGEsIGludDMgYikgeworICAgIHJl
dHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3Bl
cmF0b3I9PShpbnQ0IGEsIGludDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9
PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGludCBvcGVyYXRv
ci54KGludDIpOworbmF0aXZlIGludCBvcGVyYXRvci55KGludDIpOworbmF0aXZlIGludCBvcGVy
YXRvci54KGludDMpOworbmF0aXZlIGludCBvcGVyYXRvci55KGludDMpOworbmF0aXZlIGludCBv
cGVyYXRvci56KGludDMpOworbmF0aXZlIGludCBvcGVyYXRvci54KGludDQpOworbmF0aXZlIGlu
dCBvcGVyYXRvci55KGludDQpOworbmF0aXZlIGludCBvcGVyYXRvci56KGludDQpOworbmF0aXZl
IGludCBvcGVyYXRvci53KGludDQpOworbmF0aXZlIGludDIgb3BlcmF0b3IueD0oaW50MiwgaW50
KTsKK25hdGl2ZSBpbnQyIG9wZXJhdG9yLnk9KGludDIsIGludCk7CituYXRpdmUgaW50MyBvcGVy
YXRvci54PShpbnQzLCBpbnQpOworbmF0aXZlIGludDMgb3BlcmF0b3IueT0oaW50MywgaW50KTsK
K25hdGl2ZSBpbnQzIG9wZXJhdG9yLno9KGludDMsIGludCk7CituYXRpdmUgaW50NCBvcGVyYXRv
ci54PShpbnQ0LCBpbnQpOworbmF0aXZlIGludDQgb3BlcmF0b3IueT0oaW50NCwgaW50KTsKK25h
dGl2ZSBpbnQ0IG9wZXJhdG9yLno9KGludDQsIGludCk7CituYXRpdmUgaW50NCBvcGVyYXRvci53
PShpbnQ0LCBpbnQpOworaW50IG9wZXJhdG9yW10oaW50MiB2LCB1aW50IGluZGV4KSB7CisgICAg
aWYgKGluZGV4ID09IDApCisgICAgICAgIHJldHVybiB2Lng7CisgICAgaWYgKGluZGV4ID09IDEp
CisgICAgICAgIHJldHVybiB2Lnk7CisgICAgdHJhcDsKK30KK2ludCBvcGVyYXRvcltdKGludDMg
diwgdWludCBpbmRleCkgeworICAgIGlmIChpbmRleCA9PSAwKQorICAgICAgICByZXR1cm4gdi54
OworICAgIGlmIChpbmRleCA9PSAxKQorICAgICAgICByZXR1cm4gdi55OworICAgIGlmIChpbmRl
eCA9PSAyKQorICAgICAgICByZXR1cm4gdi56OworICAgIHRyYXA7Cit9CitpbnQgb3BlcmF0b3Jb
XShpbnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0
dXJuIHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBp
ZiAoaW5kZXggPT0gMikKKyAgICAgICAgcmV0dXJuIHYuejsKKyAgICBpZiAoaW5kZXggPT0gMykK
KyAgICAgICAgcmV0dXJuIHYudzsKKyAgICB0cmFwOworfQoraW50MiBvcGVyYXRvcltdPShpbnQy
IHYsIHVpbnQgaW5kZXgsIGludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBj
YXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAg
ICB2LnkgPSBhOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cisg
ICAgcmV0dXJuIHY7Cit9CitpbnQzIG9wZXJhdG9yW109KGludDMgdiwgdWludCBpbmRleCwgaW50
IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAg
IHYueCA9IGE7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAg
IGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2ludDQgb3BlcmF0b3JbXT0oaW50
NCB2LCB1aW50IGluZGV4LCBpbnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAg
Y2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAg
ICAgdi55ID0gYTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAg
ICAgY2FzZSAzOgorICAgICAgICAgICAgdi53ID0gYTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KGhh
bGYyIGEsIGhhbGYyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55Owor
fQorYm9vbCBvcGVyYXRvcj09KGhhbGYzIGEsIGhhbGYzIGIpIHsKKyAgICByZXR1cm4gYS54ID09
IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9wZXJhdG9yPT0oaGFs
ZjQgYSwgaGFsZjQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYg
YS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGhhbGYgb3BlcmF0b3IueChoYWxm
Mik7CituYXRpdmUgaGFsZiBvcGVyYXRvci55KGhhbGYyKTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9y
LngoaGFsZjMpOworbmF0aXZlIGhhbGYgb3BlcmF0b3IueShoYWxmMyk7CituYXRpdmUgaGFsZiBv
cGVyYXRvci56KGhhbGYzKTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9yLngoaGFsZjQpOworbmF0aXZl
IGhhbGYgb3BlcmF0b3IueShoYWxmNCk7CituYXRpdmUgaGFsZiBvcGVyYXRvci56KGhhbGY0KTsK
K25hdGl2ZSBoYWxmIG9wZXJhdG9yLncoaGFsZjQpOworbmF0aXZlIGhhbGYyIG9wZXJhdG9yLng9
KGhhbGYyLCBoYWxmKTsKK25hdGl2ZSBoYWxmMiBvcGVyYXRvci55PShoYWxmMiwgaGFsZik7Citu
YXRpdmUgaGFsZjMgb3BlcmF0b3IueD0oaGFsZjMsIGhhbGYpOworbmF0aXZlIGhhbGYzIG9wZXJh
dG9yLnk9KGhhbGYzLCBoYWxmKTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRvci56PShoYWxmMywgaGFs
Zik7CituYXRpdmUgaGFsZjQgb3BlcmF0b3IueD0oaGFsZjQsIGhhbGYpOworbmF0aXZlIGhhbGY0
IG9wZXJhdG9yLnk9KGhhbGY0LCBoYWxmKTsKK25hdGl2ZSBoYWxmNCBvcGVyYXRvci56PShoYWxm
NCwgaGFsZik7CituYXRpdmUgaGFsZjQgb3BlcmF0b3Iudz0oaGFsZjQsIGhhbGYpOworaGFsZiBv
cGVyYXRvcltdKGhhbGYyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAg
ICAgICAgcmV0dXJuIHYueDsKKyAgICBpZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYu
eTsKKyAgICB0cmFwOworfQoraGFsZiBvcGVyYXRvcltdKGhhbGYzIHYsIHVpbnQgaW5kZXgpIHsK
KyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJuIHYueDsKKyAgICBpZiAoaW5kZXgg
PT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBpZiAoaW5kZXggPT0gMikKKyAgICAgICAg
cmV0dXJuIHYuejsKKyAgICB0cmFwOworfQoraGFsZiBvcGVyYXRvcltdKGhhbGY0IHYsIHVpbnQg
aW5kZXgpIHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJuIHYueDsKKyAgICBp
ZiAoaW5kZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBpZiAoaW5kZXggPT0gMikK
KyAgICAgICAgcmV0dXJuIHYuejsKKyAgICBpZiAoaW5kZXggPT0gMykKKyAgICAgICAgcmV0dXJu
IHYudzsKKyAgICB0cmFwOworfQoraGFsZjIgb3BlcmF0b3JbXT0oaGFsZjIgdiwgdWludCBpbmRl
eCwgaGFsZiBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAg
ICAgICAgICB2LnggPSBhOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOwor
ICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0dXJuIHY7
Cit9CitoYWxmMyBvcGVyYXRvcltdPShoYWxmMyB2LCB1aW50IGluZGV4LCBoYWxmIGEpIHsKKyAg
ICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYueCA9IGE7
CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgIGNhc2UgMjoK
KyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFw
OworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2hhbGY0IG9wZXJhdG9yW109KGhhbGY0IHYsIHVp
bnQgaW5kZXgsIGhhbGYgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAw
OgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgdi55
ID0gYTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgY2Fz
ZSAzOgorICAgICAgICAgICAgdi53ID0gYTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0MiBh
LCBmbG9hdDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnk7Cit9Citi
b29sIG9wZXJhdG9yPT0oZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBi
LnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0
NCBhLCBmbG9hdDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYg
YS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGZsb2F0IG9wZXJhdG9yLngoZmxv
YXQyKTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvci55KGZsb2F0Mik7CituYXRpdmUgZmxvYXQgb3Bl
cmF0b3IueChmbG9hdDMpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLnkoZmxvYXQzKTsKK25hdGl2
ZSBmbG9hdCBvcGVyYXRvci56KGZsb2F0Myk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueChmbG9h
dDQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLnkoZmxvYXQ0KTsKK25hdGl2ZSBmbG9hdCBvcGVy
YXRvci56KGZsb2F0NCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IudyhmbG9hdDQpOworbmF0aXZl
IGZsb2F0MiBvcGVyYXRvci54PShmbG9hdDIsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDIgb3BlcmF0
b3IueT0oZmxvYXQyLCBmbG9hdCk7CituYXRpdmUgZmxvYXQzIG9wZXJhdG9yLng9KGZsb2F0Mywg
ZmxvYXQpOworbmF0aXZlIGZsb2F0MyBvcGVyYXRvci55PShmbG9hdDMsIGZsb2F0KTsKK25hdGl2
ZSBmbG9hdDMgb3BlcmF0b3Iuej0oZmxvYXQzLCBmbG9hdCk7CituYXRpdmUgZmxvYXQ0IG9wZXJh
dG9yLng9KGZsb2F0NCwgZmxvYXQpOworbmF0aXZlIGZsb2F0NCBvcGVyYXRvci55PShmbG9hdDQs
IGZsb2F0KTsKK25hdGl2ZSBmbG9hdDQgb3BlcmF0b3Iuej0oZmxvYXQ0LCBmbG9hdCk7CituYXRp
dmUgZmxvYXQ0IG9wZXJhdG9yLnc9KGZsb2F0NCwgZmxvYXQpOworZmxvYXQgb3BlcmF0b3JbXShm
bG9hdDIgdiwgdWludCBpbmRleCkgeworICAgIGlmIChpbmRleCA9PSAwKQorICAgICAgICByZXR1
cm4gdi54OworICAgIGlmIChpbmRleCA9PSAxKQorICAgICAgICByZXR1cm4gdi55OworICAgIHRy
YXA7Cit9CitmbG9hdCBvcGVyYXRvcltdKGZsb2F0MyB2LCB1aW50IGluZGV4KSB7CisgICAgaWYg
KGluZGV4ID09IDApCisgICAgICAgIHJldHVybiB2Lng7CisgICAgaWYgKGluZGV4ID09IDEpCisg
ICAgICAgIHJldHVybiB2Lnk7CisgICAgaWYgKGluZGV4ID09IDIpCisgICAgICAgIHJldHVybiB2
Lno7CisgICAgdHJhcDsKK30KK2Zsb2F0IG9wZXJhdG9yW10oZmxvYXQ0IHYsIHVpbnQgaW5kZXgp
IHsKKyAgICBpZiAoaW5kZXggPT0gMCkKKyAgICAgICAgcmV0dXJuIHYueDsKKyAgICBpZiAoaW5k
ZXggPT0gMSkKKyAgICAgICAgcmV0dXJuIHYueTsKKyAgICBpZiAoaW5kZXggPT0gMikKKyAgICAg
ICAgcmV0dXJuIHYuejsKKyAgICBpZiAoaW5kZXggPT0gMykKKyAgICAgICAgcmV0dXJuIHYudzsK
KyAgICB0cmFwOworfQorZmxvYXQyIG9wZXJhdG9yW109KGZsb2F0MiB2LCB1aW50IGluZGV4LCBm
bG9hdCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAg
ICAgICB2LnggPSBhOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAg
ICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0dXJuIHY7Cit9
CitmbG9hdDMgb3BlcmF0b3JbXT0oZmxvYXQzIHYsIHVpbnQgaW5kZXgsIGZsb2F0IGEpIHsKKyAg
ICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYueCA9IGE7
CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgIGNhc2UgMjoK
KyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFw
OworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Zsb2F0NCBvcGVyYXRvcltdPShmbG9hdDQgdiwg
dWludCBpbmRleCwgZmxvYXQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2Fz
ZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAg
di55ID0gYTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAg
Y2FzZSAzOgorICAgICAgICAgICAgdi53ID0gYTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQogCi1uYXRpdmUgdHlwZWRlZiBmbG9h
dDI7Ci1uYXRpdmUgdHlwZWRlZiBmbG9hdDM7Ci1uYXRpdmUgdHlwZWRlZiBmbG9hdDQ7CisvKmhh
bGYyeDIgb3BlcmF0b3IrKGhhbGYyeDIgYSwgaGFsZjJ4MiBiKSB7CisgICAgaGFsZjJ4MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSArIGJbMF1bMF07CisgICAgcmVzdWx0WzBd
WzFdID0gYVswXVsxXSArIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSArIGJb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSArIGJbMV1bMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30qLwogYDsKIAogLy8gRklYTUU6IE9uY2UgdGhlIHN0YW5kYXJkIGxpYnJhcnkg
aGFzIGJlZW4gcmVwbGFjZWQgd2l0aCBhIG5ldyB2ZXJzaW9uLCB0aGlzIGNvbW1lbnRzIHNob3Vs
ZCBiZSByZW1vdmVkLgogLy8gVGhpcyBsaXN0IGlzIHVzZWQgdG8gcmVzdHJpY3QgdGhlIGF2YWls
YWJpbGl0eSBvZiB2ZWN0b3IgdHlwZXMgYXZhaWxhYmxlIGluIHRoZSBsYW5nYXVnZS4KIC8vIFBl
cm1pc3NpYmxlIHZlY3RvciBlbGVtZW50IHR5cGVzIG11c3QgYXBwZWFyIGluIHRoaXMgbGlzdCBh
bmQgaW4gdGhlIHN0YW5kYXJkIGxpYnJhcnkKLWNvbnN0IFZlY3RvckVsZW1lbnRUeXBlcyA9IFsg
LyoiYm9vbCIsKi8gInVjaGFyIiwgLyoiY2hhciIsICJ1c2hvcnQiLCAic2hvcnQiLCovICJ1aW50
IiwgImludCIsIC8qICJoYWxmIiwgKi8iZmxvYXQiIF07Citjb25zdCBWZWN0b3JFbGVtZW50VHlw
ZXMgPSBbICJib29sIiwgInVjaGFyIiwgImNoYXIiLCAidXNob3J0IiwgInNob3J0IiwgInVpbnQi
LCAiaW50IiwgImhhbGYiLCAiZmxvYXQiIF07CiBjb25zdCBWZWN0b3JFbGVtZW50U2l6ZXMgPSBb
IDIsIDMsIDQgXTsKIAogZnVuY3Rpb24gYWxsVmVjdG9yVHlwZU5hbWVzKCkKQEAgLTE4MSwxOSAr
MzI2Myw4IEBAIGZ1bmN0aW9uIGFsbFZlY3RvclR5cGVOYW1lcygpCiAgICAgcmV0dXJuIG5hbWVz
OwogfQogCi0vLyBQcm92aWRlcyBvcGVyYXRvciZbXQotc3RhbmRhcmRMaWJyYXJ5ICs9IE9wZXJh
dG9yQW5kZXJJbmRleGVyLmZ1bmN0aW9ucygpLmpvaW4oIjtcbiIpICsgIjtcbiI7Ci0KLS8vIE5h
dGl2ZSB2ZWN0b3IgdHlwZXMgYXJlIGxpa2Ugc3RydWN0cyBpbiB0aGUgbGFuZ2F1Z2UsIGJ1dCB0
aGV5IGRvIG5vdCBoYXZlIHRoZSBhbmRlciBmaWVsZCBhY2Nlc3MuCi0vLyBJdCBpcyBub3QgcG9z
c2libGUgdG8gdGFrZSB0aGUgYWRkcmVzcyBvZiBhIHZlY3RvciBmaWVsZC4KLXN0YW5kYXJkTGli
cmFyeSArPSBCdWlsdGluVmVjdG9yR2V0dGVyLmZ1bmN0aW9ucygpLmpvaW4oIjtcbiIpICsgIjtc
biI7Ci1zdGFuZGFyZExpYnJhcnkgKz0gQnVpbHRpblZlY3RvclNldHRlci5mdW5jdGlvbnMoKS5q
b2luKCI7XG4iKSArICI7XG4iOwotc3RhbmRhcmRMaWJyYXJ5ICs9IEJ1aWx0aW5WZWN0b3JJbmRl
eEdldHRlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotc3RhbmRhcmRMaWJyYXJ5
ICs9IEJ1aWx0aW5WZWN0b3JJbmRleFNldHRlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7
XG4iOwotCiAvLyBGSVhNRTogRm9yIG5hdGl2ZSB0eXBlcyB0aGVzZSBjb3VsZCBiZSBpbmNsdWRl
ZCBhcyBzb3VyY2UgaW4gdGhlIHN0YW5kYXJkIGxpYnJhcnkuCiAvLyBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4Njg1Ci1zdGFuZGFyZExpYnJhcnkgKz0gT3BlcmF0
b3JCb29sLmZ1bmN0aW9ucygpLmpvaW4oIjtcbiIpICsgIjtcbiI7CiBzdGFuZGFyZExpYnJhcnkg
Kz0gQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuZnVuY3Rpb25zKCkuam9pbigiO1xuIikg
KyAiO1xuIjsKIAogLy8gRklYTUU6IFRoZXNlIG5lZWQgdG8gYmUgaW5jbHVkZWQgYXMgc291cmNl
IGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5LgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvU3RhdGVtZW50Q2xvbmVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvU3RhdGVtZW50Q2xvbmVyLmpzCmluZGV4IGIzOTQ4YzQ1MGM3MTYwOTc3OTc1ZWQ0ZThl
OThlZDk5YzRmN2EwNTkuLjBkMDcxNWE5ODU0ZGVmMWJmZDJhODA4Yzc0MDQxMTJiYTFhNGEwYzEg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YXRlbWVudENsb25l
ci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1lbnRDbG9uZXIu
anMKQEAgLTUwLDcgKzUwLDcgQEAgY2xhc3MgU3RhdGVtZW50Q2xvbmVyIGV4dGVuZHMgUmV3cml0
ZXIgewogICAgIAogICAgIHZpc2l0TmF0aXZlVHlwZShub2RlKQogICAgIHsKLSAgICAgICAgcmV0
dXJuIG5ldyBOYXRpdmVUeXBlKG5vZGUub3JpZ2luLCBub2RlLm5hbWUpOworICAgICAgICByZXR1
cm4gbmV3IE5hdGl2ZVR5cGUobm9kZS5vcmlnaW4sIG5vZGUubmFtZSwgbm9kZS50eXBlQXJndW1l
bnRzLm1hcChhcmd1bWVudCA9PiBhcmd1bWVudC52aXNpdCh0aGlzKSkpOwogICAgIH0KICAgICAK
ICAgICB2aXNpdFR5cGVEZWYobm9kZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1N5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVy
YXRvci5qcwppbmRleCBmZWZlOWMwM2Q3YjEwYjMxMTZiM2I2N2YyYWYwNTdmMTZmYzE1MTZjLi5k
YzUwNjUzOGQxYzZjNzEwOWIxYWQxZWNiYTNjZWMyNzhkMGY3YjVjIDEwMDY0NAotLS0gYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3Bl
cmF0b3IuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURl
ZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzCkBAIC00NSw2ICs0NSwxOCBAQCBmdW5jdGlvbiBz
eW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IocHJvZ3JhbSkKICAgICAgICAgICAg
IHR5cGVzLmFkZChub2RlKTsKICAgICAgICAgICAgIHN1cGVyLnZpc2l0RWxlbWVudGFsVHlwZShu
b2RlKTsKICAgICAgICAgfQorCisgICAgICAgIHZpc2l0VmVjdG9yVHlwZShub2RlKQorICAgICAg
ICB7CisgICAgICAgICAgICB0eXBlcy5hZGQobm9kZSk7CisgICAgICAgICAgICBzdXBlci52aXNp
dFZlY3RvclR5cGUobm9kZSk7CisgICAgICAgIH0KKworICAgICAgICB2aXNpdE1hdHJpeFR5cGUo
bm9kZSkKKyAgICAgICAgeworICAgICAgICAgICAgdHlwZXMuYWRkKG5vZGUpOworICAgICAgICAg
ICAgc3VwZXIudmlzaXRNYXRyaXhUeXBlKG5vZGUpOworICAgICAgICB9CiAgICAgfQogCiAgICAg
cHJvZ3JhbS52aXNpdChuZXcgRmluZEFsbFR5cGVzKCkpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVPcGVyYXRvckJvb2wuanMKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY5NWZlMTM3NTNkMGEyNjQzYjA5NWI1MzRiMTE5MjE3ZjYy
NTM4YjMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcworKysg
L2Rldi9udWxsCkBAIC0xLDM3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4gCi0gKi8KLSJ1c2Ugc3RyaWN0IjsKLQotZnVuY3Rpb24gc3ludGhlc2l6ZU9wZXJh
dG9yQm9vbChwcm9ncmFtKQotewotICAgIGZvciAobGV0IHR5cGUgb2YgcHJvZ3JhbS50eXBlcy52
YWx1ZXMoKSkgewotICAgICAgICBpZiAoISh0eXBlIGluc3RhbmNlb2YgU3RydWN0VHlwZSkgJiYg
ISh0eXBlIGluc3RhbmNlb2YgRW51bVR5cGUpKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAg
ICAgIGNvbnN0IGZ1bmMgPSBuZXcgTmF0aXZlRnVuYyh0eXBlLm9yaWdpbiwgIm9wZXJhdG9yIGNh
c3QiLCBUeXBlUmVmLndyYXAocHJvZ3JhbS50eXBlcy5nZXQoImJvb2wiKSksIFsgbmV3IEZ1bmNQ
YXJhbWV0ZXIodHlwZS5vcmlnaW4sIG51bGwsIFR5cGVSZWYud3JhcCh0eXBlKSkgXSwgdHJ1ZSwg
bnVsbCk7Ci0gICAgICAgIGNvbnN0IG9wZXJhdG9yQm9vbCA9IG5ldyBPcGVyYXRvckJvb2wodHlw
ZS5uYW1lKTsKLSAgICAgICAgb3BlcmF0b3JCb29sLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24o
ZnVuYyk7Ci0gICAgICAgIHByb2dyYW0uYWRkKGZ1bmMpOwotICAgIH0KLX0KZGlmZiAtLWdpdCBh
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMu
anMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplU3RydWN0QWNjZXNz
b3JzLmpzCmluZGV4IGJmZTYwNDQ5NGRjNzI1YWU3ZTc0YWQ0YTBiZmUyM2U5M2MwOTE3NzYuLmEw
MTgxNDY4YTI1ZWQ0YzA5MDUwZDdiZjFkNjFmNDRlZDNhMGFhNjYgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMuanMKKysr
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29y
cy5qcwpAQCAtNTEsNyArNTEsNyBAQCBmdW5jdGlvbiBzeW50aGVzaXplU3RydWN0QWNjZXNzb3Jz
KHByb2dyYW0pCiAgICAgICAgICAgICAKICAgICAgICAgICAgIGZ1bmN0aW9uIGNyZWF0ZVR5cGVS
ZWYoKQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIHJldHVybiBUeXBlUmVmLmluc3Rh
bnRpYXRlKHR5cGUpOworICAgICAgICAgICAgICAgIHJldHVybiBUeXBlUmVmLndyYXAodHlwZSk7
CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICAKICAgICAgICAgICAgIGxldCBpc0Nhc3QgPSBm
YWxzZTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuaHRt
bCBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuaHRtbAppbmRleCAxM2YzNTgy
Mzk5MjlkOGEzZTZhY2U1MjU0NWI5MWNhNTJkNjA2MGU0Li5kMjMwZmY1OGQ3ZmRhYjJhMTAzMTIw
MTY0Y2I0Njc2Y2I4YjE0ZTQ1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9UZXN0Lmh0bWwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5o
dG1sCkBAIC0yNiw4ICsyNiw2IEBACiA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckNvbnN0cnVj
dG9ycy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckdldHRlci5qcyI+
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvclNldHRlci5qcyI+PC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4R2V0dGVyLmpzIj48L3NjcmlwdD4KLTxz
Y3JpcHQgc3JjPSJCdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9IkJ1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJDYWxsRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2FsbEZ1
bmN0aW9uLmpzIj48L3NjcmlwdD4KQEAgLTM3LDYgKzM1LDcgQEAKIDxzY3JpcHQgc3JjPSJDaGVj
a1JlY3Vyc2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tSZWN1cnNpdmVUeXBl
cy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tSZXR1cm5zLmpzIj48L3NjcmlwdD4K
KzxzY3JpcHQgc3JjPSJDaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0iQ2hlY2tVbnJlYWNoYWJsZUNvZGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9
IkNoZWNrV3JhcHBlZC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tlci5qcyI+PC9z
Y3JpcHQ+CkBAIC04OSw2ICs4OCw3IEBACiA8c2NyaXB0IHNyYz0iTG9vcENoZWNrZXIuanMiPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9Ik1ha2VBcnJheVJlZkV4cHJlc3Npb24uanMiPjwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9Ik1ha2VQdHJFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQg
c3JjPSJNYXRyaXhUeXBlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOYW1lQ29udGV4dC5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTmFtZUZpbmRlci5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0iTmFtZVJlc29sdmVyLmpzIj48L3NjcmlwdD4KQEAgLTk2LDkgKzk2LDggQEAKIDxz
Y3JpcHQgc3JjPSJOb3JtYWxVc2VQcm9wZXJ0eVJlc29sdmVyLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJOdWxsTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTnVsbFR5cGUu
anMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQW5kZXJJbmRleC5qcyI+PC9zY3Jp
cHQ+Cis8c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRlckluZGV4ZXIuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9Ik9wZXJhdG9yQXJyYXlSZWZMZW5ndGguanMiPjwvc2NyaXB0PgotPHNjcmlwdCBz
cmM9Ik9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iT3JpZ2luS2luZC5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qcyI+
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUGFyc2UuanMiPjwvc2NyaXB0PgpAQCAtMTEwLDcgKzEw
OSw2IEBACiA8c2NyaXB0IHNyYz0iUmVhZE1vZGlmeVdyaXRlRXhwcmVzc2lvbi5qcyI+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0iUmVjdXJzaW9uQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iUmVjdXJzaXZlVHlwZUNoZWNrZXIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IlJl
bW92ZVR5cGVBcmd1bWVudHMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlJlc29sdmVOYW1l
cy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2ZU92ZXJsb2FkSW1wbC5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2ZVByb3BlcnRpZXMuanMiPjwvc2NyaXB0PgpAQCAt
MTI3LDEzICsxMjUsMTMgQEAKIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplQXJyYXlPcGVyYXRvckxl
bmd0aC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMu
anMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMuanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVPcGVyYXRvckJvb2wuanMiPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJh
dG9yLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUcmFwU3RhdGVtZW50LmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJUeXBlRGVmLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUeXBl
RGVmUmVzb2x2ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVSZWYuanMiPjwvc2Ny
aXB0PgorPHNjcmlwdCBzcmM9IlR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJUeXBlZFZhbHVlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJVaW50TGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iVWludExpdGVyYWxUeXBl
LmpzIj48L3NjcmlwdD4KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Rlc3QuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCmluZGV4IGRm
NDE3ZGFiZjZkODcxMzVlNzM1Y2E4YzliMWJmMTNhYjY0MDc1YTEuLmIzNTk4ZGQ3ZmExODhlOGVk
NGIwNGVhMGY0ZWQ4NDZlNjc2Mjg2YTAgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1Rlc3QuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVz
dC5qcwpAQCAtMjE1Myw0MSArMjE1Myw2IEBAIHRlc3RzLm9wZXJhdG9yQm9vbCA9IGZ1bmN0aW9u
KCkKIAogICAgICAgICBib29sIGJvb2xGcm9tRmxvYXRGYWxzZSgpIHsgcmV0dXJuIGJvb2woZmxv
YXQoMCkpOyB9CiAgICAgICAgIGJvb2wgYm9vbEZyb21GbG9hdFRydWUoKSB7IHJldHVybiBib29s
KGZsb2F0KDEpKTsgfQotCi0gICAgICAgIGJvb2wgYm9vbEZyb21JbnQyRmFsc2UoKSB7IHJldHVy
biBib29sKGludDIoMCwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21JbnQyVHJ1ZTEoKSB7
IHJldHVybiBib29sKGludDIoMSwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21JbnQyVHJ1
ZTIoKSB7IHJldHVybiBib29sKGludDIoMCwgMSkpOyB9Ci0KLSAgICAgICAgYm9vbCBib29sRnJv
bUZsb2F0M0ZhbHNlKCkgeyByZXR1cm4gYm9vbChmbG9hdDMoMCwgMCwgMCkpOyB9Ci0gICAgICAg
IGJvb2wgYm9vbEZyb21GbG9hdDNUcnVlMSgpIHsgcmV0dXJuIGJvb2woZmxvYXQzKDEsIDAsIDAp
KTsgfQotICAgICAgICBib29sIGJvb2xGcm9tRmxvYXQzVHJ1ZTIoKSB7IHJldHVybiBib29sKGZs
b2F0MygwLCAxLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUZsb2F0M1RydWUzKCkgeyBy
ZXR1cm4gYm9vbChmbG9hdDMoMCwgMCwgMSkpOyB9Ci0KLSAgICAgICAgYm9vbCBib29sRnJvbVVp
bnQ0RmFsc2UoKSB7IHJldHVybiBib29sKHVpbnQ0KDAsIDAsIDAsIDApKTsgfQotICAgICAgICBi
b29sIGJvb2xGcm9tVWludDRUcnVlMSgpIHsgcmV0dXJuIGJvb2wodWludDQoMSwgMCwgMCwgMCkp
OyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21VaW50NFRydWUyKCkgeyByZXR1cm4gYm9vbCh1aW50
NCgwLCAxLCAwLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbVVpbnQ0VHJ1ZTMoKSB7IHJl
dHVybiBib29sKHVpbnQ0KDAsIDAsIDEsIDApKTsgfQotICAgICAgICBib29sIGJvb2xGcm9tVWlu
dDRUcnVlNCgpIHsgcmV0dXJuIGJvb2wodWludDQoMCwgMCwgMCwgMSkpOyB9Ci0KLSAgICAgICAg
c3RydWN0IFggeyBpbnQgeDsgfQotCi0gICAgICAgIGJvb2wgYm9vbEZyb21TdHJ1Y3RGYWxzZSgp
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIFggeDsKLSAgICAgICAgICAgIHJldHVybiBib29sKHgp
OwotICAgICAgICB9Ci0KLSAgICAgICAgYm9vbCBib29sRnJvbVN0cnVjdFRydWUoKQotICAgICAg
ICB7Ci0gICAgICAgICAgICBYIHg7Ci0gICAgICAgICAgICB4LnggPSAxOwotICAgICAgICAgICAg
cmV0dXJuIGJvb2woeCk7Ci0gICAgICAgIH0KLQotICAgICAgICBlbnVtIFkgeyBBLCBCIH0KLQot
ICAgICAgICBib29sIGJvb2xGcm9tRW51bUZhbHNlKCkgeyByZXR1cm4gYm9vbChZLkEpOyB9Ci0g
ICAgICAgIGJvb2wgYm9vbEZyb21FbnVtVHJ1ZSgpIHsgcmV0dXJuIGJvb2woWS5CKTsgfQogICAg
IGApOwogCiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9v
bEZyb21VY2hhckZhbHNlIiwgW10pLCBmYWxzZSk7CkBAIC0yMjAxLDI3ICsyMTY2LDYgQEAgdGVz
dHMub3BlcmF0b3JCb29sID0gZnVuY3Rpb24oKQogCiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNh
bGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdEZhbHNlIiwgW10pLCBmYWxzZSk7CiAg
ICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9h
dFRydWUiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlv
bihwcm9ncmFtLCAiYm9vbEZyb21JbnQyRmFsc2UiLCBbXSksIGZhbHNlKTsKLSAgICBjaGVja0Jv
b2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUludDJUcnVlMSIsIFtd
KSwgdHJ1ZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAi
Ym9vbEZyb21JbnQyVHJ1ZTIiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0s
IGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdDNGYWxzZSIsIFtdKSwgZmFsc2Up
OwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9t
RmxvYXQzVHJ1ZTEiLCBbXSksIHRydWUpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVu
Y3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tRmxvYXQzVHJ1ZTIiLCBbXSksIHRydWUpOwotICAgIGNo
ZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tRmxvYXQzVHJ1
ZTMiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihw
cm9ncmFtLCAiYm9vbEZyb21VaW50NEZhbHNlIiwgW10pLCBmYWxzZSk7Ci0gICAgY2hlY2tCb29s
KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21VaW50NFRydWUxIiwgW10p
LCB0cnVlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJi
b29sRnJvbVVpbnQ0VHJ1ZTIiLCBbXSksIHRydWUpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBj
YWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tVWludDRUcnVlMyIsIFtdKSwgdHJ1ZSk7Ci0g
ICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21VaW50
NFRydWU0IiwgW10pLCB0cnVlKTsKLQotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rp
b24ocHJvZ3JhbSwgImJvb2xGcm9tU3RydWN0RmFsc2UiLCBbXSksIGZhbHNlKTsKLSAgICBjaGVj
a0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbVN0cnVjdFRydWUi
LCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9n
cmFtLCAiYm9vbEZyb21FbnVtRmFsc2UiLCBbXSksIGZhbHNlKTsKLSAgICBjaGVja0Jvb2wocHJv
Z3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUVudW1UcnVlIiwgW10pLCB0cnVl
KTsKIH0KIAogdGVzdHMuYm9vbEJpdEFuZCA9IGZ1bmN0aW9uKCkKQEAgLTI4ODEsNyArMjgyNSw3
IEBAIHRlc3RzLnNoYWRlclR5cGVzID0gZnVuY3Rpb24oKQogICAgICAgICAgICAgfQogICAgICAg
ICAgICAgZnJhZ21lbnQgQm9vIGJhcihGb28gc3RhZ2VJbikKICAgICAgICAgICAgIHsKLSAgICAg
ICAgICAgICAgICByZXR1cm4gYm9vKCk7CisgICAgICAgICAgICAgICAgcmV0dXJuIEJvbygpOwog
ICAgICAgICAgICAgfQogICAgICAgICBgKSwKICAgICAgICAgKGUpID0+IGUgaW5zdGFuY2VvZiBX
VHlwZUVycm9yKTsKQEAgLTI5MDQsNyArMjg0OCw3IEBAIHRlc3RzLnNoYWRlclR5cGVzID0gZnVu
Y3Rpb24oKQogCiB0ZXN0cy52ZWN0b3JUeXBlU3ludGF4ID0gZnVuY3Rpb24oKQogewotICAgIGNv
bnN0IHByb2dyYW0gPSBkb1ByZXAoYAorICAgIGxldCBwcm9ncmFtID0gZG9QcmVwKGAKICAgICAg
ICAgaW50IGZvbzIoKQogICAgICAgICB7CiAgICAgICAgICAgICBpbnQyIHg7CkBAIC0yOTM5LDcg
KzI4ODMsMjYgQEAgdGVzdHMudmVjdG9yVHlwZVN5bnRheCA9IGZ1bmN0aW9uKCkKICAgICBjaGVj
a0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbzIiLCBbXSksIDQpOwogICAg
IGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiZm9vMyIsIFtdKSwgNSk7
CiAgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJmb280IiwgW10p
LCA2KTsKKyAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJ2ZWMy
T3BlcmF0b3JDYXN0IiwgW10pLCB0cnVlKTsKKworICAgIHByb2dyYW0gPSBkb1ByZXAoYAorICAg
ICAgICB0eXBlZGVmIGkgPSBpbnQ7CisgICAgICAgIGludCBmb28yKCkKKyAgICAgICAgeworICAg
ICAgICAgICAgaW50MiB4OworICAgICAgICAgICAgdmVjdG9yPGksIDI+IHogPSBpbnQyKDMsIDQp
OworICAgICAgICAgICAgeCA9IHo7CisgICAgICAgICAgICByZXR1cm4geC55OworICAgICAgICB9
CisKKyAgICAgICAgYm9vbCB2ZWMyT3BlcmF0b3JDYXN0KCkKKyAgICAgICAgeworICAgICAgICAg
ICAgaW50MiB4ID0gdmVjdG9yPGksMj4oMSwgMik7CisgICAgICAgICAgICB2ZWN0b3I8aSwgMj4g
eSA9IGludDIoMSwgMik7CisgICAgICAgICAgICByZXR1cm4geCA9PSB5ICYmIHgueCA9PSAxICYm
IHgueSA9PSAyICYmIHkueCA9PSAxICYmIHkueSA9PSAyOworICAgICAgICB9YCk7CiAKKyAgICBj
aGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbzIiLCBbXSksIDQpOwog
ICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgInZlYzJPcGVyYXRv
ckNhc3QiLCBbXSksIHRydWUpOwogfQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9UeXBlT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qcyBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAuLmQ1Y2IzZjcxMGZhMGNlMDNkMjkwMmZhMzJlZDhiMDI3NWZiNjI2MDgKLS0tIC9kZXYv
bnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlT3ZlcmxvYWRSZXNv
bHV0aW9uRmFpbHVyZS5qcwpAQCAtMCwwICsxLDQyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAy
MDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UK
KyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuIAorICovCisidXNlIHN0cmljdCI7CisKK2NsYXNzIFR5cGVPdmVybG9h
ZFJlc29sdXRpb25GYWlsdXJlIHsKKyAgICBjb25zdHJ1Y3Rvcih0eXBlLCByZWFzb24pCisgICAg
eworICAgICAgICB0aGlzLl90eXBlID0gdHlwZTsKKyAgICAgICAgdGhpcy5fcmVhc29uID0gcmVh
c29uOworICAgIH0KKyAgICAKKyAgICBnZXQgdHlwZSgpIHsgcmV0dXJuIHRoaXMuX3R5cGU7IH0K
KyAgICBnZXQgcmVhc29uKCkgeyByZXR1cm4gdGhpcy5fcmVhc29uOyB9CisgICAgCisgICAgdG9T
dHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudHlwZS50b1N0cmluZygpICsgIiBk
aWQgbm90IG1hdGNoIGJlY2F1c2U6ICIgKyB0aGlzLnJlYXNvbjsKKyAgICB9Cit9CisKZGlmZiAt
LWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVSZWYuanMgYi9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVmLmpzCmluZGV4IGI1ZjNjMGIzZDkyNTMyZTA1
YzY4MDA1NGExNjFmMDVlMGRkZDY0NmIuLmFjZGE3MDZjMGNlMzc5N2U0NmIwOTUxN2RjYjA4MWVh
NTllM2RmODkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVS
ZWYuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZVJlZi5qcwpAQCAt
MjUsNyArMjUsNyBAQAogInVzZSBzdHJpY3QiOwogCiBjbGFzcyBUeXBlUmVmIGV4dGVuZHMgVHlw
ZSB7Ci0gICAgY29uc3RydWN0b3Iob3JpZ2luLCBuYW1lLCB0eXBlQXJndW1lbnRzID0gbnVsbCkK
KyAgICBjb25zdHJ1Y3RvcihvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVudHMgPSBbXSkKICAgICB7
CiAgICAgICAgIHN1cGVyKCk7CiAgICAgICAgIHRoaXMuX29yaWdpbiA9IG9yaWdpbjsKQEAgLTM4
LDE0ICszOCwxMSBAQCBjbGFzcyBUeXBlUmVmIGV4dGVuZHMgVHlwZSB7CiAgICAgewogICAgICAg
ICBpZiAodHlwZSBpbnN0YW5jZW9mIFR5cGVSZWYpCiAgICAgICAgICAgICByZXR1cm4gdHlwZTsK
LSAgICAgICAgbGV0IHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3JpZ2luLCB0eXBlLm5hbWUp
OwotICAgICAgICByZXN1bHQudHlwZSA9IHR5cGU7Ci0gICAgICAgIHJldHVybiByZXN1bHQ7Ci0g
ICAgfQotICAgIAotICAgIHN0YXRpYyBpbnN0YW50aWF0ZSh0eXBlKQotICAgIHsKLSAgICAgICAg
bGV0IHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3JpZ2luLCB0eXBlLm5hbWUpOworICAgICAg
ICBsZXQgcmVzdWx0OworICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9mIE5hdGl2ZVR5cGUpCisg
ICAgICAgICAgICByZXN1bHQgPSBuZXcgVHlwZVJlZih0eXBlLm9yaWdpbiwgdHlwZS5uYW1lLCB0
eXBlLnR5cGVBcmd1bWVudHMpOworICAgICAgICBlbHNlCisgICAgICAgICAgICByZXN1bHQgPSBu
ZXcgVHlwZVJlZih0eXBlLm9yZ2luLCB0eXBlLm5hbWUpOwogICAgICAgICByZXN1bHQudHlwZSA9
IHR5cGU7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQpAQCAtNjQsNiArNjEsMzkgQEAg
Y2xhc3MgVHlwZVJlZiBleHRlbmRzIFR5cGUgewogICAgICAgICB0aGlzLl90eXBlID0gbmV3VHlw
ZTsKICAgICB9CiAKKyAgICByZXNvbHZlKHBvc3NpYmxlT3ZlcmxvYWRzKQorICAgIHsKKyAgICAg
ICAgaWYgKCFwb3NzaWJsZU92ZXJsb2FkcykKKyAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVy
cm9yKHRoaXMub3JpZ2luLm9yaWdpblN0cmluZywgIkRpZCBub3QgZmluZCBhbnkgdHlwZXMgbmFt
ZWQgIiArIHRoaXMubmFtZSk7CisKKyAgICAgICAgbGV0IGZhaWx1cmVzID0gW107CisgICAgICAg
IGxldCBvdmVybG9hZCA9IHJlc29sdmVUeXBlT3ZlcmxvYWRJbXBsKHBvc3NpYmxlT3ZlcmxvYWRz
LCB0aGlzLnR5cGVBcmd1bWVudHMpOworCisgICAgICAgIGlmICghb3ZlcmxvYWQudHlwZSkgewor
ICAgICAgICAgICAgZmFpbHVyZXMucHVzaCguLi5vdmVybG9hZC5mYWlsdXJlcyk7CisgICAgICAg
ICAgICBsZXQgbWVzc2FnZSA9ICJEaWQgbm90IGZpbmQgdHlwZSBuYW1lZCAiICsgdGhpcy5uYW1l
ICsgIiBmb3IgdHlwZSBhcmd1bWVudHMgIjsKKyAgICAgICAgICAgIG1lc3NhZ2UgKz0gIigiICsg
dGhpcy50eXBlQXJndW1lbnRzICsgIikiOworICAgICAgICAgICAgaWYgKGZhaWx1cmVzLmxlbmd0
aCkKKyAgICAgICAgICAgICAgICBtZXNzYWdlICs9ICIsIGJ1dCBjb25zaWRlcmVkOlxuIiArIGZh
aWx1cmVzLmpvaW4oIlxuIikKKyAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRoaXMu
b3JpZ2luLm9yaWdpblN0cmluZywgbWVzc2FnZSk7CisgICAgICAgIH0KKworICAgICAgICBmb3Ig
KGxldCBpID0gMDsgaSA8IHRoaXMudHlwZUFyZ3VtZW50cy5sZW5ndGg7ICsraSkgeworICAgICAg
ICAgICAgbGV0IHR5cGVBcmd1bWVudCA9IHRoaXMudHlwZUFyZ3VtZW50c1tpXTsKKyAgICAgICAg
ICAgIGxldCByZXNvbHZlZFR5cGVBcmd1bWVudCA9IG92ZXJsb2FkLnR5cGUudHlwZUFyZ3VtZW50
c1tpXTsKKyAgICAgICAgICAgIGxldCByZXN1bHQgPSB0eXBlQXJndW1lbnQuZXF1YWxzV2l0aENv
bW1pdChyZXNvbHZlZFR5cGVBcmd1bWVudCk7CisgICAgICAgICAgICBpZiAoIXJlc3VsdCkKKyAg
ICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkF0ICIgKyB0aGlzLm9yaWdpbi5vcmlnaW5T
dHJpbmcgKyAiIGFyZ3VtZW50IHR5cGVzIGZvciBUeXBlIGFuZCBUeXBlUmVmIG5vdCBlcXVhbDog
YXJndW1lbnQgdHlwZSA9ICIgKyB0eXBlQXJndW1lbnQgKyAiLCByZXNvbHZlZCB0eXBlIGFyZ3Vt
ZW50ID0gIiArIHJlc29sdmVkVHlwZUFyZ3VtZW50KTsKKyAgICAgICAgICAgIGlmIChyZXNvbHZl
ZFR5cGVBcmd1bWVudC5jb25zdHJ1Y3Rvci5uYW1lID09ICJHZW5lcmljTGl0ZXJhbCIpIHsKKyAg
ICAgICAgICAgICAgICByZXN1bHQgPSB0eXBlQXJndW1lbnQudHlwZS5lcXVhbHNXaXRoQ29tbWl0
KHJlc29sdmVkVHlwZUFyZ3VtZW50LnR5cGUpOworICAgICAgICAgICAgICAgIGlmICghcmVzdWx0
KQorICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkF0ICIgKyB0aGlzLm9yaWdp
bi5vcmlnaW5TdHJpbmcgKyAiIGFyZ3VtZW50IHR5cGVzIGZvciBUeXBlIGFuZCBUeXBlUmVmIG5v
dCBlcXVhbDogYXJndW1lbnQgdHlwZSA9ICIgKyB0eXBlQXJndW1lbnQgKyAiLCByZXNvbHZlZCB0
eXBlIGFyZ3VtZW50ID0gIiArIHJlc29sdmVkVHlwZUFyZ3VtZW50KTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICAKKyAgICAgICAgfQorICAgICAgICB0aGlzLnR5cGUgPSBvdmVybG9h
ZC50eXBlOworICAgIH0KKwogICAgIGdldCB1bmlmeU5vZGUoKQogICAgIHsKICAgICAgICAgaWYg
KCF0aGlzLnR5cGUpCkBAIC05OSw3ICsxMjksMTAgQEAgY2xhc3MgVHlwZVJlZiBleHRlbmRzIFR5
cGUgewogICAgIHsKICAgICAgICAgaWYgKCF0aGlzLm5hbWUpCiAgICAgICAgICAgICByZXR1cm4g
dGhpcy50eXBlLnRvU3RyaW5nKCk7Ci0gICAgICAgIHJldHVybiB0aGlzLm5hbWU7CisgICAgICAg
IGxldCByZXN1bHQgPSB0aGlzLm5hbWU7CisgICAgICAgIGlmICh0aGlzLnR5cGVBcmd1bWVudHMu
bGVuZ3RoID4gMCkKKyAgICAgICAgICAgIHJlc3VsdCArPSAiPCIgKyB0aGlzLnR5cGVBcmd1bWVu
dHMubWFwKGFyZ3VtZW50ID0+IGFyZ3VtZW50LnRvU3RyaW5nKCkpLmpvaW4oIiwiKSArICI+IjsK
KyAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL1VuaWZpY2F0aW9uQ29udGV4dC5qcyBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL1VuaWZpY2F0aW9uQ29udGV4dC5qcwppbmRleCAyZjcxNTQ3YjBh
ZmJlMTgwMzc4ZjM3OTk2MjMxODYyYTJiOTFhODJlLi4zODE5MTY5NzIyM2VmNzIxYTUzNzkxNGIz
Njk4OTc2NzgxZmU2ZTZlIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9VbmlmaWNhdGlvbkNvbnRleHQuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvVW5pZmljYXRpb25Db250ZXh0LmpzCkBAIC05Miw2ICs5MiwxOSBAQCBjbGFzcyBVbmlmaWNh
dGlvbkNvbnRleHQgewogICAgIAogICAgIHZlcmlmeSgpCiAgICAgeworICAgICAgICAvLyBXZSBk
byBhIHR3by1waGFzZSBwcmUtdmVyaWZpY2F0aW9uLiBUaGlzIGdpdmVzIGxpdGVyYWxzIGEgY2hh
bmNlIHRvIHNlbGVjdCBhIG1vcmUgc3BlY2lmaWMgdHlwZS4KKyAgICAgICAgbGV0IHByZXBhcmF0
aW9ucyA9IFtdOworICAgICAgICBmb3IgKGxldCBub2RlIG9mIHRoaXMubm9kZXMpIHsKKyAgICAg
ICAgICAgIGxldCBwcmVwYXJhdGlvbiA9IG5vZGUucHJlcGFyZVRvVmVyaWZ5KHRoaXMpOworICAg
ICAgICAgICAgaWYgKHByZXBhcmF0aW9uKQorICAgICAgICAgICAgICAgIHByZXBhcmF0aW9ucy5w
dXNoKHByZXBhcmF0aW9uKTsKKyAgICAgICAgfQorICAgICAgICBmb3IgKGxldCBwcmVwYXJhdGlv
biBvZiBwcmVwYXJhdGlvbnMpIHsKKyAgICAgICAgICAgIGxldCByZXN1bHQgPSBwcmVwYXJhdGlv
bigpOworICAgICAgICAgICAgaWYgKCFyZXN1bHQucmVzdWx0KQorICAgICAgICAgICAgICAgIHJl
dHVybiByZXN1bHQ7CisgICAgICAgIH0KKwogICAgICAgICBmb3IgKGxldCB0eXBlQXJndW1lbnQg
b2YgdGhpcy50eXBlQXJndW1lbnRzKCkpIHsKICAgICAgICAgICAgIGxldCByZXN1bHQgPSB0eXBl
QXJndW1lbnQudmVyaWZ5QXNBcmd1bWVudCh0aGlzKTsKICAgICAgICAgICAgIGlmICghcmVzdWx0
LnJlc3VsdCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ZlY3Rv
clR5cGUuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9WZWN0b3JUeXBlLmpzCmlu
ZGV4IDUwMTRjNjcxYTA3ODgyMDAyYzIzNGJiMzJmMTdjODg2MGVmZmMxYzYuLmRmMGNiYzJjNzMw
OGY0NTQxM2NiY2MyOGQ4OTYyMWJjMDNhYjI2MDQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1ZlY3RvclR5cGUuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvVmVjdG9yVHlwZS5qcwpAQCAtMjUsMTkgKzI1LDE0IEBACiAidXNlIHN0cmljdCI7
CiAKIGNsYXNzIFZlY3RvclR5cGUgZXh0ZW5kcyBOYXRpdmVUeXBlIHsKLSAgICBjb25zdHJ1Y3Rv
cihvcmlnaW4sIG5hbWUpCisgICAgY29uc3RydWN0b3Iob3JpZ2luLCBuYW1lLCB0eXBlQXJndW1l
bnRzKQogICAgIHsKLSAgICAgICAgc3VwZXIob3JpZ2luLCBuYW1lKTsKLSAgICAgICAgY29uc3Qg
bWF0Y2ggPSAvXihbQS16XSspKFswLTldKSQvLmV4ZWMobmFtZSk7Ci0gICAgICAgIGlmICghbWF0
Y2gpCi0gICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcihvcmlnaW4ub3JpZ2luU3RyaW5n
LCBgJHtuYW1lfSBkb2Vzbid0IG1hdGNoIHRoZSBmb3JtYXQgZm9yIHZlY3RvciB0eXBlIG5hbWVz
LidgKTsKLQotICAgICAgICB0aGlzLl9lbGVtZW50VHlwZSA9IG5ldyBUeXBlUmVmKG9yaWdpbiwg
bWF0Y2hbMV0pOwotICAgICAgICB0aGlzLl9udW1FbGVtZW50c1ZhbHVlID0gcGFyc2VJbnQobWF0
Y2hbMl0pOworICAgICAgICBzdXBlcihvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVudHMpOwogICAg
IH0KIAotICAgIGdldCBlbGVtZW50VHlwZSgpIHsgcmV0dXJuIHRoaXMuX2VsZW1lbnRUeXBlOyB9
Ci0gICAgZ2V0IG51bUVsZW1lbnRzVmFsdWUoKSB7IHJldHVybiB0aGlzLl9udW1FbGVtZW50c1Zh
bHVlOyB9CisgICAgZ2V0IGVsZW1lbnRUeXBlKCkgeyByZXR1cm4gdGhpcy50eXBlQXJndW1lbnRz
WzBdOyB9CisgICAgZ2V0IG51bUVsZW1lbnRzKCkgeyByZXR1cm4gdGhpcy50eXBlQXJndW1lbnRz
WzFdOyB9CisgICAgZ2V0IG51bUVsZW1lbnRzVmFsdWUoKSB7IHJldHVybiB0aGlzLm51bUVsZW1l
bnRzLnZhbHVlOyB9CiAgICAgZ2V0IHNpemUoKSB7IHJldHVybiB0aGlzLmVsZW1lbnRUeXBlLnNp
emUgKiB0aGlzLm51bUVsZW1lbnRzVmFsdWU7IH0KIAogICAgIHVuaWZ5SW1wbCh1bmlmaWNhdGlv
bkNvbnRleHQsIG90aGVyKQpAQCAtNTksNyArNTQsNyBAQCBjbGFzcyBWZWN0b3JUeXBlIGV4dGVu
ZHMgTmF0aXZlVHlwZSB7CiAKICAgICB0b1N0cmluZygpCiAgICAgewotICAgICAgICByZXR1cm4g
YG5hdGl2ZSB0eXBlZGVmICR7dGhpcy5lbGVtZW50VHlwZX0ke3RoaXMubnVtRWxlbWVudHNWYWx1
ZX1gOworICAgICAgICByZXR1cm4gYG5hdGl2ZSB0eXBlZGVmIHZlY3Rvcjwke3RoaXMuZWxlbWVu
dFR5cGV9LCAke3RoaXMubnVtRWxlbWVudHNWYWx1ZX0+YDsKICAgICB9CiB9CiAKZGlmZiAtLWdp
dCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanMgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9WaXNpdG9yLmpzCmluZGV4IDdkMzg3YjI1ZjI1ODliODczOTE4
YWYyZjQ0YzI0MzRhZDY1ODc0N2YuLjJkZTFlNzRkZjI3MThiYjNiYTY4ZDA1YzBlNzEwMmJkMDVh
MDE2OTMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3Iu
anMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmlzaXRvci5qcwpAQCAtNjgs
MTAgKzY4LDE0IEBAIGNsYXNzIFZpc2l0b3IgewogICAgIAogICAgIHZpc2l0VHlwZVJlZihub2Rl
KQogICAgIHsKKyAgICAgICAgZm9yIChsZXQgdHlwZUFyZ3VtZW50IG9mIG5vZGUudHlwZUFyZ3Vt
ZW50cykKKyAgICAgICAgICAgIHR5cGVBcmd1bWVudC52aXNpdCh0aGlzKTsKICAgICB9CiAgICAg
CiAgICAgdmlzaXROYXRpdmVUeXBlKG5vZGUpCiAgICAgeworICAgICAgICBmb3IgKGxldCB0eXBl
QXJndW1lbnQgb2Ygbm9kZS50eXBlQXJndW1lbnRzKQorICAgICAgICAgICAgdHlwZUFyZ3VtZW50
LnZpc2l0KHRoaXMpOwogICAgIH0KICAgICAKICAgICB2aXNpdFR5cGVEZWYobm9kZSkKQEAgLTMy
Nyw2ICszMzEsMTQgQEAgY2xhc3MgVmlzaXRvciB7CiAgICAgdmlzaXRWZWN0b3JUeXBlKG5vZGUp
CiAgICAgewogICAgICAgICBub2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBu
b2RlLm51bUVsZW1lbnRzLnZpc2l0KHRoaXMpOworICAgIH0KKworICAgIHZpc2l0TWF0cml4VHlw
ZShub2RlKQorICAgIHsKKyAgICAgICAgbm9kZS5lbGVtZW50VHlwZS52aXNpdCh0aGlzKTsKKyAg
ICAgICAgbm9kZS5udW1Sb3dzLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bUNvbHVtbnMu
dmlzaXQodGhpcyk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9pbmRleC5odG1sIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5k
ZXguaHRtbAppbmRleCA0YzkzYTMzZTZhMzg2NjJlOGJhMWU4NDI0MDNkNGMwMmQ1ZTlmOWRmLi4w
Nzg2OWJmMDM4ZGMyNjNiYTA4NmJjYzg5NTg5MThmZWYxMzNmOWIzIDEwMDY0NAotLS0gYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9pbmRleC5odG1sCisrKyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL2luZGV4Lmh0bWwKQEAgLTI2LDggKzI2LDYgQEAKIDxzY3JpcHQgc3Jj
PSJCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJC
dWlsdGluVmVjdG9yR2V0dGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJCdWlsdGluVmVj
dG9yU2V0dGVyLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9ySW5kZXhH
ZXR0ZXIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JJbmRleFNldHRl
ci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0
b3IuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkNhbGxFeHByZXNzaW9uLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJDYWxsRnVuY3Rpb24uanMiPjwvc2NyaXB0PgpAQCAtMzgsNiArMzYs
NyBAQAogPHNjcmlwdCBzcmM9IkNoZWNrUmVjdXJzaXZlVHlwZXMuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9IkNoZWNrUmV0dXJucy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tV
bnJlYWNoYWJsZUNvZGUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IkNoZWNrVHlwZXNXaXRo
QXJndW1lbnRzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja1dyYXBwZWQuanMiPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9IkNoZWNrZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9
IkNsb25lUHJvZ3JhbS5qcyI+PC9zY3JpcHQ+CkBAIC04OSw2ICs4OCw3IEBACiA8c2NyaXB0IHNy
Yz0iTG9vcENoZWNrZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik1ha2VBcnJheVJlZkV4
cHJlc3Npb24uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik1ha2VQdHJFeHByZXNzaW9uLmpz
Ij48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJNYXRyaXhUeXBlLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJOYW1lQ29udGV4dC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTmFtZUZpbmRl
ci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTmFtZVJlc29sdmVyLmpzIj48L3NjcmlwdD4K
QEAgLTk2LDkgKzk2LDggQEAKIDxzY3JpcHQgc3JjPSJOb3JtYWxVc2VQcm9wZXJ0eVJlc29sdmVy
LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOdWxsTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8
c2NyaXB0IHNyYz0iTnVsbFR5cGUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ik9wZXJhdG9y
QW5kZXJJbmRleC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRlckluZGV4
ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQXJyYXlSZWZMZW5ndGguanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0iT3JpZ2luS2luZC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iT3ZlcmxvYWRS
ZXNvbHV0aW9uRmFpbHVyZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUGFyc2UuanMiPjwv
c2NyaXB0PgpAQCAtMTEwLDcgKzEwOSw2IEBACiA8c2NyaXB0IHNyYz0iUmVhZE1vZGlmeVdyaXRl
RXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVjdXJzaW9uQ2hlY2tlci5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVjdXJzaXZlVHlwZUNoZWNrZXIuanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9IlJlbW92ZVR5cGVBcmd1bWVudHMuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9IlJlc29sdmVOYW1lcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2
ZU92ZXJsb2FkSW1wbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2ZVByb3BlcnRp
ZXMuanMiPjwvc2NyaXB0PgpAQCAtMTI3LDEzICsxMjUsMTMgQEAKIDxzY3JpcHQgc3JjPSJTeW50
aGVzaXplQXJyYXlPcGVyYXRvckxlbmd0aC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3lu
dGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlN5bnRoZXNp
emVTdHJ1Y3RBY2Nlc3NvcnMuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVP
cGVyYXRvckJvb2wuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVDb3B5Q29u
c3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZURl
ZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUcmFw
U3RhdGVtZW50LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUeXBlRGVmLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJUeXBlRGVmUmVzb2x2ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBz
cmM9IlR5cGVSZWYuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IlR5cGVPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUeXBlZFZhbHVlLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJVaW50TGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iVWludExpdGVyYWxUeXBlLmpzIj48L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347901</attachid>
            <date>2018-08-22 22:34:17 -0700</date>
            <delta_ts>2018-08-23 10:41:41 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-188873-20180822223416.patch</filename>
            <type>text/plain</type>
            <size>230724</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MjE1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTMyMTQ5OWZlOTRlYzI1Y2M3MTM3OTZkNmQ2MmI2OGIx
MWZlYjVmZi4uNzNkOTQwZDUzYjZjZGRmMzY0NjM3YjcyNjNhYzE1NjdmODZhY2EwYSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1
OCBAQAorMjAxOC0wOC0yMiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29t
PgorCisgICAgICAgIFtXSExTTF0gQWRkIG1vcmUgZnVuY3Rpb25zIHRvIHRoZSBzdGFuZGFyZCBs
aWJyYXJ5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODg4NzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qczoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzOgorICAgICAgICAoQnVpbHRp
blZlY3RvckNvbnN0cnVjdG9ycyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
Q2FsbEV4cHJlc3Npb24uanM6CisgICAgICAgIChDYWxsRXhwcmVzc2lvbi5wcm90b3R5cGUucmVz
b2x2ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhB
cmd1bWVudHMuanM6IENvcGllZCBmcm9tIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5
bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcy4KKyAgICAgICAgKGNoZWNrVHlw
ZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlci5wcm90b3R5cGUudmlzaXRU
eXBlUmVmKToKKyAgICAgICAgKGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1l
bnRzQ2hlY2tlcik6CisgICAgICAgIChjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyk6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qczoKKyAgICAgICAgKENoZWNrZXIu
cHJvdG90eXBlLnZpc2l0UHJvZ3JhbSk6CisgICAgICAgIChDaGVja2VyLnByb3RvdHlwZS52aXNp
dFR5cGVSZWYpOgorICAgICAgICAoQ2hlY2tlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKToK
KyAgICAgICAgKENoZWNrZXIucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgICog
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanM6
CisgICAgICAgIChGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5wcm90b3R5cGUudmlzaXRN
YXRyaXhUeXBlKToKKyAgICAgICAgKEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyKToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qczoKKyAg
ICAgICAgKGluZmVyVHlwZXNGb3JDYWxsKToKKyAgICAgICAgKGluZmVyVHlwZXNGb3JUeXBlQXJn
dW1lbnRzKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpz
OgorICAgICAgICAoSW50cmluc2ljcy5jYXN0KToKKyAgICAgICAgKEludHJpbnNpY3MuYml0d2lz
ZUNhc3QpOgorICAgICAgICAoSW50cmluc2ljcy5jYXN0VG9IYWxmKToKKyAgICAgICAgKEludHJp
bnNpY3MuKToKKyAgICAgICAgKEludHJpbnNpY3MpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL01hdHJpeFR5cGUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9PcGVyYXRvckJvb2wuanMuCisgICAgICAgIChNYXRyaXhUeXBlKToKKyAgICAg
ICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBlbGVtZW50VHlwZSk6CisgICAgICAgIChNYXRy
aXhUeXBlLnByb3RvdHlwZS5nZXQgbnVtUm93cyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3Rv
dHlwZS5nZXQgbnVtQ29sdW1ucyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3RvdHlwZS5nZXQg
bnVtUm93c1ZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBudW1Db2x1
bW5zVmFsdWUpOgorICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUuZ2V0IHNpemUpOgorICAg
ICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUudW5pZnlJbXBsKToKKyAgICAgICAgKE1hdHJpeFR5
cGUucHJvdG90eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUu
cHJvdG90eXBlLnRvU3RyaW5nKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9O
YW1lQ29udGV4dC5qczoKKyAgICAgICAgKE5hbWVDb250ZXh0LnByb3RvdHlwZS5hZGQpOgorICAg
ICAgICAoTmFtZUNvbnRleHQucHJvdG90eXBlLmdldCBsZXQpOgorICAgICAgICAoTmFtZUNvbnRl
eHQudW5kZXJseWluZ1RoaW5ncy5wcm90b3R5cGUuZWxzZSk6CisgICAgICAgIChOYW1lQ29udGV4
dC5wcm90b3R5cGUuU3ltYm9sLml0ZXJhdG9yKToKKyAgICAgICAgKE5hbWVDb250ZXh0KToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVzb2x2ZXIuanM6CisgICAgICAg
IChOYW1lUmVzb2x2ZXIucHJvdG90eXBlLnZpc2l0VHlwZVJlZik6CisgICAgICAgIChOYW1lUmVz
b2x2ZXIucHJvdG90eXBlLnZpc2l0Q2FsbEV4cHJlc3Npb24pOgorICAgICAgICAoTmFtZVJlc29s
dmVyKToKKyAgICAgICAgKE5hbWVSZXNvbHZlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpz
OgorICAgICAgICAoTmF0aXZlVHlwZSk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS5n
ZXQgdHlwZUFyZ3VtZW50cyk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS50b1N0cmlu
Zyk6CisgICAgICAgIChOYXRpdmVUeXBlLmNyZWF0ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanM6IFJlbmFtZWQgZnJvbSBUb29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXguanMuCisgICAgICAgIChP
cGVyYXRvckFuZGVySW5kZXhlci5mdW5jdGlvbnMpOgorICAgICAgICAoT3BlcmF0b3JBbmRlcklu
ZGV4ZXIpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ByZXBhcmUuanM6Cisg
ICAgICAgIChsZXQucHJlcGFyZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UHJvZ3JhbS5qczoKKyAgICAgICAgKFByb2dyYW0ucHJvdG90eXBlLmFkZCk6CisgICAgICAgIChQ
cm9ncmFtLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgIChQcm9ncmFtKToKKyAgICAgICAg
KiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzOiBSZW1vdmVk
LgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVOYW1lcy5qczoKKyAg
ICAgICAgKHJlc29sdmVOYW1lc0luVHlwZXMpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL1Jlc29sdmVPdmVybG9hZEltcGwuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUmVzb2x2ZVR5cGVEZWZzLmpzOgorICAgICAgICAocmVzb2x2ZVR5cGVEZWZzSW5U
eXBlcyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanM6Cisg
ICAgICAgIChSZXdyaXRlci5wcm90b3R5cGUudmlzaXRUeXBlUmVmKToKKyAgICAgICAgKFJld3Jp
dGVyLnByb3RvdHlwZS52aXNpdFZlY3RvclR5cGUpOgorICAgICAgICAoUmV3cml0ZXIucHJvdG90
eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChSZXdyaXRlcik6CisgICAgICAgICogV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbDoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9TdGFuZGFyZExpYnJhcnkuanM6CisgICAgICAgIChvcGVyYXRvci5ib29sKToK
KyAgICAgICAgKGJvb2wub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIub3BlcmF0b3IpOgorICAg
ICAgICAodXNob3J0Lm9wZXJhdG9yKToKKyAgICAgICAgKGNoYXIub3BlcmF0b3IpOgorICAgICAg
ICAoc2hvcnQub3BlcmF0b3IpOgorICAgICAgICAodWludC5vcGVyYXRvcik6CisgICAgICAgIChp
bnQub3BlcmF0b3IpOgorICAgICAgICAoaGFsZi5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdC5v
cGVyYXRvcik6CisgICAgICAgICh1Y2hhcjIub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIzLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVjaGFyNC5vcGVyYXRvcik6CisgICAgICAgICh1c2hvcnQyLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVzaG9ydDMub3BlcmF0b3IpOgorICAgICAgICAodXNob3J0NC5v
cGVyYXRvcik6CisgICAgICAgICh1aW50Mi5vcGVyYXRvcik6CisgICAgICAgICh1aW50My5vcGVy
YXRvcik6CisgICAgICAgICh1aW50NC5vcGVyYXRvcik6CisgICAgICAgIChjaGFyMi5vcGVyYXRv
cik6CisgICAgICAgIChjaGFyMy5vcGVyYXRvcik6CisgICAgICAgIChjaGFyNC5vcGVyYXRvcik6
CisgICAgICAgIChzaG9ydDIub3BlcmF0b3IpOgorICAgICAgICAoc2hvcnQzLm9wZXJhdG9yKToK
KyAgICAgICAgKHNob3J0NC5vcGVyYXRvcik6CisgICAgICAgIChpbnQyLm9wZXJhdG9yKToKKyAg
ICAgICAgKGludDMub3BlcmF0b3IpOgorICAgICAgICAoaW50NC5vcGVyYXRvcik6CisgICAgICAg
IChoYWxmMi5vcGVyYXRvcik6CisgICAgICAgIChoYWxmMy5vcGVyYXRvcik6CisgICAgICAgICho
YWxmNC5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdDIub3BlcmF0b3IpOgorICAgICAgICAoZmxv
YXQzLm9wZXJhdG9yKToKKyAgICAgICAgKGZsb2F0NC5vcGVyYXRvcik6CisgICAgICAgIChoYWxm
MngyLm9wZXJhdG9yKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1l
bnRDbG9uZXIuanM6CisgICAgICAgIChTdGF0ZW1lbnRDbG9uZXIucHJvdG90eXBlLnZpc2l0TmF0
aXZlVHlwZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURl
ZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzOgorICAgICAgICAoc3ludGhlc2l6ZURlZmF1bHRD
b25zdHJ1Y3Rvck9wZXJhdG9yLkZpbmRBbGxUeXBlcy5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBl
KToKKyAgICAgICAgKHN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5GaW5kQWxs
VHlwZXMucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChzeW50aGVzaXplRGVm
YXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuRmluZEFsbFR5cGVzKToKKyAgICAgICAgKHN5bnRoZXNp
emVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qczoKKyAgICAgICAgKHN5bnRoZXNp
emVTdHJ1Y3RBY2Nlc3NvcnMuY3JlYXRlVHlwZVJlZik6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVGVzdC5odG1sOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Rlc3QuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpzLgorICAgICAgICAoVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUpOgorICAgICAgICAoVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1
cmUucHJvdG90eXBlLmdldCB0eXBlKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29sdXRpb25G
YWlsdXJlLnByb3RvdHlwZS5nZXQgcmVhc29uKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVHlwZVJlZi5qczoKKyAgICAgICAgKFR5cGVSZWYud3JhcCk6CisgICAgICAg
IChUeXBlUmVmLnByb3RvdHlwZS5yZXNvbHZlKToKKyAgICAgICAgKFR5cGVSZWYucHJvdG90eXBl
LnRvU3RyaW5nKToKKyAgICAgICAgKFR5cGVSZWYpOgorICAgICAgICAoVHlwZVJlZi5pbnN0YW50
aWF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmlj
YXRpb25Db250ZXh0LmpzOgorICAgICAgICAoVW5pZmljYXRpb25Db250ZXh0LnByb3RvdHlwZS52
ZXJpZnkpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ZlY3RvclR5cGUuanM6
CisgICAgICAgIChWZWN0b3JUeXBlKToKKyAgICAgICAgKFZlY3RvclR5cGUucHJvdG90eXBlLmdl
dCBlbGVtZW50VHlwZSk6CisgICAgICAgIChWZWN0b3JUeXBlLnByb3RvdHlwZS5nZXQgbnVtRWxl
bWVudHMpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUuZ2V0IG51bUVsZW1lbnRzVmFs
dWUpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanM6CisgICAgICAgIChWaXNpdG9yLnBy
b3RvdHlwZS52aXNpdFR5cGVSZWYpOgorICAgICAgICAoVmlzaXRvci5wcm90b3R5cGUudmlzaXRO
YXRpdmVUeXBlKToKKyAgICAgICAgKFZpc2l0b3IucHJvdG90eXBlLnZpc2l0VmVjdG9yVHlwZSk6
CisgICAgICAgIChWaXNpdG9yLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5cGUpOgorICAgICAgICAo
VmlzaXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRtbDoK
KwogMjAxOC0wOC0yMiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbQXR0YWNobWVudCBTdXBwb3J0XSBTdXBwb3J0IGRyYWdnaW5nIGF0dGFjaG1lbnQg
ZWxlbWVudHMgb3V0IGFzIGZpbGVzIG9uIG1hY09TCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9BbGwuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9B
bGwuanMKaW5kZXggODE1MjUyNzNhZTY1YTE0ODY1OTY0YTEzZGE0NWNlOTRlZjEwNjg0YS4uOTMz
NGY4MTQ0N2Y3NWUwZmIxZTk1NTc1OTE2NTI1NzVhMDE4Yjc3MyAxMDA2NDQKLS0tIGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0FsbC5qcwpAQCAtNDksOSArNDksNiBAQCBsb2FkKCJCcmVhay5qcyIpOwogbG9h
ZCgiQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcyIpOwogbG9hZCgiQnVpbHRpblZlY3Rvckdl
dHRlci5qcyIpOwogbG9hZCgiQnVpbHRpblZlY3RvclNldHRlci5qcyIpOwotbG9hZCgiQnVpbHRp
blZlY3RvckluZGV4R2V0dGVyLmpzIik7Ci1sb2FkKCJCdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIu
anMiKTsKLWxvYWQoIkJ1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmpzIik7CiBsb2FkKCJD
YWxsRXhwcmVzc2lvbi5qcyIpOwogbG9hZCgiQ2FsbEZ1bmN0aW9uLmpzIik7CiBsb2FkKCJDaGVj
ay5qcyIpOwpAQCAtNjAsNiArNTcsNyBAQCBsb2FkKCJDaGVja0xvb3BzLmpzIik7CiBsb2FkKCJD
aGVja1JlY3Vyc2lvbi5qcyIpOwogbG9hZCgiQ2hlY2tSZWN1cnNpdmVUeXBlcy5qcyIpOwogbG9h
ZCgiQ2hlY2tSZXR1cm5zLmpzIik7Citsb2FkKCJDaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcyIp
OwogbG9hZCgiQ2hlY2tVbnJlYWNoYWJsZUNvZGUuanMiKTsKIGxvYWQoIkNoZWNrV3JhcHBlZC5q
cyIpOwogbG9hZCgiQ2hlY2tlci5qcyIpOwpAQCAtMTEyLDYgKzExMCw3IEBAIGxvYWQoIkxvZ2lj
YWxOb3QuanMiKTsKIGxvYWQoIkxvb3BDaGVja2VyLmpzIik7CiBsb2FkKCJNYWtlQXJyYXlSZWZF
eHByZXNzaW9uLmpzIik7CiBsb2FkKCJNYWtlUHRyRXhwcmVzc2lvbi5qcyIpOworbG9hZCgiTWF0
cml4VHlwZS5qcyIpOwogbG9hZCgiTmFtZUNvbnRleHQuanMiKTsKIGxvYWQoIk5hbWVGaW5kZXIu
anMiKTsKIGxvYWQoIk5hbWVSZXNvbHZlci5qcyIpOwpAQCAtMTE5LDkgKzExOCw4IEBAIGxvYWQo
Ik5hdGl2ZUZ1bmMuanMiKTsKIGxvYWQoIk5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMiKTsK
IGxvYWQoIk51bGxMaXRlcmFsLmpzIik7CiBsb2FkKCJOdWxsVHlwZS5qcyIpOwotbG9hZCgiT3Bl
cmF0b3JBbmRlckluZGV4LmpzIik7Citsb2FkKCJPcGVyYXRvckFuZGVySW5kZXhlci5qcyIpOwog
bG9hZCgiT3BlcmF0b3JBcnJheVJlZkxlbmd0aC5qcyIpOwotbG9hZCgiT3BlcmF0b3JCb29sLmpz
Iik7CiBsb2FkKCJPcmlnaW5LaW5kLmpzIik7CiBsb2FkKCJPdmVybG9hZFJlc29sdXRpb25GYWls
dXJlLmpzIik7CiBsb2FkKCJQYXJzZS5qcyIpOwpAQCAtMTMzLDcgKzEzMSw2IEBAIGxvYWQoIlB0
clR5cGUuanMiKTsKIGxvYWQoIlJlYWRNb2RpZnlXcml0ZUV4cHJlc3Npb24uanMiKTsKIGxvYWQo
IlJlY3Vyc2lvbkNoZWNrZXIuanMiKTsKIGxvYWQoIlJlY3Vyc2l2ZVR5cGVDaGVja2VyLmpzIik7
Ci1sb2FkKCJSZW1vdmVUeXBlQXJndW1lbnRzLmpzIik7CiBsb2FkKCJSZXNvbHZlTmFtZXMuanMi
KTsKIGxvYWQoIlJlc29sdmVPdmVybG9hZEltcGwuanMiKTsKIGxvYWQoIlJlc29sdmVQcm9wZXJ0
aWVzLmpzIik7CkBAIC0xNTAsMTMgKzE0NywxMyBAQCBsb2FkKCJTd2l0Y2hTdGF0ZW1lbnQuanMi
KTsKIGxvYWQoIlN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIik7CiBsb2FkKCJTeW50
aGVzaXplRW51bUZ1bmN0aW9ucy5qcyIpOwogbG9hZCgiU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29y
cy5qcyIpOwotbG9hZCgiU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyIpOwogbG9hZCgiU3ludGhl
c2l6ZUNvcHlDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIik7CiBsb2FkKCJTeW50aGVzaXplRGVmYXVs
dENvbnN0cnVjdG9yT3BlcmF0b3IuanMiKTsKIGxvYWQoIlRyYXBTdGF0ZW1lbnQuanMiKTsKIGxv
YWQoIlR5cGVEZWYuanMiKTsKIGxvYWQoIlR5cGVEZWZSZXNvbHZlci5qcyIpOwogbG9hZCgiVHlw
ZVJlZi5qcyIpOworbG9hZCgiVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiKTsKIGxv
YWQoIlR5cGVkVmFsdWUuanMiKTsKIGxvYWQoIlVpbnRMaXRlcmFsLmpzIik7CiBsb2FkKCJVaW50
TGl0ZXJhbFR5cGUuanMiKTsKQEAgLTE3MCw0ICsxNjcsNCBAQCBsb2FkKCJXU3ludGF4RXJyb3Iu
anMiKTsKIGxvYWQoIldUcmFwRXJyb3IuanMiKTsKIGxvYWQoIldUeXBlRXJyb3IuanMiKTsKIGxv
YWQoIldoaWxlTG9vcC5qcyIpOwotbG9hZCgiV3JhcENoZWNrZXIuanMiKTsKXCBObyBuZXdsaW5l
IGF0IGVuZCBvZiBmaWxlCitsb2FkKCJXcmFwQ2hlY2tlci5qcyIpOwpkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMu
anMKaW5kZXggMjcwNGI0M2EwNmMyZmFlZDlkZmE3M2RlYWQzM2JiMGM1Yzk1NTk4NS4uNzQ4ZGYw
Yzk0YzMyZDA3YmJjMDBhNWU3NWNhOWE3N2UzNjY3YThlMSAxMDA2NDQKLS0tIGEvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcworKysgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpz
CkBAIC04MSw0ICs4MSw0IEBAIGNsYXNzIEJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMgewogICAg
ICAgICB9OwogICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7CiAgICAgfQot
fQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmpzIGIvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3Iu
anMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGIxODNkMzU2ODYxOTQxYmMyNzZlNGQz
YzY3YzVlNDdlY2FmZTQ3MDkuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckVxdWFs
aXR5T3BlcmF0b3IuanMKKysrIC9kZXYvbnVsbApAQCAtMSw2NiArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycn
IEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
LSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsKLQotY2xhc3Mg
QnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBl
TmFtZSwgc2l6ZSkKLSAgICB7Ci0gICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJhc2VUeXBl
TmFtZTsKLSAgICAgICAgdGhpcy5fc2l6ZSA9IHNpemU7Ci0gICAgfQotCi0gICAgZ2V0IGJhc2VU
eXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQotICAgIGdldCBzaXplKCkg
eyByZXR1cm4gdGhpcy5fc2l6ZTsgfQotCi0gICAgdG9TdHJpbmcoKQotICAgIHsKLSAgICAgICAg
cmV0dXJuIGBuYXRpdmUgYm9vbCBvcGVyYXRvcj09KCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlz
LnNpemV9LCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLnNpemV9KWA7Ci0gICAgfQotCi0gICAg
c3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewotICAgICAgICBpZiAoIXRoaXMuX2Z1bmN0aW9ucykg
ewotICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zID0gW107Ci0KLSAgICAgICAgICAgIGZvciAo
bGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewotICAgICAgICAgICAgICAgIGZv
ciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVzKQotICAgICAgICAgICAgICAgICAgICB0
aGlzLl9mdW5jdGlvbnMucHVzaChuZXcgQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IodHlw
ZU5hbWUsIHNpemUpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICByZXR1cm4g
dGhpcy5fZnVuY3Rpb25zOwotICAgIH0KLQotICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24o
ZnVuYykKLSAgICB7Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3JlZjEsIHJlZjJd
LCBub2RlKSA9PiB7Ci0gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuc2l6ZTsg
aSsrKSB7Ci0gICAgICAgICAgICAgICAgaWYgKHJlZjEuZ2V0KGkpICE9IHJlZjIuZ2V0KGkpKQot
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gRVB0ci5ib3goZmFsc2UpOwotICAgICAgICAgICAg
fQotICAgICAgICAgICAgcmV0dXJuIEVQdHIuYm94KHRydWUpOwotICAgICAgICB9OwotICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7Ci0gICAgfQotfQpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L0J1aWx0aW5WZWN0b3JHZXR0ZXIuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9C
dWlsdGluVmVjdG9yR2V0dGVyLmpzCmluZGV4IGMyNTNmNzYzMGVlOWRjNDdjZDFlMTk0NWJjODdm
NDJlYWEzY2NiMjguLmUwNGMzY2Q2ODc4NjVjN2UxOTE1NDE2MGZhNGEzZDIwMjAzNzhiMmEgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JHZXR0
ZXIuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3Rvckdl
dHRlci5qcwpAQCAtNDMsMjMgKzQzLDYgQEAgY2xhc3MgQnVpbHRpblZlY3RvckdldHRlciB7CiAg
ICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlwZU5hbWV9IG9wZXJhdG9yLiR7dGhp
cy5lbGVtZW50TmFtZX0oJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuc2l6ZX0pYDsKICAgICB9
CiAKLSAgICBzdGF0aWMgZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fZnVu
Y3Rpb25zKSB7Ci0gICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKLQotICAgICAgICAg
ICAgY29uc3QgZWxlbWVudHMgPSBbICJ4IiwgInkiLCAieiIsICJ3IiBdOwotCi0gICAgICAgICAg
ICBmb3IgKGxldCB0eXBlTmFtZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMpIHsKLSAgICAgICAgICAg
ICAgICBmb3IgKGxldCBzaXplIG9mIFZlY3RvckVsZW1lbnRTaXplcykgewotICAgICAgICAgICAg
ICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpemU7IGkrKykKLSAgICAgICAgICAgICAgICAg
ICAgICAgIHRoaXMuX2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGluVmVjdG9yR2V0dGVyKHR5cGVO
YW1lLCBzaXplLCBlbGVtZW50c1tpXSwgaSkpOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdGhpcy5fZnVuY3Rpb25zOwotICAgIH0K
LQogICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykKICAgICB7CiAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZlY10sIG5vZGUpID0+IHsKQEAgLTY3LDQgKzUwLDQgQEAg
Y2xhc3MgQnVpbHRpblZlY3RvckdldHRlciB7CiAgICAgICAgIH07CiAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb25EYXRhID0gdGhpczsKICAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2Yg
ZmlsZQorfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRp
blZlY3RvckluZGV4R2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVp
bHRpblZlY3RvckluZGV4R2V0dGVyLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBm
NzI2MmZjOWNlMjczMGYwODdkNjE0NTU4NzZiMzM1ZmUwMjRhYzNhLi4wMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL0J1aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcworKysgL2Rldi9udWxsCkBAIC0xLDY2ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IK
LSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBz
dHJpY3QiOwotCi1jbGFzcyBCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIgewotICAgIGNvbnN0cnVj
dG9yKGJhc2VUeXBlTmFtZSwgc2l6ZSkKLSAgICB7Ci0gICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFt
ZSA9IGJhc2VUeXBlTmFtZTsKLSAgICAgICAgdGhpcy5fc2l6ZSA9IHNpemU7Ci0gICAgfQotCi0g
ICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQotICAg
IGdldCBzaXplKCkgeyByZXR1cm4gdGhpcy5fc2l6ZTsgfQotCi0gICAgdG9TdHJpbmcoKQotICAg
IHsKLSAgICAgICAgcmV0dXJuIGBuYXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0gb3BlcmF0b3Jb
XSgke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSx1aW50KWA7Ci0gICAgfQotCi0gICAg
c3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewotICAgICAgICBpZiAoIXRoaXMuX2FsbEluZGV4R2V0
dGVycykgewotICAgICAgICAgICAgdGhpcy5fYWxsSW5kZXhHZXR0ZXJzID0gW107Ci0KLSAgICAg
ICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewotICAgICAg
ICAgICAgICAgIGZvciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVzKQotICAgICAgICAg
ICAgICAgICAgICB0aGlzLl9hbGxJbmRleEdldHRlcnMucHVzaChuZXcgQnVpbHRpblZlY3Rvcklu
ZGV4R2V0dGVyKHR5cGVOYW1lLCBzaXplKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAg
ICAgICAgcmV0dXJuIHRoaXMuX2FsbEluZGV4R2V0dGVyczsKLSAgICB9Ci0KLSAgICBpbnN0YW50
aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCi0gICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFt2ZWMsIGluZGV4XSwgbm9kZSkgPT4gewotICAgICAgICAgICAgY29uc3QgaW5kZXhW
YWx1ZSA9IGluZGV4LmxvYWRWYWx1ZSgpOwotICAgICAgICAgICAgaWYgKGluZGV4VmFsdWUgPj0g
MCAmJiBpbmRleFZhbHVlIDwgdGhpcy5zaXplKQotICAgICAgICAgICAgICAgIHJldHVybiBFUHRy
LmJveCh2ZWMuZ2V0KGluZGV4LmxvYWRWYWx1ZSgpKSk7Ci0gICAgICAgICAgICBlbHNlCi0gICAg
ICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2luZGV4VmFsdWV9IG91dCBvZiBib3VuZHMg
Zm9yIHZlY3RvciBvZiBzaXplICR7dGhpcy5zaXplfWApOwotICAgICAgICB9OwotICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7Ci0gICAgfQotfQpcIE5vIG5ld2xpbmUgYXQg
ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1
aWx0aW5WZWN0b3JJbmRleFNldHRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L0J1aWx0aW5WZWN0b3JJbmRleFNldHRlci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMmZlNWQ2NzhhYjcwNWZlNDBiN2Q2OGU5NjkzZGQ4YWZjNGFkZWU5NC4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9CdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuanMKKysrIC9kZXYvbnVsbApAQCAtMSw3
MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoK
LSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMu
IE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1B
R0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNV
QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJP
RklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z
IFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElB
QklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVW
RU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1
c2Ugc3RyaWN0IjsKLQotY2xhc3MgQnVpbHRpblZlY3RvckluZGV4U2V0dGVyIHsKLSAgICBjb25z
dHJ1Y3RvcihiYXNlVHlwZU5hbWUsIHNpemUpCi0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlw
ZU5hbWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAgICAgIHRoaXMuX3NpemUgPSBzaXplOwotICAgIH0K
LQotICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0K
LSAgICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRoaXMuX3NpemU7IH0KLSAgICBnZXQgZWxlbWVudE5h
bWUoKSB7IHJldHVybiB0aGlzLl9lbGVtZW50TmFtZTsgfQotICAgIGdldCBpbmRleCgpIHsgcmV0
dXJuIHRoaXMuX2luZGV4OyB9Ci0KLSAgICB0b1N0cmluZygpCi0gICAgewotICAgICAgICByZXR1
cm4gYG5hdGl2ZSAke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSBvcGVyYXRvcltdPSgk
e3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSx1aW50LCR7dGhpcy5iYXNlVHlwZU5hbWV9
KWA7Ci0gICAgfQotCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewotICAgICAgICBpZiAo
IXRoaXMuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zID0gW107Ci0K
LSAgICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewot
ICAgICAgICAgICAgICAgIGZvciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVzKQotICAg
ICAgICAgICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMucHVzaChuZXcgQnVpbHRpblZlY3Rvcklu
ZGV4U2V0dGVyKHR5cGVOYW1lLCBzaXplKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAg
ICAgICAgcmV0dXJuIHRoaXMuX2Z1bmN0aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUlt
cGxlbWVudGF0aW9uKGZ1bmMpCi0gICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFtiYXNlLCBpbmRleCwgdmFsdWVdLCBub2RlKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCBpbmRl
eFZhbHVlID0gaW5kZXgubG9hZFZhbHVlKCk7Ci0gICAgICAgICAgICBpZiAoaW5kZXhWYWx1ZSA+
PSAwICYmIGluZGV4VmFsdWUgPCB0aGlzLnNpemUpIHsKLSAgICAgICAgICAgICAgICBsZXQgcmVz
dWx0ID0gbmV3IEVQdHIobmV3IEVCdWZmZXIodGhpcy5zaXplKSwgMCk7Ci0gICAgICAgICAgICAg
ICAgcmVzdWx0LmNvcHlGcm9tKGJhc2UsIHRoaXMuc2l6ZSk7Ci0gICAgICAgICAgICAgICAgcmVz
dWx0LnBsdXMoaW5kZXhWYWx1ZSkuY29weUZyb20odmFsdWUsIDEpOwotICAgICAgICAgICAgICAg
IHJldHVybiByZXN1bHQ7Ci0gICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICB0aHJv
dyBuZXcgRXJyb3IoYCR7aW5kZXhWYWx1ZX0gb3V0IG9mIGJvdW5kcyBmb3IgdmVjdG9yIG9mIHNp
emUgJHt0aGlzLnNpemV9YCk7Ci0gICAgICAgIH07Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b25EYXRhID0gdGhpczsKLSAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvclNldHRl
ci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JTZXR0ZXIu
anMKaW5kZXggYTJkNzYzYjc1MDk5OTdiMjQxMGMyNGI4MDEzMTRjMzRhM2M0ODdhMC4uNjU3Nzg2
NmQ2MGU3Mjg0ZDAwYTIyMGE1MjYzODM1OWY2YTlhODg0ZSAxMDA2NDQKLS0tIGEvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvclNldHRlci5qcworKysgYi9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yU2V0dGVyLmpzCkBAIC00MywyMyAr
NDMsNiBAQCBjbGFzcyBCdWlsdGluVmVjdG9yU2V0dGVyIHsKICAgICAgICAgcmV0dXJuIGBuYXRp
dmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuc2l6ZX0gb3BlcmF0b3IuJHt0aGlzLmVsZW1l
bnROYW1lfT0oJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuc2l6ZX0sJHt0aGlzLmJhc2VUeXBl
TmFtZX0pYDsKICAgICB9CiAKLSAgICBzdGF0aWMgZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAg
IGlmICghdGhpcy5fZnVuY3Rpb25zKSB7Ci0gICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBb
XTsKLSAgICAgICAgCi0gICAgICAgICAgICBjb25zdCBlbGVtZW50cyA9IFsgIngiLCAieSIsICJ6
IiwgInciIF07Ci0KLSAgICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1l
bnRUeXBlcykgewotICAgICAgICAgICAgICAgIGZvciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVu
dFNpemVzKSB7Ci0gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZTsg
aSsrKQotICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zLnB1c2gobmV3IEJ1
aWx0aW5WZWN0b3JTZXR0ZXIodHlwZU5hbWUsIHNpemUsIGVsZW1lbnRzW2ldLCBpKSk7Ci0gICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIHJldHVybiB0
aGlzLl9mdW5jdGlvbnM7Ci0gICAgfQotCiAgICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihm
dW5jKQogICAgIHsKICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbYmFzZSwgdmFsdWVd
LCBub2RlKSA9PiB7CkBAIC03MCw0ICs1Myw0IEBAIGNsYXNzIEJ1aWx0aW5WZWN0b3JTZXR0ZXIg
ewogICAgICAgICB9OwogICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7CiAg
ICAgfQotfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK30KZGlmZiAtLWdpdCBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NhbGxFeHByZXNzaW9uLmpzIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvQ2FsbEV4cHJlc3Npb24uanMKaW5kZXggYjI1Mzk4ZjBiMWI2ZWFk
ZTFiNzlhYzkwZTZhNzYyNTI1ZjgxOWJkNy4uNWZiZGQ1MDVmNzlkNGIzMjZlMDkzZTBmYjc2Y2Qz
NzVkMGEyYzViYSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2Fs
bEV4cHJlc3Npb24uanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2FsbEV4
cHJlc3Npb24uanMKQEAgLTUyLDIwICs1MiwyMiBAQCBjbGFzcyBDYWxsRXhwcmVzc2lvbiBleHRl
bmRzIEV4cHJlc3Npb24gewogCiAgICAgcmVzb2x2ZShwb3NzaWJsZU92ZXJsb2FkcywgcHJvZ3Jh
bSkKICAgICB7Ci0gICAgICAgIGlmICghcG9zc2libGVPdmVybG9hZHMpCi0gICAgICAgICAgICB0
aHJvdyBuZXcgV1R5cGVFcnJvcih0aGlzLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJEaWQgbm90IGZp
bmQgYW55IGZ1bmN0aW9ucyBuYW1lZCAiICsgdGhpcy5uYW1lKTsKLQogICAgICAgICBsZXQgZmFp
bHVyZXMgPSBbXTsKLSAgICAgICAgbGV0IG92ZXJsb2FkID0gcmVzb2x2ZU92ZXJsb2FkSW1wbChw
b3NzaWJsZU92ZXJsb2FkcywgdGhpcy5hcmd1bWVudFR5cGVzLCB0aGlzLnJldHVyblR5cGUpOwor
ICAgICAgICBsZXQgb3ZlcmxvYWQ7CisgICAgICAgIGlmIChwb3NzaWJsZU92ZXJsb2FkcykKKyAg
ICAgICAgICAgIG92ZXJsb2FkID0gcmVzb2x2ZU92ZXJsb2FkSW1wbChwb3NzaWJsZU92ZXJsb2Fk
cywgdGhpcy5hcmd1bWVudFR5cGVzLCB0aGlzLnJldHVyblR5cGUpOwogCi0gICAgICAgIGlmICgh
b3ZlcmxvYWQuZnVuYykgeworICAgICAgICBpZiAoIW92ZXJsb2FkIHx8ICFvdmVybG9hZC5mdW5j
KSB7CisgICAgICAgICAgICBpZiAoIW92ZXJsb2FkKQorICAgICAgICAgICAgICAgIG92ZXJsb2Fk
ID0ge307CiAgICAgICAgICAgICBjb25zdCBmdW5jID0gdGhpcy5fcmVzb2x2ZUJ5SW5zdGFudGlh
dGlvbihwcm9ncmFtKTsKICAgICAgICAgICAgIGlmIChmdW5jKQogICAgICAgICAgICAgICAgIG92
ZXJsb2FkLmZ1bmMgPSBmdW5jOwogICAgICAgICB9CiAKLQogICAgICAgICBpZiAoIW92ZXJsb2Fk
LmZ1bmMpIHsKKyAgICAgICAgICAgIGlmICghb3ZlcmxvYWQuZmFpbHVyZXMpCisgICAgICAgICAg
ICAgICAgb3ZlcmxvYWQuZmFpbHVyZXMgPSBbXTsKICAgICAgICAgICAgIGZhaWx1cmVzLnB1c2go
Li4ub3ZlcmxvYWQuZmFpbHVyZXMpOwogICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSAiRGlkIG5v
dCBmaW5kIGZ1bmN0aW9uIG5hbWVkICIgKyB0aGlzLm5hbWUgKyAiIGZvciBjYWxsIHdpdGggIjsK
ICAgICAgICAgICAgIG1lc3NhZ2UgKz0gImFyZ3VtZW50IHR5cGVzICgiICsgdGhpcy5hcmd1bWVu
dFR5cGVzICsgIikiOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
Q2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9DaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZjY5MTQyYTM1MTdkMjk0
OTAwNTMwYzBjZjA2NmM5YmZkMjI3N2FmCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMKQEAgLTAsMCArMSw1
MCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgor
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworInVzZSBz
dHJpY3QiOworCitmdW5jdGlvbiBjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9ncmFtKQorewor
ICAgIGNsYXNzIFR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlciBleHRlbmRzIFZpc2l0b3IgeworICAg
ICAgICB2aXNpdFR5cGVSZWYobm9kZSkKKyAgICAgICAgeworICAgICAgICAgICAgaWYgKChub2Rl
Lm5hbWUgPT0gInZlY3RvciIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAyKQorICAg
ICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIm1hdHJpeCIgJiYgbm9kZS50eXBlQXJndW1l
bnRzLmxlbmd0aCAhPSAzKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlRleHR1
cmUxRCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAg
IHx8IChub2RlLm5hbWUgPT0gIlJXVGV4dHVyZTFEIiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVu
Z3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiVGV4dHVyZTFEQXJy
YXkiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8
fCAobm9kZS5uYW1lID09ICJSV1RleHR1cmUxREFycmF5IiAmJiBub2RlLnR5cGVBcmd1bWVudHMu
bGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiVGV4dHVyZTJE
IiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwg
KG5vZGUubmFtZSA9PSAiUldUZXh0dXJlMkQiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGgg
IT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJlMkRBcnJheSIg
JiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChu
b2RlLm5hbWUgPT0gIlJXVGV4dHVyZTJEQXJyYXkiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5n
dGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJlM0QiICYm
IG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9k
ZS5uYW1lID09ICJSV1RleHR1cmUzRCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAx
KQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlRleHR1cmVDdWJlIiAmJiBub2Rl
LnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpKQorICAgICAgICAgICAgICAgIHRocm93IG5ldyBF
cnJvcihgQnVpbHRpbiB0eXBlICR7bm9kZS5uYW1lfSBzaG91bGQgYWx3YXlzIGhhdmUgdHlwZSBh
cmd1bWVudHMuYCk7CisgICAgICAgIH0KKyAgICB9CisgICAgcHJvZ3JhbS52aXNpdChuZXcgVHlw
ZVdpdGhBcmd1bWVudHNDaGVja2VyKCkpOworfQorCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9DaGVja2VyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvQ2hlY2tlci5qcwppbmRleCAxYTE0Yzg2NmFjZWQ0MTEyYjE4MGY2OTE1NmMwNmQyYjY2NGQ4
N2UyLi4wMDE4OGQ3MGViYjFhNmJjMzQ1MGY0NjM2MmQxZjk2YWUzODdjYmEyIDEwMDY0NAotLS0g
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DaGVja2VyLmpzCisrKyBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrZXIuanMKQEAgLTQxLDggKzQxLDEzIEBAIGNsYXNz
IENoZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgICAgIHN0YXRlbWVudC52aXNpdCh0
aGlzKTsKICAgICAgICAgfQogICAgICAgICAKLSAgICAgICAgZm9yIChsZXQgdHlwZSBvZiBub2Rl
LnR5cGVzLnZhbHVlcygpKQotICAgICAgICAgICAgZG9TdGF0ZW1lbnQodHlwZSk7CisgICAgICAg
IGZvciAobGV0IHR5cGUgb2Ygbm9kZS50eXBlcy52YWx1ZXMoKSkgeworICAgICAgICAgICAgaWYg
KHR5cGUgaW5zdGFuY2VvZiBBcnJheSkgeworICAgICAgICAgICAgICAgIGZvciAobGV0IGNvbnN0
aXR1ZW50VHlwZSBvZiB0eXBlKQorICAgICAgICAgICAgICAgICAgICBkb1N0YXRlbWVudChjb25z
dGl0dWVudFR5cGUpOworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgZG9TdGF0
ZW1lbnQodHlwZSk7CisgICAgICAgIH0KICAgICAgICAgZm9yIChsZXQgZnVuY3Mgb2Ygbm9kZS5m
dW5jdGlvbnMudmFsdWVzKCkpIHsKICAgICAgICAgICAgIGZvciAobGV0IGZ1bmMgb2YgZnVuY3Mp
IHsKICAgICAgICAgICAgICAgICB0aGlzLnZpc2l0RnVuYyhmdW5jKTsKQEAgLTI0Nyw2ICsyNTIs
MTAgQEAgY2xhc3MgQ2hlY2tlciBleHRlbmRzIFZpc2l0b3IgewogICAgIHsKICAgICAgICAgaWYg
KCFub2RlLnR5cGUpCiAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIlR5cGUgcmVmZXJlbmNl
IHdpdGhvdXQgYSB0eXBlIGluIGNoZWNrZXI6ICIgKyBub2RlICsgIiBhdCAiICsgbm9kZS5vcmln
aW4pOworICAgICAgICAvLyBBbGwgdGhlIHN0cnVjdHMgd2lsbCBiZSB2aXNpdGVkIGJ5IHZpc2l0
UHJvZ3JhbSgpIGl0ZXJhdGluZyB0aHJvdWdoIGVhY2ggdG9wLWxldmVsIHR5cGUuCisgICAgICAg
IC8vIFdlIGRvbid0IHdhbnQgdG8gcmVjdXJzZSBoZXJlIGJlY2F1c2UgdGhlIGNvbnRlbnRzIG9m
IHN0cnVjdHMgY2FuIHJlZmVyIHRvIHRoZW1zZWx2ZXMgKGUuZy4gYSBsaW5rZWQgbGlzdCksCisg
ICAgICAgIC8vIGFuZCB0aGlzIHdvdWxkIGNhbiBhbiBpbmZpbml0ZSBsb29wLgorICAgICAgICAv
LyBUeXBlZGVmcyBjYW4ndCByZWZlciB0byB0aGVtc2VsdmVzIGJlY2F1c2Ugd2UgY2hlY2sgdGhh
dCBpbiBUeXBlRGVmUmVzb2x2ZXIuCiAgICAgICAgIGlmICghKG5vZGUudHlwZSBpbnN0YW5jZW9m
IFN0cnVjdFR5cGUpKQogICAgICAgICAgICAgbm9kZS50eXBlLnZpc2l0KHRoaXMpOwogICAgIH0K
QEAgLTI1NCw2ICsyNjMsNyBAQCBjbGFzcyBDaGVja2VyIGV4dGVuZHMgVmlzaXRvciB7CiAgICAg
dmlzaXRWZWN0b3JUeXBlKG5vZGUpCiAgICAgewogICAgICAgICBub2RlLmVsZW1lbnRUeXBlLnZp
c2l0KHRoaXMpOworICAgICAgICBub2RlLm51bUVsZW1lbnRzLnZpc2l0KHRoaXMpOwogCiAgICAg
ICAgIGxldCBpc0tub3duQWxsb3dlZFZlY3RvckVsZW1lbnRUeXBlID0gZmFsc2U7CiAgICAgICAg
IGZvciAobGV0IHZlY3RvckVsZW1lbnRUeXBlTmFtZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMpIHsK
QEAgLTI2OCw2ICsyNzgsMzMgQEAgY2xhc3MgQ2hlY2tlciBleHRlbmRzIFZpc2l0b3IgewogCiAg
ICAgICAgIGlmICghaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVtZW50VHlwZSkKICAgICAgICAgICAg
IHRocm93IG5ldyBXVHlwZUVycm9yKGAke25vZGUuZWxlbWVudFR5cGV9IGlzIG5vdCBhIHBlcm1p
dHRlZCB2ZWN0b3IgZWxlbWVudCB0eXBlLmApOworICAgICAgICBpZiAobm9kZS5udW1FbGVtZW50
c1ZhbHVlICE9IDIgJiYgbm9kZS5udW1FbGVtZW50c1ZhbHVlICE9IDMgJiYgbm9kZS5udW1FbGVt
ZW50c1ZhbHVlICE9IDQpCisgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcihgJHtub2Rl
LnRvU3RyaW5nKCl9OiAke25vZGUubnVtRWxlbWVudHNWYWx1ZX0gaXMgbm90IDIsIDMsIG9yIDQu
YCk7CisgICAgfQorCisgICAgdmlzaXRNYXRyaXhUeXBlKG5vZGUpCisgICAgeworICAgICAgICBu
b2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bVJvd3MudmlzaXQo
dGhpcyk7CisgICAgICAgIG5vZGUubnVtQ29sdW1ucy52aXNpdCh0aGlzKTsKKworICAgICAgICBs
ZXQgaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVtZW50VHlwZSA9IGZhbHNlOworICAgICAgICBmb3Ig
KGxldCBlbGVtZW50VHlwZU5hbWUgb2YgWyJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAg
IGNvbnN0IGVsZW1lbnRUeXBlID0gdGhpcy5fcHJvZ3JhbS5nbG9iYWxOYW1lQ29udGV4dC5nZXQo
VHlwZSwgZWxlbWVudFR5cGVOYW1lKTsKKyAgICAgICAgICAgIGlmICghZWxlbWVudFR5cGUpCisg
ICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7ZWxlbWVudFR5cGVOYW1lfSBp
cyBub3QgYSBrbm93biBuYXRpdmUgdHlwZSBpbiB0aGUgc3RhbmRhcmQgbGlicmFyeSBvciBpbnRy
aW5zaWNzLmApOworICAgICAgICAgICAgaWYgKGVsZW1lbnRUeXBlLmVxdWFscyhub2RlLmVsZW1l
bnRUeXBlKSkgeworICAgICAgICAgICAgICAgIGlzS25vd25BbGxvd2VkVmVjdG9yRWxlbWVudFR5
cGUgPSB0cnVlOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAg
ICB9CisKKyAgICAgICAgaWYgKCFpc0tub3duQWxsb3dlZFZlY3RvckVsZW1lbnRUeXBlKQorICAg
ICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7bm9kZS5lbGVtZW50VHlwZX0gaXMgbm90
IGEgcGVybWl0dGVkIHZlY3RvciBlbGVtZW50IHR5cGUuYCk7CisgICAgICAgIGlmIChub2RlLm51
bVJvd3NWYWx1ZSAhPSAyICYmIG5vZGUubnVtUm93c1ZhbHVlICE9IDMgJiYgbm9kZS5udW1Sb3dz
VmFsdWUgIT0gNCkKKyAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKGAke25vZGUudG9T
dHJpbmcoKX06ICR7bm9kZS5udW1Sb3dzVmFsdWV9IGlzIG5vdCAyLCAzLCBvciA0LmApOworICAg
ICAgICBpZiAobm9kZS5udW1Db2x1bW5zVmFsdWUgIT0gMiAmJiBub2RlLm51bUNvbHVtbnNWYWx1
ZSAhPSAzICYmIG5vZGUubnVtQ29sdW1uc1ZhbHVlICE9IDQpCisgICAgICAgICAgICB0aHJvdyBu
ZXcgV1R5cGVFcnJvcihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUubnVtQ29sdW1uc1ZhbHVl
fSBpcyBub3QgMiwgMywgb3IgNC5gKTsKICAgICB9CiAgICAgCiAgICAgdmlzaXRBcnJheVR5cGUo
bm9kZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5l
ZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
RmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKaW5kZXggMTk3MGY4ZWQ5MzJjZDM1MzBh
NDhkYzMxYWY4YzljNDI0MGRkZThkMC4uZTBlMTYxZmYxMGNjZDNjMDk5MmI5YTkyNjQ5ZjRlM2Ew
MGJhMTExNyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRl
bmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKQEAgLTc0LDUgKzc0LDE3IEBA
IGNsYXNzIEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyIGV4dGVuZHMgVmlzaXRvciB7CiAg
ICAgICAgICAgICB9KTsKICAgICAgICAgfQogICAgIH0KKworICAgIHZpc2l0TWF0cml4VHlwZShu
b2RlKQorICAgIHsKKyAgICAgICAgY29uc3QgZmllbGROYW1lcyA9IFsgInJvdzAiLCAicm93MSIs
ICJyb3cyIiwgInJvdzMiIF07CisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbm9kZS5udW1S
b3dzVmFsdWU7IGkrKykgeworICAgICAgICAgICAgdGhpcy5fcmVzdWx0LnB1c2goeworICAgICAg
ICAgICAgICAgIG5hbWU6IHRoaXMuX25hbWUuam9pbigiLiIpICsgIi4iICsgZmllbGROYW1lc1tp
XSwKKyAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMuX29mZnNldCArIGkgKiBub2RlLmVsZW1l
bnRUeXBlLnNpemUgKiBub2RlLm51bUNvbHVtbnNWYWx1ZSwKKyAgICAgICAgICAgICAgICB0eXBl
OiBub2RlLmVsZW1lbnRUeXBlLm5hbWUgKyBub2RlLm51bUNvbHVtbnNWYWx1ZS50b1N0cmluZygp
CisgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJUeXBlc0ZvckNhbGwuanMgYi9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qcwppbmRleCA1ZjMyZWQx
YzQ5MGE3ZGY4OTQxZTkxOWMxMzBjZjY1ZWFhOGI2YTRkLi5iY2ZlYjk4NmNhZmY0OWYwMjg3YTgz
Njc4YmYxMTU2Mjg0N2YwMzg5IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qcwpAQCAtMzYsMTIgKzM2LDggQEAgZnVuY3Rpb24gaW5m
ZXJUeXBlc0ZvckNhbGwoZnVuYywgYXJndW1lbnRUeXBlcywgcmV0dXJuVHlwZSkKICAgICAgICAg
aWYgKCFhcmd1bWVudFR5cGVzW2ldLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgZnVuYy5wYXJh
bWV0ZXJzW2ldLnR5cGUpKQogICAgICAgICAgICAgcmV0dXJuIHtmYWlsdXJlOiBuZXcgT3Zlcmxv
YWRSZXNvbHV0aW9uRmFpbHVyZShmdW5jLCAiQXJndW1lbnQgIyIgKyAoaSArIDEpICsgIiAiICsg
KGZ1bmMucGFyYW1ldGVyc1tpXS5uYW1lID8gImZvciBwYXJhbWV0ZXIgIiArIGZ1bmMucGFyYW1l
dGVyc1tpXS5uYW1lICsgIiAiIDogIiIpICsgImRvZXMgbm90IG1hdGNoIChwYXNzZWQgIiArIGFy
Z3VtZW50VHlwZXNbaV0gKyAiLCByZXF1aXJlICIgKyBmdW5jLnBhcmFtZXRlcnNbaV0udHlwZSAr
ICIpIil9OwogICAgIH0KLSAgICBpZiAocmV0dXJuVHlwZSAmJiAhcmV0dXJuVHlwZS51bmlmeSh1
bmlmaWNhdGlvbkNvbnRleHQsIGZ1bmMucmV0dXJuVHlwZSkpIHsKLSAgICAgICAgaWYgKGZ1bmMu
cmV0dXJuVHlwZS50b1N0cmluZygpID09ICJ2ZWN0b3IiKSB7Ci0gICAgICAgICAgICByZXR1cm5U
eXBlLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgZnVuYy5yZXR1cm5UeXBlKQotICAgICAgICB9
CisgICAgaWYgKHJldHVyblR5cGUgJiYgIXJldHVyblR5cGUudW5pZnkodW5pZmljYXRpb25Db250
ZXh0LCBmdW5jLnJldHVyblR5cGUpKQogICAgICAgICByZXR1cm4ge2ZhaWx1cmU6IG5ldyBPdmVy
bG9hZFJlc29sdXRpb25GYWlsdXJlKGZ1bmMsICJSZXR1cm4gdHlwZSAiICsgZnVuYy5yZXR1cm5U
eXBlICsgIiBkb2VzIG5vdCBtYXRjaCAiICsgcmV0dXJuVHlwZSl9OwotICAgIH0KICAgICBsZXQg
dmVyaWZpY2F0aW9uUmVzdWx0ID0gdW5pZmljYXRpb25Db250ZXh0LnZlcmlmeSgpOwogICAgIGlm
ICghdmVyaWZpY2F0aW9uUmVzdWx0LnJlc3VsdCkKICAgICAgICAgcmV0dXJuIHtmYWlsdXJlOiBu
ZXcgT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZShmdW5jLCB2ZXJpZmljYXRpb25SZXN1bHQucmVh
c29uKX07CkBAIC00OSwzICs0NSwyMSBAQCBmdW5jdGlvbiBpbmZlclR5cGVzRm9yQ2FsbChmdW5j
LCBhcmd1bWVudFR5cGVzLCByZXR1cm5UeXBlKQogICAgIHJldHVybiB7ZnVuYywgdW5pZmljYXRp
b25Db250ZXh0fTsKIH0KIAorZnVuY3Rpb24gaW5mZXJUeXBlc0ZvclR5cGVBcmd1bWVudHModHlw
ZSwgdHlwZUFyZ3VtZW50cykKK3sKKyAgICBpZiAodHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gdHlw
ZS50eXBlQXJndW1lbnRzLmxlbmd0aCkKKyAgICAgICAgcmV0dXJuIHtmYWlsdXJlOiBuZXcgVHlw
ZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUodHlwZSwgIldyb25nIG51bWJlciBvZiBhcmd1bWVu
dHMgKHBhc3NlZCAiICsgdHlwZUFyZ3VtZW50cy5sZW5ndGggKyAiLCByZXF1aXJlICIgKyB0eXBl
LnR5cGVBcmd1bWVudHMubGVuZ3RoICsgIikiKX07CisgICAgbGV0IHVuaWZpY2F0aW9uQ29udGV4
dCA9IG5ldyBVbmlmaWNhdGlvbkNvbnRleHQoKTsKKworICAgIGZvciAobGV0IGkgPSAwOyBpIDwg
dHlwZUFyZ3VtZW50cy5sZW5ndGg7ICsraSkgeworICAgICAgICBpZiAoIXR5cGVBcmd1bWVudHNb
aV0pCisgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIk51bGwgdHlwZSBhcmd1bWVudCBhdCBp
ID0gIiArIGkpOworICAgICAgICBpZiAoIXR5cGVBcmd1bWVudHNbaV0udW5pZnkodW5pZmljYXRp
b25Db250ZXh0LCB0eXBlLnR5cGVBcmd1bWVudHNbaV0pKQorICAgICAgICAgICAgcmV0dXJuIHtm
YWlsdXJlOiBuZXcgVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUodHlwZSwgIkFyZ3VtZW50
ICMiICsgKGkgKyAxKSArICIgIiArICh0eXBlLnR5cGVBcmd1bWVudHNbaV0ubmFtZSA/ICJmb3Ig
cGFyYW1ldGVyICIgKyB0eXBlLnR5cGVBcmd1bWVudHNbaV0ubmFtZSArICIgIiA6ICIiKSArICJk
b2VzIG5vdCBtYXRjaCAocGFzc2VkICIgKyB0eXBlQXJndW1lbnRzW2ldICsgIiwgcmVxdWlyZSAi
ICsgdHlwZS50eXBlQXJndW1lbnRzW2ldLnR5cGUgKyAiKSIpfTsKKyAgICB9CisgICAgbGV0IHZl
cmlmaWNhdGlvblJlc3VsdCA9IHVuaWZpY2F0aW9uQ29udGV4dC52ZXJpZnkoKTsKKyAgICBpZiAo
IXZlcmlmaWNhdGlvblJlc3VsdC5yZXN1bHQpCisgICAgICAgIHJldHVybiB7ZmFpbHVyZTogbmV3
IFR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKHR5cGUsIHZlcmlmaWNhdGlvblJlc3VsdC5y
ZWFzb24pfTsKKworICAgIHJldHVybiB7dHlwZSwgdW5pZmljYXRpb25Db250ZXh0fTsKK30KZGlm
ZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ludHJpbnNpY3MuanMgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzCmluZGV4IDUwZDQwYzBj
MGU0N2UxMTJiYzc0Y2NmY2NiNzA0OTQyNzExNmIwZmIuLmFiOWY0YzdlMjEzMjQ4NzA1ZmM5OWI5
ZThmMDVjMGRiMmNiMjIxYTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL0ludHJpbnNpY3MuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW50
cmluc2ljcy5qcwpAQCAtMzMsMTUgKzMzLDcgQEAgY2xhc3MgSW50cmluc2ljcyB7CiAgICAgICAg
IC8vIHRvIGNhdGNoIHRoZSBpbnRyaW5zaWNzIG11c3QgYmUgYmFzZWQgb24gdGhlIHR5cGUgbmFt
ZXMgdGhhdCBTdGFuZGFyZExpYnJhcnkuanMgdXNlcy4KICAgICAgICAgLy8gRm9yIGV4YW1wbGUs
IGlmIGEgbmF0aXZlIGZ1bmN0aW9uIGlzIGRlY2xhcmVkIHVzaW5nICJpbnQiIHJhdGhlciB0aGFu
ICJpbnQiLCB0aGVuIHdlIG11c3QKICAgICAgICAgLy8gdXNlICJpbnQiIGhlcmUsIHNpbmNlIHdl
IGRvbid0IHlldCBrbm93IHRoYXQgdGhleSBhcmUgdGhlIHNhbWUgdHlwZS4KLSAgICAgICAgCi0g
ICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgdm9pZCIs
Ci0gICAgICAgICAgICB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0aGlzLnZvaWQgPSB0eXBl
OwotICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDA7Ci0gICAgICAgICAgICAgICAgdHlwZS5w
b3B1bGF0ZURlZmF1bHRWYWx1ZSA9ICgpID0+IHsgfTsKLSAgICAgICAgICAgIH0pOwotICAgICAg
ICAKKwogICAgICAgICBmdW5jdGlvbiBpc0JpdHdpc2VFcXVpdmFsZW50KGxlZnQsIHJpZ2h0KQog
ICAgICAgICB7CiAgICAgICAgICAgICBsZXQgZG91YmxlQXJyYXkgPSBuZXcgRmxvYXQ2NEFycmF5
KDEpOwpAQCAtNTYsNTggKzQ4LDgzIEBAIGNsYXNzIEludHJpbnNpY3MgewogICAgICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgICAgIH0KIAorICAgICAgICBmdW5jdGlvbiBjYXN0KHR5cGVkQXJy
YXlDb25zdHJ1Y3RvciwgbnVtYmVyKQorICAgICAgICB7CisgICAgICAgICAgICB2YXIgYXJyYXkg
PSBuZXcgdHlwZWRBcnJheUNvbnN0cnVjdG9yKDEpOworICAgICAgICAgICAgYXJyYXlbMF0gPSBu
dW1iZXI7CisgICAgICAgICAgICByZXR1cm4gYXJyYXlbMF07CisgICAgICAgIH0KKworICAgICAg
ICBmdW5jdGlvbiBiaXR3aXNlQ2FzdCh0eXBlZEFycmF5Q29uc3RydWN0b3IxLCB0eXBlZEFycmF5
Q29uc3RydWN0b3IyLCB2YWx1ZSkKKyAgICAgICAgeworICAgICAgICAgICAgbGV0IHR5cGVkQXJy
YXkxID0gbmV3IHR5cGVkQXJyYXlDb25zdHJ1Y3RvcjEoMSk7CisgICAgICAgICAgICBsZXQgdHlw
ZWRBcnJheTIgPSBuZXcgdHlwZWRBcnJheUNvbnN0cnVjdG9yMih0eXBlZEFycmF5MS5idWZmZXIp
OworICAgICAgICAgICAgdHlwZWRBcnJheTFbMF0gPSB2YWx1ZTsKKyAgICAgICAgICAgIHJldHVy
biB0eXBlZEFycmF5MlswXTsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIGNhc3RUb0hh
bGYobnVtYmVyKQorICAgICAgICB7CisgICAgICAgICAgICAvLyBGSVhNRTogTWFrZSB0aGlzIG1h
dGggb2JleSBJRUVFIDc1NC4KKyAgICAgICAgICAgIGlmIChOdW1iZXIuaXNOYU4obnVtYmVyKSkK
KyAgICAgICAgICAgICAgIHJldHVybiBudW1iZXIKKyAgICAgICAgICAgIGlmIChudW1iZXIgPiA2
NTUwNCkKKyAgICAgICAgICAgICAgICByZXR1cm4gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZOwor
ICAgICAgICAgICAgaWYgKG51bWJlciA8IC02NTUwNCkKKyAgICAgICAgICAgICAgICByZXR1cm4g
TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZOworICAgICAgICAgICAgaWYgKG51bWJlciA+IDAgJiYg
bnVtYmVyIDwgTWF0aC5wb3coMiwgLTI0KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAg
ICAgICAgICAgIGlmIChudW1iZXIgPCAwICYmIG51bWJlciA+IC1NYXRoLnBvdygyLCAtMjQpKQor
ICAgICAgICAgICAgICAgIHJldHVybiAtMDsKKyAgICAgICAgICAgIGxldCBkb3VibGVBcnJheSA9
IG5ldyBGbG9hdDY0QXJyYXkoMSk7CisgICAgICAgICAgICBsZXQgdWludEFycmF5ID0gbmV3IFVp
bnQ4QXJyYXkoZG91YmxlQXJyYXkuYnVmZmVyKTsKKyAgICAgICAgICAgIGRvdWJsZUFycmF5WzBd
ID0gbnVtYmVyOworICAgICAgICAgICAgbGV0IHNpZ24gPSB1aW50QXJyYXlbN10gJiAweDgwOwor
ICAgICAgICAgICAgbGV0IGV4cG9uZW50ID0gKCh1aW50QXJyYXlbN10gJiAweDdmKSA8PCA0KSB8
ICgodWludEFycmF5WzZdICYgMHhmMCkgPj4+IDQpOworICAgICAgICAgICAgbGV0IHNpZ25pZmlj
YW5kID0gKCh1aW50QXJyYXlbNl0gJiAweDBmKSA8PCA2KSB8ICgodWludEFycmF5WzVdICYgMHhm
YykgPj4+IDIpOworCisgICAgICAgICAgICBpZiAoKGV4cG9uZW50IC0gMTAyMykgPCAtMTQpIHsK
KyAgICAgICAgICAgICAgICBleHBvbmVudCA9IDA7CisgICAgICAgICAgICAgICAgc2lnbmlmaWNh
bmQgPSAoTWF0aC5hYnMobnVtYmVyKSAqIE1hdGgucG93KDIsIDI0KSkgPj4+IDA7CisgICAgICAg
ICAgICAgICAgbGV0IHZhbHVlID0gTWF0aC5wb3coMiwgLTE0KSAqIHNpZ25pZmljYW5kIC8gMTAy
NDsKKyAgICAgICAgICAgICAgICBpZiAoc2lnbiAhPSAwKQorICAgICAgICAgICAgICAgICAgICB2
YWx1ZSAqPSAtMTsKKyAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7CisgICAgICAgICAgICB9
CisKKyAgICAgICAgICAgIGRvdWJsZUFycmF5WzBdID0gMDsKKworICAgICAgICAgICAgdWludEFy
cmF5WzddIHw9IHNpZ247CisgICAgICAgICAgICB1aW50QXJyYXlbN10gfD0gKGV4cG9uZW50ID4+
PiA0KTsKKyAgICAgICAgICAgIHVpbnRBcnJheVs2XSB8PSAoKGV4cG9uZW50IDw8IDQpICYgMHhm
MCk7CisgICAgICAgICAgICB1aW50QXJyYXlbNl0gfD0gKHNpZ25pZmljYW5kID4+PiA2KTsKKyAg
ICAgICAgICAgIHVpbnRBcnJheVs1XSB8PSAoKHNpZ25pZmljYW5kIDw8IDIpICYgMHhmYyk7CisK
KyAgICAgICAgICAgIHJldHVybiBkb3VibGVBcnJheVswXTsKKyAgICAgICAgfQorCiAgICAgICAg
IHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgaW50IiwKKyAgICAg
ICAgICAgICJuYXRpdmUgdHlwZWRlZiB2b2lkIiwKICAgICAgICAgICAgIHR5cGUgPT4gewotICAg
ICAgICAgICAgICAgIHRoaXMuaW50ID0gdHlwZTsKLSAgICAgICAgICAgICAgICB0eXBlLmlzUHJp
bWl0aXZlID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmlzSW50ID0gdHJ1ZTsKLSAgICAg
ICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmlz
U2lnbmVkID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2VudCA9IHZhbHVl
ID0+IGlzQml0d2lzZUVxdWl2YWxlbnQodmFsdWUgfCAwLCB2YWx1ZSk7Ci0gICAgICAgICAgICAg
ICAgdHlwZS5zaXplID0gMTsKLSAgICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7
Ci0gICAgICAgICAgICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0gKG9yaWdpbiwgdmFsdWUpID0+
IEludExpdGVyYWwud2l0aFR5cGUob3JpZ2luLCB2YWx1ZSB8IDAsIHR5cGUpOwotICAgICAgICAg
ICAgICAgIHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiAodmFsdWUgKyAxKSB8IDA7Ci0g
ICAgICAgICAgICAgICAgdHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09PSBiOwotICAg
ICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVyLCBvZmZzZXQp
ID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCAwKTsKLSAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZh
bHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSB8IDA7Ci0gICAgICAgICAgICAgICAg
dHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlIHwgMDsKLSAg
ICAgICAgICAgICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1bmN0aW9uKigpIHsgCi0gICAgICAgICAg
ICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDB4ZmZmZmZmZmY7ICsraSkgewotICAgICAg
ICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gaSB8IDA7Ci0gICAgICAgICAgICAgICAgICAg
ICAgICB5aWVsZCB7dmFsdWU6IHZhbHVlLCBuYW1lOiB2YWx1ZX07Ci0gICAgICAgICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgICAgIHRoaXMudm9pZCA9IHR5
cGU7CisgICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMDsKKyAgICAgICAgICAgICAgICB0eXBl
LnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKCkgPT4geyB9OwogICAgICAgICAgICAgfSk7CiAKICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiB1aW50IiwK
KyAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBib29sIiwKICAgICAgICAgICAgIHR5cGUgPT4g
ewotICAgICAgICAgICAgICAgIHRoaXMudWludCA9IHR5cGU7CisgICAgICAgICAgICAgICAgdGhp
cy5ib29sID0gdHlwZTsKICAgICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsK
LSAgICAgICAgICAgICAgICB0eXBlLmlzSW50ID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBl
LmlzTnVtYmVyID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmlzU2lnbmVkID0gZmFsc2U7
Ci0gICAgICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBpc0JpdHdpc2VF
cXVpdmFsZW50KHZhbHVlID4+PiAwLCB2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdHlwZS5zaXpl
ID0gMTsKLSAgICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7Ci0gICAgICAgICAg
ICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0gKG9yaWdpbiwgdmFsdWUpID0+IEludExpdGVyYWwu
d2l0aFR5cGUob3JpZ2luLCB2YWx1ZSA+Pj4gMCwgdHlwZSk7Ci0gICAgICAgICAgICAgICAgdHlw
ZS5zdWNjZXNzb3JWYWx1ZSA9IHZhbHVlID0+ICh2YWx1ZSArIDEpID4+PiAwOwotICAgICAgICAg
ICAgICAgIHR5cGUudmFsdWVzRXF1YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKLSAgICAgICAgICAg
ICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZm
ZXIuc2V0KG9mZnNldCwgMCk7Ci0gICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21J
bnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWUgPj4+IDA7Ci0gICAgICAgICAgICAgICAgdHlwZS5m
b3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlID4+PiAwOwotICAgICAg
ICAgICAgICAgIHR5cGUuYWxsVmFsdWVzID0gZnVuY3Rpb24qKCkgeyAKLSAgICAgICAgICAgICAg
ICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPD0gMHhmZmZmZmZmZjsgKytpKQotICAgICAgICAgICAg
ICAgICAgICAgICAgeWllbGQge3ZhbHVlOiBpLCBuYW1lOiBpfTsKLSAgICAgICAgICAgICAgICB9
OworICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVyLCBv
ZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCBmYWxzZSk7CiAgICAgICAgICAgICB9KTsKIAog
ICAgICAgICB0aGlzLl9tYXAuc2V0KAogICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIHVjaGFy
IiwKICAgICAgICAgICAgIHR5cGUgPT4gewogICAgICAgICAgICAgICAgIHRoaXMudWNoYXIgPSB0
eXBlOworICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOwogICAgICAgICAg
ICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOwogICAgICAgICAgICAgICAgIHR5cGUuaXNOdW1iZXIg
PSB0cnVlOwogICAgICAgICAgICAgICAgIHR5cGUuaXNTaWduZWQgPSBmYWxzZTsKQEAgLTEyNiw0
MTkgKzE0Myw4NDcgQEAgY2xhc3MgSW50cmluc2ljcyB7CiAgICAgICAgICAgICAgICAgfTsKICAg
ICAgICAgICAgIH0pOwogCisKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAg
ICAgIm5hdGl2ZSB0eXBlZGVmIHVzaG9ydCIsCisgICAgICAgICAgICAgdHlwZSA9PiB7CisgICAg
ICAgICAgICAgICAgIHRoaXMudXNob3J0ID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5p
c1ByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOwor
ICAgICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAg
dHlwZS5pc1NpZ25lZCA9IGZhbHNlOworICAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2Vu
dCA9IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQodmFsdWUgJiAweGZmZmYsIHZhbHVlKTsK
KyAgICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKKyAgICAgICAgICAgICAgICAgdHlwZS5k
ZWZhdWx0VmFsdWUgPSAwOworICAgICAgICAgICAgICAgICB0eXBlLmNyZWF0ZUxpdGVyYWwgPSAo
b3JpZ2luLCB2YWx1ZSkgPT4gSW50TGl0ZXJhbC53aXRoVHlwZShvcmlnaW4sIHZhbHVlICYgMHhm
ZmZmLCB0eXBlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5zdWNjZXNzb3JWYWx1ZSA9IHZhbHVl
ID0+ICh2YWx1ZSArIDEpICYgMHhmZmZmOworICAgICAgICAgICAgICAgICB0eXBlLnZhbHVlc0Vx
dWFsID0gKGEsIGIpID0+IGEgPT09IGI7CisgICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVE
ZWZhdWx0VmFsdWUgPSAoYnVmZmVyLCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCAwKTsK
KyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUg
PT4gdmFsdWUgJiAweGZmZmY7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9t
VWludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSAmIDB4ZmZmZjsKKyAgICAgICAgICAgICAgICAg
dHlwZS5hbGxWYWx1ZXMgPSBmdW5jdGlvbiooKSB7CisgICAgICAgICAgICAgICAgICAgICBmb3Ig
KGxldCBpID0gMDsgaSA8PSAweGZmZmY7ICsraSkKKyAgICAgICAgICAgICAgICAgICAgICAgICB5
aWVsZCB7dmFsdWU6IGksIG5hbWU6IGl9OworICAgICAgICAgICAgICAgICB9OworICAgICAgICAg
ICAgIH0pOworCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHR5
cGVkZWYgZmxvYXQiLAotICAgICAgICAgICAgdHlwZSA9PiB7Ci0gICAgICAgICAgICAgICAgdGhp
cy5mbG9hdCA9IHR5cGU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7
Ci0gICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKLSAgICAgICAgICAgICAgICB0eXBlLmlz
RmxvYXRpbmcgPSB0cnVlOwotICAgICAgICAgICAgICAgIHR5cGUuaXNOdW1iZXIgPSB0cnVlOwot
ICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1
aXZhbGVudChNYXRoLmZyb3VuZCh2YWx1ZSksIHZhbHVlKTsKLSAgICAgICAgICAgICAgICB0eXBl
LnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9m
ZnNldCwgMCk7Ci0gICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFs
ID0gdmFsdWUgPT4gdmFsdWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21V
aW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOwotICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0
VmFsdWVGcm9tRmxvYXRMaXRlcmFsID0gdmFsdWUgPT4gTWF0aC5mcm91bmQodmFsdWUpOwotICAg
ICAgICAgICAgfSk7CisgICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIHVpbnQiLAorICAgICAg
ICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLnVpbnQgPSB0eXBlOworICAg
ICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAg
dHlwZS5pc0ludCA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNOdW1iZXIgPSB0cnVl
OworICAgICAgICAgICAgICAgICB0eXBlLmlzU2lnbmVkID0gZmFsc2U7CisgICAgICAgICAgICAg
ICAgIHR5cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudCh2YWx1
ZSA+Pj4gMCwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOworICAgICAg
ICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7CisgICAgICAgICAgICAgICAgIHR5cGUu
Y3JlYXRlTGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9y
aWdpbiwgdmFsdWUgPj4+IDAsIHR5cGUpOworICAgICAgICAgICAgICAgICB0eXBlLnN1Y2Nlc3Nv
clZhbHVlID0gdmFsdWUgPT4gKHZhbHVlICsgMSkgPj4+IDA7CisgICAgICAgICAgICAgICAgIHR5
cGUudmFsdWVzRXF1YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChv
ZmZzZXQsIDApOworICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUludExpdGVy
YWwgPSB2YWx1ZSA9PiB2YWx1ZSA+Pj4gMDsKKyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRW
YWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlID4+PiAwOworICAgICAgICAgICAg
ICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1bmN0aW9uKigpIHsKKyAgICAgICAgICAgICAgICAgICAg
IGZvciAobGV0IGkgPSAwOyBpIDw9IDB4ZmZmZmZmZmY7ICsraSkKKyAgICAgICAgICAgICAgICAg
ICAgICAgICB5aWVsZCB7dmFsdWU6IGksIG5hbWU6IGl9OworICAgICAgICAgICAgICAgICB9Owor
ICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAi
bmF0aXZlIHR5cGVkZWYgYm9vbCIsCi0gICAgICAgICAgICB0eXBlID0+IHsKLSAgICAgICAgICAg
ICAgICB0aGlzLmJvb2wgPSB0eXBlOwotICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUg
PSB0cnVlOwotICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7Ci0gICAgICAgICAgICAgICAg
dHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNl
dChvZmZzZXQsIGZhbHNlKTsKLSAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICJuYXRpdmUg
dHlwZWRlZiBjaGFyIiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAg
dGhpcy5jaGFyID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRy
dWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOworICAgICAgICAgICAgICAg
ICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1NpZ25lZCA9
IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNC
aXR3aXNlRXF1aXZhbGVudChjYXN0KEludDhBcnJheSwgdmFsdWUpLCB2YWx1ZSk7CisgICAgICAg
ICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7CisgICAgICAgICAgICAgICAgIHR5cGUuZGVmYXVsdFZh
bHVlID0gMDsKKyAgICAgICAgICAgICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0gKG9yaWdpbiwg
dmFsdWUpID0+IEludExpdGVyYWwud2l0aFR5cGUob3JpZ2luLCBjYXN0KEludDhBcnJheSwgdmFs
dWUpLCB0eXBlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5zdWNjZXNzb3JWYWx1ZSA9IHZhbHVl
ID0+IGNhc3QoSW50OEFycmF5LCB2YWx1ZSArIDEpOworICAgICAgICAgICAgICAgICB0eXBlLnZh
bHVlc0VxdWFsID0gKGEsIGIpID0+IGEgPT09IGI7CisgICAgICAgICAgICAgICAgIHR5cGUucG9w
dWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVyLCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0
LCAwKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFsID0g
dmFsdWUgPT4gY2FzdChJbnQ4QXJyYXksIHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5m
b3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IGNhc3QoSW50OEFycmF5LCB2YWx1
ZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuYWxsVmFsdWVzID0gZnVuY3Rpb24qKCkgeworICAg
ICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPD0gMHhmZjsgKytpKSB7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gY2FzdChJbnQ4QXJyYXksIGkpOworICAg
ICAgICAgICAgICAgICAgICAgICAgIHlpZWxkIHt2YWx1ZTogdmFsdWUsIG5hbWU6IHZhbHVlfTsK
KyAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAg
ICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlw
ZWRlZiBzaG9ydCIsCisgICAgICAgICAgICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgIHRo
aXMuc2hvcnQgPSB0eXBlOworICAgICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1
ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc0ludCA9IHRydWU7CisgICAgICAgICAgICAgICAg
IHR5cGUuaXNOdW1iZXIgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzU2lnbmVkID0g
dHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBpc0Jp
dHdpc2VFcXVpdmFsZW50KGNhc3QoSW50MTZBcnJheSwgdmFsdWUpLCB2YWx1ZSk7CisgICAgICAg
ICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7CisgICAgICAgICAgICAgICAgIHR5cGUuZGVmYXVsdFZh
bHVlID0gMDsKKyAgICAgICAgICAgICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0gKG9yaWdpbiwg
dmFsdWUpID0+IEludExpdGVyYWwud2l0aFR5cGUob3JpZ2luLCBjYXN0KEludDE2QXJyYXksIHZh
bHVlKSwgdHlwZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1
ZSA9PiBjYXN0KEludDE2QXJyYXksIHZhbHVlICsgMSk7CisgICAgICAgICAgICAgICAgIHR5cGUu
dmFsdWVzRXF1YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKKyAgICAgICAgICAgICAgICAgdHlwZS5w
b3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZz
ZXQsIDApOworICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUludExpdGVyYWwg
PSB2YWx1ZSA9PiBjYXN0KEludDE2QXJyYXksIHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IGNhc3QoSW50MTZBcnJheSwg
dmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1bmN0aW9uKigpIHsK
KyAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDB4ZmZmZjsgKytpKSB7
CisgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gY2FzdChJbnQxNkFycmF5LCBp
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICB5aWVsZCB7dmFsdWU6IHZhbHVlLCBuYW1lOiB2
YWx1ZX07CisgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgIH07CisgICAg
ICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAibmF0
aXZlIHR5cGVkZWYgaW50IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAg
ICAgdGhpcy5pbnQgPSB0eXBlOworICAgICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0g
dHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc0ludCA9IHRydWU7CisgICAgICAgICAgICAg
ICAgIHR5cGUuaXNOdW1iZXIgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzU2lnbmVk
ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBp
c0JpdHdpc2VFcXVpdmFsZW50KHZhbHVlIHwgMCwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0
eXBlLnNpemUgPSAxOworICAgICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7Cisg
ICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRlTGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJ
bnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwgdmFsdWUgfCAwLCB0eXBlKTsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5zdWNjZXNzb3JWYWx1ZSA9IHZhbHVlID0+ICh2YWx1ZSArIDEpIHwgMDsKKyAg
ICAgICAgICAgICAgICAgdHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09PSBiOworICAg
ICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0
KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0
VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlIHwgMDsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlIHwgMDsK
KyAgICAgICAgICAgICAgICAgdHlwZS5hbGxWYWx1ZXMgPSBmdW5jdGlvbiooKSB7CisgICAgICAg
ICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSAweGZmZmZmZmZmOyArK2kpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBpIHwgMDsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICB5aWVsZCB7dmFsdWU6IHZhbHVlLCBuYW1lOiB2YWx1ZX07CisgICAgICAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgfSk7CisKKyAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGhhbGYi
LAorICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLmhhbGYgPSB0
eXBlOworICAgICAgICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsKKyAgICAgICAg
ICAgICAgICAgdHlwZS5zaXplID0gMTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc0Zsb2F0aW5n
ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7CisgICAgICAg
ICAgICAgICAgIHR5cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVu
dChjYXN0VG9IYWxmKHZhbHVlKSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLnBvcHVs
YXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwg
MCk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZh
bHVlID0+IHZhbHVlOworICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbVVpbnRM
aXRlcmFsID0gdmFsdWUgPT4gdmFsdWU7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFs
dWVGcm9tRmxvYXRMaXRlcmFsID0gdmFsdWUgPT4gY2FzdFRvSGFsZih2YWx1ZSk7CisgICAgICAg
ICAgICAgfSk7CisKKyAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgIm5hdGl2
ZSB0eXBlZGVmIGZsb2F0IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAg
ICAgdGhpcy5mbG9hdCA9IHR5cGU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUg
PSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOworICAgICAgICAgICAgICAg
ICB0eXBlLmlzRmxvYXRpbmcgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVy
ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBp
c0JpdHdpc2VFcXVpdmFsZW50KE1hdGguZnJvdW5kKHZhbHVlKSwgdmFsdWUpOworICAgICAgICAg
ICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBi
dWZmZXIuc2V0KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVG
cm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOworICAgICAgICAgICAgICAgICB0eXBlLmZv
cm1hdFZhbHVlRnJvbVVpbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWU7CisgICAgICAgICAgICAg
ICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tRmxvYXRMaXRlcmFsID0gdmFsdWUgPT4gTWF0aC5mcm91
bmQodmFsdWUpOworICAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisg
ICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGF0b21pY19pbnQiLAorICAgICAgICAgICAgIHR5
cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLmF0b21pY19pbnQgPSB0eXBlOworICAgICAg
ICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgIm5hdGl2
ZSB0eXBlZGVmIGF0b21pY191aW50IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAg
ICAgICAgICAgdGhpcy5hdG9taWNfdWludCA9IHR5cGU7CisgICAgICAgICAgICAgfSk7CiAKICAg
ICAgICAgZm9yIChsZXQgdmVjdG9yVHlwZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMpIHsKLSAgICAg
ICAgICAgIGZvciAobGV0IHZlY3RvclNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVzKQotICAgICAg
ICAgICAgICAgIHRoaXMuX21hcC5zZXQoYG5hdGl2ZSB0eXBlZGVmIHZlY3Rvcjwke3ZlY3RvclR5
cGV9LCAke3ZlY3RvclNpemV9PmAsIHR5cGUgPT4ge30pOworICAgICAgICAgICAgZm9yIChsZXQg
dmVjdG9yU2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpIHsKKyAgICAgICAgICAgICAgICB0aGlz
Ll9tYXAuc2V0KGBuYXRpdmUgdHlwZWRlZiB2ZWN0b3I8JHt2ZWN0b3JUeXBlfSwgJHt2ZWN0b3JT
aXplfT5gLCB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAgICAgdGhpc1tgdmVjdG9yPCR7dmVj
dG9yVHlwZX0sICR7dmVjdG9yU2l6ZX0+YF0gPSB0eXBlOworICAgICAgICAgICAgICAgIH0pOwor
ICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIAorCisgICAgICAgIGZvciAobGV0IHR5
cGUgb2YgWyJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIGZvciAobGV0IGhlaWdodCA9
IDI7IGhlaWdodCA8PSA0OyArK2hlaWdodCkgeworICAgICAgICAgICAgICAgIGZvciAobGV0IHdp
ZHRoID0gMjsgd2lkdGggPD0gNDsgKyt3aWR0aCkgeworICAgICAgICAgICAgICAgICAgICB0aGlz
Ll9tYXAuc2V0KGBuYXRpdmUgdHlwZWRlZiBtYXRyaXg8JHt0eXBlfSwgJHtoZWlnaHR9LCAke3dp
ZHRofT5gLCB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNbYG1hdHJpeDwk
e3R5cGV9LCAke2hlaWdodH0sICR7d2lkdGh9PmBdID0gdHlwZTsKKyAgICAgICAgICAgICAgICAg
ICAgfSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisKICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgaW50KHVp
bnQpIiwKLSAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgfCAwKTsK
KyAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBzYW1wbGVyIiwKKyAgICAgICAgICAgIHR5cGUg
PT4geworICAgICAgICAgICAgICAgIHRoaXMuc2FtcGxlciA9IHR5cGU7CisgICAgICAgICAgICAg
ICAgLy8gRklYTUU6IEZpZ3VyZSBvdXQgd2hhdCB0byBwdXQgaGVyZS4KICAgICAgICAgICAgIH0p
OwotICAgICAgICAKKworICAgICAgICBmb3IgKGxldCB0ZXh0dXJlVHlwZSBvZiBbIlRleHR1cmUx
RCIsICJSV1RleHR1cmUxRCIsICJUZXh0dXJlMURBcnJheSIsICJSV1RleHR1cmUxREFycmF5Iiwg
IlRleHR1cmUyRCIsICJSV1RleHR1cmUyRCIsICJUZXh0dXJlMkRBcnJheSIsICJSV1RleHR1cmUy
REFycmF5IiwgIlRleHR1cmUzRCIsICJSV1RleHR1cmUzRCIsICJUZXh0dXJlQ3ViZSJdKSB7Cisg
ICAgICAgICAgICBmb3IgKGxldCB0eXBlQXJndW1lbnQgb2YgWyJib29sIiwgInVjaGFyIiwgInVz
aG9ydCIsICJ1aW50IiwgImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiLCAiZmxvYXQiXSkg
eworICAgICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgICAgIGBu
YXRpdmUgdHlwZWRlZiAke3RleHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0+YCwKKyAgICAgICAg
ICAgICAgICAgICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgICAgICAgICB0aGlzW2Ake3Rl
eHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0+YF0gPSB0eXBlOworICAgICAgICAgICAgICAgICAg
ICB9KTsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMjsgaSA8PSA0OyArK2kpIHsKKyAg
ICAgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICAgICAgICAg
IGBuYXRpdmUgdHlwZWRlZiAke3RleHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0ke2l9PmAsCisg
ICAgICAgICAgICAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB0aGlzW2Ake3RleHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0ke2l9PmBdID0gdHlwZTsK
KyAgICAgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHRleHR1cmVUeXBlIG9mIFsiVGV4
dHVyZURlcHRoMkQiLCAiUldUZXh0dXJlRGVwdGgyRCIsICJUZXh0dXJlRGVwdGgyREFycmF5Iiwg
IlJXVGV4dHVyZURlcHRoMkRBcnJheSIsICJUZXh0dXJlRGVwdGhDdWJlIl0pIHsKKyAgICAgICAg
ICAgIGZvciAobGV0IHR5cGVBcmd1bWVudCBvZiBbImZsb2F0IiwgImhhbGYiXSkgeworICAgICAg
ICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgICAgIGBuYXRpdmUgdHlw
ZWRlZiAke3RleHR1cmVUeXBlfTwke3R5cGVBcmd1bWVudH0+YCwKKyAgICAgICAgICAgICAgICAg
ICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgICAgICAgICB0aGlzW2Ake3RleHR1cmVUeXBl
fTwke3R5cGVBcmd1bWVudH0+YF0gPSB0eXBlOworICAgICAgICAgICAgICAgICAgICB9KTsKKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUg
b2YgWyJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNob3J0IiwgImludCIsICJoYWxmIiwgImZs
b2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5h
dGl2ZSBvcGVyYXRvciB1Y2hhcigke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAg
ZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgJiAweGZmKTsKKyAgICAgICAgICAg
ICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2Yg
WyJ1Y2hhciIsICJ1aW50IiwgImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiLCAiZmxvYXQi
XSkgeworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZl
IG9wZXJhdG9yIHVzaG9ydCgke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVu
YyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgJiAweGZmZmYpOworICAgICAgICAgICAg
ICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBb
InVjaGFyIiwgInVzaG9ydCIsICJjaGFyIiwgInNob3J0IiwgImludCIsICJoYWxmIiwgImZsb2F0
Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2
ZSBvcGVyYXRvciB1aW50KCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5j
ID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVd
KSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAg
fSk7CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNo
YXIiLCAidXNob3J0IiwgInVpbnQiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiLCAiZmxvYXQiXSkg
eworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9w
ZXJhdG9yIGNoYXIoJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4g
eworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+
IEVQdHIuYm94KGNhc3QoSW50OEFycmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAg
ICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBv
ZiBbInVjaGFyIiwgInVzaG9ydCIsICJ1aW50IiwgImNoYXIiLCAiaW50IiwgImhhbGYiLCAiZmxv
YXQiXSkgeworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0
aXZlIG9wZXJhdG9yIHNob3J0KCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBm
dW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PiBFUHRyLmJveChjYXN0KEludDE2QXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7Cisg
ICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCBwcmltaXRp
dmVUeXBlIG9mIFsidWNoYXIiLCAidXNob3J0IiwgInVpbnQiLCAiY2hhciIsICJzaG9ydCIsICJo
YWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAg
ICAgICAgYG5hdGl2ZSBvcGVyYXRvciBpbnQoJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAg
ICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KGNhc3QoSW50MzJBcnJheSwgdmFsdWUubG9hZFZhbHVl
KCkpKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0
IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNo
b3J0IiwgImludCIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAg
ICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgaGFsZigke3ByaW1pdGl2ZVR5cGV9KWAsCisg
ICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goY2FzdFRvSGFsZih2YWx1ZS5sb2FkVmFs
dWUoKSkpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9yIChs
ZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIsICJ1aW50IiwgImNoYXIiLCAi
c2hvcnQiLCAiaW50IiwgImhhbGYiXSkgeworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAg
ICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIGZsb2F0KCR7cHJpbWl0aXZlVHlwZX0pYCwK
KyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChNYXRoLmZyb3VuZCh2YWx1ZS5sb2Fk
VmFsdWUoKSkpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgaW50KHVjaGFyKSIsCisg
ICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIGludChhdG9taWNfaW50KWAsCiAgICAgICAgICAg
ICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1
ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpIHwgMCk7CisgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFs
dWUoKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KSIsCisgICAgICAgICAg
ICBgbmF0aXZlIG9wZXJhdG9yIHVpbnQoYXRvbWljX3VpbnQpYCwKICAgICAgICAgICAgIGZ1bmMg
PT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4g
RVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgfCAwKTsKKyAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpKTsK
ICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAg
ICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1aW50KGludCkiLAorICAgICAgICAgICAgIm5hdGl2
ZSBib29sIG9wZXJhdG9yPT0oYm9vbCxib29sKSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94
KHZhbHVlLmxvYWRWYWx1ZSgpID4+PiAwKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkpOwogICAgICAgICAgICAgfSk7
Ci0gICAgICAgIAorCisgICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1aW50Iiwg
ImludCIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAg
ICAgICAgIGBuYXRpdmUgYm9vbCBvcGVyYXRvcj09KCR7cHJpbWl0aXZlVHlwZX0sJHtwcmltaXRp
dmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0LmxvYWRWYWx1ZSgp
KTsKKyAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAg
ICAgICAgICAgICAgICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I8KCR7cHJpbWl0aXZlVHlwZX0sJHtw
cmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpIDwgcmlnaHQubG9hZFZh
bHVlKCkpOworICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0
KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgYm9vbCBvcGVyYXRvcjw9KCR7cHJpbWl0aXZlVHlw
ZX0sJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Cisg
ICAgICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpIDw9IHJpZ2h0
LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgdGhpcy5f
bWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I+KCR7cHJpbWl0
aXZlVHlwZX0sJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4gewor
ICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0p
ID0+CisgICAgICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID4g
cmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICB0
aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgYm9vbCBvcGVyYXRvcj49KCR7
cHJpbWl0aXZlVHlwZX0sJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMg
PT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCBy
aWdodF0pID0+CisgICAgICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1
ZSgpID49IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAg
fQorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9y
IHVpbnQodWNoYXIpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yLShpbnQpIiwK
ICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgPj4+IDApOworICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAg
ICAgICAgICAgICAgRVB0ci5ib3goKC12YWx1ZS5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAg
ICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAg
Im5hdGl2ZSBvcGVyYXRvciB1aW50KGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0
IG9wZXJhdG9yLShmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2Fk
VmFsdWUoKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
dmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZCgtdmFs
dWUubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0
aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hhcihpbnQpIiwK
KyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yKyhpbnQsaW50KSIsCiAgICAgICAgICAg
ICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1
ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpICYgMHhmZik7CisgICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAg
ICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8
IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQo
Ci0gICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9yIHVjaGFyKHVpbnQpIiwKKyAgICAgICAgICAg
ICJuYXRpdmUgaW50IG9wZXJhdG9yLShpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsK
LSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIu
Ym94KHZhbHVlLmxvYWRWYWx1ZSgpICYgMHhmZik7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRy
LmJveCgobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAg
ICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAg
ICAibmF0aXZlIG9wZXJhdG9yIHVjaGFyKGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGlu
dCBvcGVyYXRvciooaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5s
b2FkVmFsdWUoKSAmIDB4ZmYpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24g
PSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQu
bG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwot
ICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBv
cGVyYXRvciBmbG9hdChpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yLyhp
bnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KE1hdGguZnJvdW5kKHZhbHVlLmxv
YWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVm
dCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFs
dWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAg
IAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9y
IGZsb2F0KHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcisodWludCx1
aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxl
bWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KE1hdGguZnJvdW5kKHZhbHVlLmxvYWRW
YWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwg
cmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUo
KSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAg
CisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3Ig
ZmxvYXQodWNoYXIpIiwKKyAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvci0odWludCx1
aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxl
bWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KE1hdGguZnJvdW5kKHZhbHVlLmxvYWRW
YWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwg
cmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUo
KSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAg
CisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJh
dG9yKyhpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3IqKHVpbnQs
dWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRy
LmJveCgobGVmdC5sb2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOworICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAqIHJpZ2h0LmxvYWRWYWx1
ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5f
bWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcisodWludCx1aW50KSIs
CisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3IvKHVpbnQsdWludCkiLAogICAgICAg
ICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
bGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2Fk
VmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIC8gcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsK
ICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAogICAg
ICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvcisoZmxvYXQsZmxvYXQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQo
bGVmdC5sb2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9KTsK
LSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
aW50IG9wZXJhdG9yLShpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJh
dG9yLShmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAg
ICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8
IDApOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChsZWZ0LmxvYWRW
YWx1ZSgpIC0gcmlnaHQubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAK
KwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJh
dG9yLSh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgb3BlcmF0b3IqKGZs
b2F0LGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIC0gcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsK
KyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQobGVmdC5sb2FkVmFsdWUo
KSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgb3BlcmF0b3It
KGZsb2F0LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yLyhmbG9h
dCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBF
UHRyLmJveChNYXRoLmZyb3VuZChsZWZ0LmxvYWRWYWx1ZSgpIC0gcmlnaHQubG9hZFZhbHVlKCkp
KTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQobGVmdC5sb2FkVmFs
dWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9y
KihpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvciYoaW50LGludCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PiB7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiBF
UHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwotICAg
ICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
bGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2Fk
VmFsdWUoKSAmIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHVpbnQg
b3BlcmF0b3IqKHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3J8
KGludCxpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSB8IHJpZ2h0Lmxv
YWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRo
aXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yKihmbG9hdCxm
bG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3JeKGludCxpbnQpIiwKICAg
ICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24g
PSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5m
cm91bmQobGVmdC5sb2FkVmFsdWUoKSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIF4gcmlnaHQubG9hZFZhbHVlKCkp
IHwgMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yLyhpbnQsaW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGludCBvcGVyYXRvcn4oaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsK
LSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+
Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIC8gcmlnaHQu
bG9hZFZhbHVlKCkpIHwgMCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbdmFsdWVdKSA9PiBFUHRyLmJveCgofnZhbHVlLmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAg
ICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAg
ICAibmF0aXZlIHVpbnQgb3BlcmF0b3IvKHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2
ZSBpbnQgb3BlcmF0b3I8PChpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRW
YWx1ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRW
YWx1ZSgpIDw8IHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBv
cGVyYXRvciYoaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3I+Pihp
bnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBF
UHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpICYgcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSA+PiByaWdodC5sb2FkVmFsdWUo
KSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAu
c2V0KAogICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yJih1aW50LHVpbnQpIiwKICAg
ICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24g
PSAoW2xlZnQsIHJpZ2h0XSkgPT4KICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQu
bG9hZFZhbHVlKCkgJiByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7
Ci0gICAgICAgIAotICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBp
bnQgb3BlcmF0b3J8KGludCxpbnQpIiwKLSAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAg
ICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSB8IHJpZ2h0LmxvYWRWYWx1ZSgp
KTsKLSAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAog
ICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yfCh1aW50LHVpbnQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZh
bHVlKCkgfCByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIAotICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3Bl
cmF0b3JeKGludCxpbnQpIiwKLSAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSBeIHJpZ2h0LmxvYWRWYWx1ZSgpKTsKLSAg
ICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAogICAgICAg
ICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yXih1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1
bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJp
Z2h0XSkgPT4KICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkg
XiByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAor
CiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRv
cjw8KGludCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3J+KHVpbnQp
IiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50
YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
bGVmdC5sb2FkVmFsdWUoKSA8PCByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgofnZhbHVlLmxvYWRW
YWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcjw8KHVpbnQsdWlu
dCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgogICAgICAgICAgICAgICAgICAgICBFUHRyLmJv
eCgobGVmdC5sb2FkVmFsdWUoKSA8PCByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAg
ICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAg
ICAibmF0aXZlIGludCBvcGVyYXRvcj4+KGludCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZl
IHVpbnQgb3BlcmF0b3I+Pih1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAg
ICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+PiByaWdodC5sb2Fk
VmFsdWUoKSk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgp
ID4+PiByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAg
IAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHVpbnQgb3Bl
cmF0b3I+Pih1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgY29zKGZsb2F0
KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KGxlZnQubG9hZFZhbHVlKCkgPj4+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguY29zKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAg
ICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIGludCBvcGVyYXRvcn4oaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZs
b2F0IHNpbihmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh+dmFsdWUubG9hZFZh
bHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkg
PT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5zaW4odmFs
dWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAg
dGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcn4odWludCki
LAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCB0YW4oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1
bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkg
PT4gRVB0ci5ib3goKH52YWx1ZS5sb2FkVmFsdWUoKSkgPj4+IDApOworICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC50YW4odmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAg
ICAgICJuYXRpdmUgZmxvYXQgb3BlcmF0b3IvKGZsb2F0LGZsb2F0KSIsCisgICAgICAgICAgICAi
bmF0aXZlIGZsb2F0IGFjb3MoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAg
ICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQobGVmdC5sb2FkVmFsdWUoKSAvIHJp
Z2h0LmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChN
YXRoLmFjb3ModmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAg
CisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVy
YXRvcj09KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgYXNpbihmbG9hdCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChs
ZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQ
dHIuYm94KE1hdGguZnJvdW5kKE1hdGguYXNpbih2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAg
ICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAg
ICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPT0odWludCx1aW50KSIsCisgICAgICAgICAgICAibmF0
aXZlIGZsb2F0IGF0YW4oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAg
ICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA9PSByaWdodC5sb2FkVmFsdWUo
KSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9Pgor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmF0YW4odmFsdWUu
bG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KGJvb2wsYm9v
bCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBjb3NoKGZsb2F0KSIsCiAgICAgICAgICAg
ICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0
LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVl
KCkgPT0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50
YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5m
cm91bmQoTWF0aC5jb3NoKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0g
ICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJv
b2wgb3BlcmF0b3I9PShmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBz
aW5oKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5zaW5oKHZhbHVlLmxvYWRWYWx1ZSgp
KSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQo
Ci0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCxpbnQpIiwKKyAgICAgICAg
ICAgICJuYXRpdmUgZmxvYXQgdGFuaChmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0g
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9Pgot
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpIDwgcmlnaHQubG9h
ZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC50YW5o
KHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAg
ICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8KHVp
bnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBjZWlsKGZsb2F0KSIsCiAgICAg
ICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9h
ZFZhbHVlKCkgPCByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChN
YXRoLmZyb3VuZChNYXRoLmNlaWwodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9
KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRp
dmUgYm9vbCBvcGVyYXRvcjwoZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxv
YXQgZXhwKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAg
ICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPCByaWdodC5sb2FkVmFsdWUoKSk7CisgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmV4cCh2YWx1ZS5sb2FkVmFsdWUo
KSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPD0oaW50LGludCkiLAorICAgICAg
ICAgICAgIm5hdGl2ZSBmbG9hdCBmbG9vcihmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7
Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9
PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpIDw9IHJpZ2h0
LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgu
Zmxvb3IodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRv
cjw9KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBsb2coZmxvYXQpIiwK
ICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVm
dC5sb2FkVmFsdWUoKSA8PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVu
Yy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRy
LmJveChNYXRoLmZyb3VuZChNYXRoLmxvZyh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKKyAgICAgICAg
ICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGZs
b2F0IHJvdW5kKGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgucm91bmQodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAg
ICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAg
ICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcjw9KGZsb2F0LGZsb2F0KSIsCisgICAgICAgICAg
ICAibmF0aXZlIGZsb2F0IHNxcnQoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAg
ICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5sb2Fk
VmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVd
KSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLnNxcnQo
dmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj4oaW50
LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCB0cnVuYyhmbG9hdCkiLAogICAgICAg
ICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
bGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRW
YWx1ZSgpID4gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0
aC5mcm91bmQoTWF0aC50cnVuYyh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0p
OwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2
ZSBib29sIG9wZXJhdG9yPih1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQg
ZGR4KGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgwKTsK
ICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAg
ICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPihmbG9hdCxmbG9hdCkiLAorICAgICAgICAg
ICAgIm5hdGl2ZSBmbG9hdCBkZHkoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAg
ICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0LmxvYWRW
YWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0p
ID0+IEVQdHIuYm94KDApOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRo
aXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I+PShpbnQsaW50
KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHBvdyhmbG9hdCxmbG9hdCkiLAogICAgICAg
ICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
bGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRW
YWx1ZSgpID49IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3goTWF0aC5mcm91bmQoTWF0aC5wb3cobGVmdC5sb2FkVmFsdWUoKSwgcmlnaHQubG9hZFZhbHVl
KCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj49KHVpbnQsdWludCkiLAorICAg
ICAgICAgICAgIm5hdGl2ZSBib29sIGlzZmluaXRlKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5j
ID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdo
dF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPj0g
cmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24g
PSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTnVtYmVyLmlzRmlu
aXRlKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlz
Ll9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSBib29sIGlzaW5mKGZsb2F0KSIsCisgICAg
ICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KCh2YWx1ZS5sb2FkVmFs
dWUoKSA9PSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpIHx8ICh2YWx1ZS5sb2FkVmFsdWUoKSA9
PSBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAK
KwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJh
dG9yPj0oZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgYm9vbCBpc25hbihmbG9h
dCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChOdW1i
ZXIuaXNOYU4odmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAg
IC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhpcy4KKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAg
ICAgICAgICJuYXRpdmUgYm9vbCBpc25vcm1hbChoYWxmKSIsCisgICAgICAgICAgICBmdW5jID0+
IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+Cisg
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGlzTmFOKHZhbHVlLmxvYWRWYWx1ZSgpKSk7Cisg
ICAgICAgICAgICB9KTsKKworICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMuCisgICAg
ICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGJvb2wgaXNub3JtYWwoZmxv
YXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goaXNO
YU4odmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMu
X21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGF0YW4yKGZsb2F0LGZsb2F0KSIs
CiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxl
ZnQubG9hZFZhbHVlKCkgPj0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgICAg
ICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmF0YW4yKGxlZnQubG9hZFZhbHVlKCksIHJpZ2h0
LmxvYWRWYWx1ZSgpKSkpOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNl
dCgKKyAgICAgICAgICAgICJuYXRpdmUgaW50IGFzaW50KGZsb2F0KSIsCisgICAgICAgICAgICBm
dW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0p
ID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KEZsb2F0MzJBcnJh
eSwgSW50MzJBcnJheSwgdmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0pOworCisg
ICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgYXN1aW50KGZs
b2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxl
bWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGJp
dHdpc2VDYXN0KEZsb2F0MzJBcnJheSwgVWludDMyQXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7
CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAg
Im5hdGl2ZSBmbG9hdCBhc2Zsb2F0KGludCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveChiaXR3aXNlQ2FzdChJbnQzMkFycmF5LCBGbG9hdDMyQXJyYXks
IHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhc2Zsb2F0KHVpbnQpIiwKKyAgICAg
ICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goYml0d2lzZUNhc3QoVWlu
dDMyQXJyYXksIEZsb2F0MzJBcnJheSwgdmFsdWUubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAg
IH0pOwogCi0gICAgICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5cGVOYW1lIG9mIGFsbFZlY3Rv
clR5cGVOYW1lcygpKQorICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMuCisgICAgICAg
IHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGYxNnRvZjMyKHVpbnQp
IiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50
YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goMCk7Cisg
ICAgICAgICAgICB9KTsKKworICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMuCisgICAg
ICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgZjMydG9mMTYoZmxv
YXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goMCk7
CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAg
Im5hdGl2ZSB2b2lkIEFsbE1lbW9yeUJhcnJpZXJXaXRoR3JvdXBTeW5jKCkiLAorICAgICAgICAg
ICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IGZ1bmN0
aW9uKCkge307CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAg
ICAgICAgICAgIm5hdGl2ZSB2b2lkIERldmljZU1lbW9yeUJhcnJpZXJXaXRoR3JvdXBTeW5jKCki
LAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IGZ1bmN0aW9uKCkge307CisgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSB2b2lkIEdyb3VwTWVtb3J5QmFycmllcldpdGhH
cm91cFN5bmMoKSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gZnVuY3Rpb24oKSB7fTsKKyAgICAgICAgICAgIH0pOworCisgICAg
ICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5cGVOYW1lIG9mIGFsbFZlY3RvclR5cGVOYW1lcygp
KSB7CiAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGBuYXRpdmUgdHlwZWRlZiAke25hdGl2ZVZl
Y3RvclR5cGVOYW1lfWAsIHR5cGUgPT4gewogICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRp
dmUgPSB0cnVlOwogICAgICAgICAgICAgfSk7CisgICAgICAgIH0KIAotICAgICAgICBmb3IgKGxl
dCBzd2l6emxlIG9mIFN3aXp6bGVPcC5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21h
cC5zZXQoc3dpenpsZS50b1N0cmluZygpLCBmdW5jID0+IHN3aXp6bGUuaW5zdGFudGlhdGVJbXBs
ZW1lbnRhdGlvbihmdW5jKSk7CiAKLSAgICAgICAgZm9yIChsZXQgYm9vbE9wIG9mIE9wZXJhdG9y
Qm9vbC5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoYm9vbE9wLnRvU3Ry
aW5nKCksIGZ1bmMgPT4gYm9vbE9wLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwor
ICAgICAgICBmb3IgKGxldCB2ZWN0b3JUeXBlIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgeworICAg
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9y
VHlwZX0gb3BlcmF0b3IueCgke3ZlY3RvclR5cGV9MilgLAorICAgICAgICAgICAgICAgIGZ1bmMg
PT4gKG5ldyBCdWlsdGluVmVjdG9yR2V0dGVyKHZlY3RvclR5cGUsIDIsICJ4IiwgMCkpLmluc3Rh
bnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwogCi0gICAgICAgIGZvciAobGV0IGFuZGVySW5k
ZXggb2YgT3BlcmF0b3JBbmRlckluZGV4ZXIuZnVuY3Rpb25zKCkpCi0gICAgICAgICAgICB0aGlz
Ll9tYXAuc2V0KGFuZGVySW5kZXgudG9TdHJpbmcoKSwgZnVuYyA9PiBhbmRlckluZGV4Lmluc3Rh
bnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgK
KyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0gb3BlcmF0b3IueSgke3ZlY3Rv
clR5cGV9MilgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4gKG5ldyBCdWlsdGluVmVjdG9yR2V0
dGVyKHZlY3RvclR5cGUsIDIsICJ5IiwgMSkpLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykpOwogCi0gICAgICAgIGZvciAobGV0IGNhc3Qgb2YgQnVpbHRpblZlY3RvckNvbnN0cnVjdG9y
cy5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoY2FzdC50b1N0cmluZygp
LCBmdW5jID0+IGNhc3QuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisgICAgICAg
ICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgJHt2ZWN0b3JUeXBl
fSBvcGVyYXRvci54KCR7dmVjdG9yVHlwZX0zKWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiAo
bmV3IEJ1aWx0aW5WZWN0b3JHZXR0ZXIodmVjdG9yVHlwZSwgMywgIngiLCAwKSkuaW5zdGFudGlh
dGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisg
ICAgICAgICAgICAgICAgYG5hdGl2ZSAke3ZlY3RvclR5cGV9IG9wZXJhdG9yLnkoJHt2ZWN0b3JU
eXBlfTMpYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvckdldHRl
cih2ZWN0b3JUeXBlLCAzLCAieSIsIDEpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMp
KTsKKworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZl
ICR7dmVjdG9yVHlwZX0gb3BlcmF0b3Iueigke3ZlY3RvclR5cGV9MylgLAorICAgICAgICAgICAg
ICAgIGZ1bmMgPT4gKG5ldyBCdWlsdGluVmVjdG9yR2V0dGVyKHZlY3RvclR5cGUsIDMsICJ6Iiwg
MikpLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwogCi0gICAgICAgIGZvciAobGV0
IGdldHRlciBvZiBCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuZnVuY3Rpb25zKCkpCi0gICAgICAg
ICAgICB0aGlzLl9tYXAuc2V0KGdldHRlci50b1N0cmluZygpLCBmdW5jID0+IGdldHRlci5pbnN0
YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQo
CisgICAgICAgICAgICAgICAgYG5hdGl2ZSAke3ZlY3RvclR5cGV9IG9wZXJhdG9yLngoJHt2ZWN0
b3JUeXBlfTQpYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3Rvckdl
dHRlcih2ZWN0b3JUeXBlLCA0LCAieCIsIDApKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1
bmMpKTsKIAotICAgICAgICBmb3IgKGxldCBzZXR0ZXIgb2YgQnVpbHRpblZlY3RvckluZGV4U2V0
dGVyLmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJp
bmcoKSwgZnVuYyA9PiBzZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7Cisg
ICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgJHt2ZWN0
b3JUeXBlfSBvcGVyYXRvci55KCR7dmVjdG9yVHlwZX00KWAsCisgICAgICAgICAgICAgICAgZnVu
YyA9PiAobmV3IEJ1aWx0aW5WZWN0b3JHZXR0ZXIodmVjdG9yVHlwZSwgNCwgInkiLCAxKSkuaW5z
dGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CiAKLSAgICAgICAgZm9yIChsZXQgZXF1YWxp
dHlPcGVyYXRvciBvZiBCdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVyYXRvci5mdW5jdGlvbnMoKSkK
LSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZXF1YWxpdHlPcGVyYXRvci50b1N0cmluZygpLCBm
dW5jID0+IGVxdWFsaXR5T3BlcmF0b3IuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7
CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgJHt2
ZWN0b3JUeXBlfSBvcGVyYXRvci56KCR7dmVjdG9yVHlwZX00KWAsCisgICAgICAgICAgICAgICAg
ZnVuYyA9PiAobmV3IEJ1aWx0aW5WZWN0b3JHZXR0ZXIodmVjdG9yVHlwZSwgNCwgInoiLCAyKSku
aW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisKKyAgICAgICAgICAgIHRoaXMuX21h
cC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSAke3ZlY3RvclR5cGV9IG9wZXJhdG9yLnco
JHt2ZWN0b3JUeXBlfTQpYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZl
Y3RvckdldHRlcih2ZWN0b3JUeXBlLCA0LCAidyIsIDMpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0
aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAg
ICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0yIG9wZXJhdG9yLng9KCR7dmVjdG9y
VHlwZX0yLCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVp
bHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCAyLCAieCIsIDApKS5pbnN0YW50aWF0ZUltcGxl
bWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0yIG9wZXJhdG9yLnk9KCR7
dmVjdG9yVHlwZX0yLCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChu
ZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCAyLCAieSIsIDEpKS5pbnN0YW50aWF0
ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5f
bWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0zIG9wZXJhdG9y
Lng9KCR7dmVjdG9yVHlwZX0zLCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5j
ID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCAzLCAieCIsIDApKS5pbnN0
YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAg
dGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX0zIG9w
ZXJhdG9yLnk9KCR7dmVjdG9yVHlwZX0zLCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAg
ICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCAzLCAieSIsIDEp
KS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAorICAgICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVjdG9yVHlw
ZX0zIG9wZXJhdG9yLno9KCR7dmVjdG9yVHlwZX0zLCR7dmVjdG9yVHlwZX0pYCwKKyAgICAgICAg
ICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBlLCAzLCAi
eiIsIDIpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgICAgIAor
ICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlICR7dmVj
dG9yVHlwZX00IG9wZXJhdG9yLng9KCR7dmVjdG9yVHlwZX00LCR7dmVjdG9yVHlwZX0pYCwKKyAg
ICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0b3JUeXBl
LCA0LCAieCIsIDApKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAg
ICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZl
ICR7dmVjdG9yVHlwZX00IG9wZXJhdG9yLnk9KCR7dmVjdG9yVHlwZX00LCR7dmVjdG9yVHlwZX0p
YCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRlcih2ZWN0
b3JUeXBlLCA0LCAieSIsIDEpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAg
ICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBg
bmF0aXZlICR7dmVjdG9yVHlwZX00IG9wZXJhdG9yLno9KCR7dmVjdG9yVHlwZX00LCR7dmVjdG9y
VHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3RvclNldHRl
cih2ZWN0b3JUeXBlLCA0LCAieiIsIDIpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMp
KTsKKyAgICAgICAgICAgIAorICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAg
ICAgICBgbmF0aXZlICR7dmVjdG9yVHlwZX00IG9wZXJhdG9yLnc9KCR7dmVjdG9yVHlwZX00LCR7
dmVjdG9yVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IChuZXcgQnVpbHRpblZlY3Rv
clNldHRlcih2ZWN0b3JUeXBlLCA0LCAidyIsIDMpKS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9u
KGZ1bmMpKTsKKyAgICAgICAgfQogCi0gICAgICAgIGZvciAobGV0IGdldHRlciBvZiBCdWlsdGlu
VmVjdG9yR2V0dGVyLmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChnZXR0
ZXIudG9TdHJpbmcoKSwgZnVuYyA9PiBnZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihm
dW5jKSk7CisgICAgICAgIGZvciAobGV0IHN3aXp6bGUgb2YgU3dpenpsZU9wLmZ1bmN0aW9ucygp
KQorICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzd2l6emxlLnRvU3RyaW5nKCksIGZ1bmMgPT4g
c3dpenpsZS5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKIAotICAgICAgICBmb3Ig
KGxldCBzZXR0ZXIgb2YgQnVpbHRpblZlY3RvclNldHRlci5mdW5jdGlvbnMoKSkKLSAgICAgICAg
ICAgIHRoaXMuX21hcC5zZXQoc2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMgPT4gc2V0dGVyLmluc3Rh
bnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworICAgICAgICBmb3IgKGxldCBjYXN0IG9mIEJ1
aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuZnVuY3Rpb25zKCkpCisgICAgICAgICAgICB0aGlzLl9t
YXAuc2V0KGNhc3QudG9TdHJpbmcoKSwgZnVuYyA9PiBjYXN0Lmluc3RhbnRpYXRlSW1wbGVtZW50
YXRpb24oZnVuYykpOwogICAgIH0KLSAgICAKKwogICAgIGFkZCh0aGluZykKICAgICB7CiAgICAg
ICAgIGxldCBpbnRyaW5zaWMgPSB0aGlzLl9tYXAuZ2V0KHRoaW5nLnRvU3RyaW5nKCkpOwpkaWZm
IC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4VHlwZS5qcyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01hdHJpeFR5cGUuanMKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2Qx
ZWY2NDAzYzA3OTI2ZjExMTNlZTY4ZTRmNWIzMGU5YmMzNzA0MAotLS0gL2Rldi9udWxsCisrKyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01hdHJpeFR5cGUuanMKQEAgLTAsMCArMSw2
MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQ
VVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgor
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisidXNlIHN0
cmljdCI7CisKK2NsYXNzIE1hdHJpeFR5cGUgZXh0ZW5kcyBOYXRpdmVUeXBlIHsKKyAgICBjb25z
dHJ1Y3RvcihvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVudHMpCisgICAgeworICAgICAgICBzdXBl
cihvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVudHMpOworICAgIH0KKworICAgIGdldCBlbGVtZW50
VHlwZSgpIHsgcmV0dXJuIHRoaXMudHlwZUFyZ3VtZW50c1swXTsgfQorICAgIGdldCBudW1Sb3dz
KCkgeyByZXR1cm4gdGhpcy50eXBlQXJndW1lbnRzWzFdOyB9CisgICAgZ2V0IG51bUNvbHVtbnMo
KSB7IHJldHVybiB0aGlzLnR5cGVBcmd1bWVudHNbMl07IH0KKyAgICBnZXQgbnVtUm93c1ZhbHVl
KCkgeyByZXR1cm4gdGhpcy5udW1Sb3dzLnZhbHVlOyB9CisgICAgZ2V0IG51bUNvbHVtbnNWYWx1
ZSgpIHsgcmV0dXJuIHRoaXMubnVtQ29sdW1ucy52YWx1ZTsgfQorICAgIGdldCBzaXplKCkgeyBy
ZXR1cm4gdGhpcy5lbGVtZW50VHlwZS5zaXplICogdGhpcy5udW1Sb3dzVmFsdWUgKiB0aGlzLm51
bUNvbHVtbnNWYWx1ZTsgfQorCisgICAgdW5pZnlJbXBsKHVuaWZpY2F0aW9uQ29udGV4dCwgb3Ro
ZXIpCisgICAgeworICAgICAgICBpZiAoIShvdGhlciBpbnN0YW5jZW9mIE1hdHJpeFR5cGUpKQor
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIGlmICh0aGlzLm51bVJvd3NWYWx1
ZSAhPT0gb3RoZXIubnVtUm93c1ZhbHVlIHx8IHRoaXMucnVuQ29sdW1uc1ZhbHVlICE9PSBvdGhl
ci5udW1Db2x1bW5zVmFsdWUpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAg
cmV0dXJuIHRoaXMuZWxlbWVudFR5cGUudW5pZnkodW5pZmljYXRpb25Db250ZXh0LCBvdGhlci5l
bGVtZW50VHlwZSk7CisgICAgfQorCisgICAgcG9wdWxhdGVEZWZhdWx0VmFsdWUoYnVmZmVyLCBv
ZmZzZXQpCisgICAgeworICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMubnVtUm93c1Zh
bHVlICogdGhpcy5ydW5Db2x1bW5zVmFsdWU7ICsraSkKKyAgICAgICAgICAgIHRoaXMuZWxlbWVu
dFR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUoYnVmZmVyLCBvZmZzZXQgKyBpICogdGhpcy5lbGVt
ZW50VHlwZS5zaXplKTsKKyAgICB9CisKKyAgICB0b1N0cmluZygpCisgICAgeworICAgICAgICBy
ZXR1cm4gYG5hdGl2ZSB0eXBlZGVmIG1hdHJpeDwke3RoaXMuZWxlbWVudFR5cGV9LCAke3RoaXMu
bnVtUm93c1ZhbHVlfSwgJHt0aGlzLm51bUNvbHVtbnNWYWx1ZX0+YDsKKyAgICB9Cit9CisKZGlm
ZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hbWVDb250ZXh0LmpzIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZUNvbnRleHQuanMKaW5kZXggMWJhYjNm
YzU2MDI2MDEwNzdiM2ZhODg1YTYwNTRhYjg2MGIwYTE5My4uYzg5OTY4Yzc3OTYwN2I3Y2FiY2M2
YTVmOTY5YjRhYjkxM2U3MjYzZSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvTmFtZUNvbnRleHQuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
TmFtZUNvbnRleHQuanMKQEAgLTY5LDExICs2OSwzMyBAQCBjbGFzcyBOYW1lQ29udGV4dCB7CiAg
ICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KIAorICAgICAgICBpZiAodGhpbmcua2luZCA9
PSBUeXBlKSB7CisgICAgICAgICAgICB0aGlzLl9zZXQuYWRkKHRoaW5nKTsKKyAgICAgICAgICAg
IGlmICh0aGluZy50eXBlQXJndW1lbnRzICYmIHRoaW5nLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9
IDApIHsKKyAgICAgICAgICAgICAgICBsZXQgYXJyYXkgPSB0aGlzLl9tYXAuZ2V0KHRoaW5nLm5h
bWUpOworICAgICAgICAgICAgICAgIGlmICghYXJyYXkpIHsKKyAgICAgICAgICAgICAgICAgICAg
YXJyYXkgPSBbXTsKKyAgICAgICAgICAgICAgICAgICAgYXJyYXkua2luZCA9IFR5cGU7CisgICAg
ICAgICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQodGhpbmcubmFtZSwgYXJyYXkpOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBpZiAoYXJyYXkua2luZCAhPSBUeXBlKQorICAg
ICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcih0aGluZy5vcmlnaW4ub3JpZ2lu
U3RyaW5nLCAiQ2Fubm90IHJldXNlIHR5cGUgbmFtZSBmb3IgZnVuY3Rpb246ICIgKyB0aGluZy5u
YW1lKTsKKyAgICAgICAgICAgICAgICBhcnJheS5wdXNoKHRoaW5nKTsKKyAgICAgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIGlmICh0aGlz
Ll9tYXAuaGFzKHRoaW5nLm5hbWUpKQorICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1R5
cGVFcnJvcih0aGluZy5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiRHVwbGljYXRlIG5hbWU6ICIgKyB0
aGluZy5uYW1lKTsKKyAgICAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KHRoaW5nLm5hbWUsIHRo
aW5nKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAg
ICAgICAKICAgICAgICAgaWYgKHRoaXMuX21hcC5oYXModGhpbmcubmFtZSkpCiAgICAgICAgICAg
ICB0aHJvdyBuZXcgV1R5cGVFcnJvcih0aGluZy5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiRHVwbGlj
YXRlIG5hbWU6ICIgKyB0aGluZy5uYW1lKTsKIAogICAgICAgICB0aGlzLl9zZXQuYWRkKHRoaW5n
KTsKICAgICAgICAgdGhpcy5fbWFwLnNldCh0aGluZy5uYW1lLCB0aGluZyk7CisKICAgICB9CiAg
ICAgCiAgICAgZ2V0KGtpbmQsIG5hbWUpCkBAIC0xMDIsNiArMTI0LDEwIEBAIGNsYXNzIE5hbWVD
b250ZXh0IHsKICAgICAgICAgICAgIGZvciAobGV0IGZ1bmMgb2YgdGhpbmcpCiAgICAgICAgICAg
ICAgICAgeWllbGQgZnVuYzsKICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfSBlbHNlIGlm
ICh0aGluZy5raW5kID09PSBUeXBlICYmICh0aGluZyBpbnN0YW5jZW9mIEFycmF5KSkgeworICAg
ICAgICAgICAgZm9yIChsZXQgdHlwZSBvZiB0aGluZykKKyAgICAgICAgICAgICAgICB5aWVsZCB0
eXBlOworICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgICAgIHlpZWxkIHRoaW5n
OwogICAgIH0KQEAgLTE2Myw4ICsxODksOCBAQCBjbGFzcyBOYW1lQ29udGV4dCB7CiAgICAgewog
ICAgICAgICBmb3IgKGxldCB2YWx1ZSBvZiB0aGlzLl9tYXAudmFsdWVzKCkpIHsKICAgICAgICAg
ICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIEFycmF5KSB7Ci0gICAgICAgICAgICAgICAgZm9yIChs
ZXQgZnVuYyBvZiB2YWx1ZSkKLSAgICAgICAgICAgICAgICAgICAgeWllbGQgZnVuYzsKKyAgICAg
ICAgICAgICAgICBmb3IgKGxldCB0aGluZyBvZiB2YWx1ZSkKKyAgICAgICAgICAgICAgICAgICAg
eWllbGQgdGhpbmc7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICB5aWVsZCB2YWx1ZTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL05hbWVSZXNvbHZlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L05hbWVSZXNvbHZlci5qcwppbmRleCBmNjE1YTJmYjRlODdkYzFkZWI3YjAxYjU3MmZiN2FmNjI2
YWJkMDk1Li45YTA5OWY0ODVlNmU5MjdlMTY0MzdiYmY4MjY0MWY2MWU0NTI1Y2YxIDEwMDY0NAot
LS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVzb2x2ZXIuanMKKysrIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZVJlc29sdmVyLmpzCkBAIC0xMjAsMTIg
KzEyMCwxOSBAQCBjbGFzcyBOYW1lUmVzb2x2ZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAKICAg
ICB2aXNpdFR5cGVSZWYobm9kZSkKICAgICB7CisgICAgICAgIHN1cGVyLnZpc2l0VHlwZVJlZihu
b2RlKTsKICAgICAgICAgbGV0IHR5cGUgPSBub2RlLnR5cGU7CiAgICAgICAgIGlmICghdHlwZSkg
ewogICAgICAgICAgICAgdHlwZSA9IHRoaXMuX25hbWVDb250ZXh0LmdldChUeXBlLCBub2RlLm5h
bWUpOwogICAgICAgICAgICAgaWYgKCF0eXBlKQogICAgICAgICAgICAgICAgIHRocm93IG5ldyBX
VHlwZUVycm9yKG5vZGUub3JpZ2luLm9yaWdpblN0cmluZywgIkNvdWxkIG5vdCBmaW5kIHR5cGUg
bmFtZWQgIiArIG5vZGUubmFtZSk7Ci0gICAgICAgICAgICBub2RlLnR5cGUgPSB0eXBlOworICAg
ICAgICAgICAgaWYgKHR5cGUgaW5zdGFuY2VvZiBBcnJheSkgeworICAgICAgICAgICAgICAgIC8v
IFR5cGUgdW5pZmljYXRpb24gcmVxdWlyZXMgdGhlIC50eXBlIHZhbHVlIHRvIGJlIHNldCBhbHJl
YWR5LCBzbyB3ZSBjYW4gZWFnZXJseSBzZXQgaXQgbm93LgorICAgICAgICAgICAgICAgIGZvciAo
bGV0IG92ZXJsb2FkIG9mIHR5cGUpCisgICAgICAgICAgICAgICAgICAgIE5vZGUudmlzaXQob3Zl
cmxvYWQsIHRoaXMpOworICAgICAgICAgICAgICAgIG5vZGUucmVzb2x2ZSh0eXBlKTsKKyAgICAg
ICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgIG5vZGUudHlwZSA9IHR5cGU7CiAgICAgICAg
IH0KICAgICB9CiAgICAgCkBAIC0yMDgsOSArMjE1LDQgQEAgY2xhc3MgTmFtZVJlc29sdmVyIGV4
dGVuZHMgVmlzaXRvciB7CiAgICAgICAgIAogICAgICAgICBzdXBlci52aXNpdENhbGxFeHByZXNz
aW9uKG5vZGUpOwogICAgIH0KLQotICAgIHZpc2l0VmVjdG9yVHlwZShub2RlKQotICAgIHsKLSAg
ICAgICAgbm9kZS5lbGVtZW50VHlwZS52aXNpdCh0aGlzKTsKLSAgICB9CiB9CmRpZmYgLS1naXQg
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpzIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvTmF0aXZlVHlwZS5qcwppbmRleCBlMmQ4NTFjYmNjYmEzYTk3
MjM0YzdiZDM5MjkwNzgyOWNhOWUwNWYyLi5iMzY4YTJlOGIyNGY1NDhlYWI4OGEyODI0YjQ5NWJl
MjNjODdjYjg1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRp
dmVUeXBlLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hdGl2ZVR5cGUu
anMKQEAgLTI1LDExICsyNSwxNCBAQAogInVzZSBzdHJpY3QiOwogCiBjbGFzcyBOYXRpdmVUeXBl
IGV4dGVuZHMgVHlwZSB7Ci0gICAgY29uc3RydWN0b3Iob3JpZ2luLCBuYW1lKQorICAgIGNvbnN0
cnVjdG9yKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cykKICAgICB7CisgICAgICAgIGlmICgh
KHR5cGVBcmd1bWVudHMgaW5zdGFuY2VvZiBBcnJheSkpCisgICAgICAgICAgICB0aHJvdyBuZXcg
RXJyb3IoInR5cGUgcGFyYW1ldGVycyBub3QgYXJyYXk6ICIgKyB0eXBlQXJndW1lbnRzKTsKICAg
ICAgICAgc3VwZXIoKTsKICAgICAgICAgdGhpcy5fb3JpZ2luID0gb3JpZ2luOwogICAgICAgICB0
aGlzLl9uYW1lID0gbmFtZTsKKyAgICAgICAgdGhpcy5fdHlwZUFyZ3VtZW50cyA9IHR5cGVBcmd1
bWVudHM7CiAgICAgICAgIHRoaXMuX2lzTnVtYmVyID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX2lz
SW50ID0gZmFsc2U7CiAgICAgICAgIHRoaXMuX2lzRmxvYXRpbmcgPSBmYWxzZTsKQEAgLTM4LDYg
KzQxLDcgQEAgY2xhc3MgTmF0aXZlVHlwZSBleHRlbmRzIFR5cGUgewogICAgIAogICAgIGdldCBv
cmlnaW4oKSB7IHJldHVybiB0aGlzLl9vcmlnaW47IH0KICAgICBnZXQgbmFtZSgpIHsgcmV0dXJu
IHRoaXMuX25hbWU7IH0KKyAgICBnZXQgdHlwZUFyZ3VtZW50cygpIHsgcmV0dXJuIHRoaXMuX3R5
cGVBcmd1bWVudHM7IH0KICAgICBnZXQgaXNOYXRpdmUoKSB7IHJldHVybiB0cnVlOyB9CiAgICAg
CiAgICAgLy8gV2UgbGV0IEludHJpbnNpY3MuanMgc2V0IHRoZXNlIGFzIGl0IGxpa2VzLgpAQCAt
NTIsMTkgKzU2LDIwIEBAIGNsYXNzIE5hdGl2ZVR5cGUgZXh0ZW5kcyBUeXBlIHsKICAgICAKICAg
ICB0b1N0cmluZygpCiAgICAgewotICAgICAgICByZXR1cm4gYG5hdGl2ZSB0eXBlZGVmICR7dGhp
cy5uYW1lfWA7CisgICAgICAgIGxldCByZXN1bHQgPSBgbmF0aXZlIHR5cGVkZWYgJHt0aGlzLm5h
bWV9YDsKKyAgICAgICAgaWYgKHRoaXMudHlwZUFyZ3VtZW50cy5sZW5ndGgpCisgICAgICAgICAg
ICByZXN1bHQgKz0gIjwiICsgdGhpcy50eXBlQXJndW1lbnRzLmpvaW4oIiwiKSArICI+IjsKKyAg
ICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CiAgICAgCiAgICAgc3RhdGljIGNyZWF0ZShvcmln
aW4sIG5hbWUsIHR5cGVBcmd1bWVudHMpCiAgICAgewotICAgICAgICAvLyBGSVhNRTogRm9yIG5h
dGl2ZSB0eXBlcyBsaWtlIFRleHR1cmUxRCB0aGlzIHNob3VsZCByZXNvbHZlIHRoZSB0eXBlIHRv
IHNvbWV0aGluZyBjb25jcmV0ZSBieSBjaGFuZ2luZyB0aGUgdHlwZSBuYW1lLgotICAgICAgICBp
ZiAodHlwZUFyZ3VtZW50cy5sZW5ndGgpCi0gICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJv
cihvcmlnaW4ub3JpZ2luU3RyaW5nLCBgJHtuYW1lfTwke3R5cGVBcmd1bWVudHMuam9pbigiLCIp
fT46IFN1cHBvcnQgZm9yIG5hdGl2ZSB0eXBlcyB3aXRoIHR5cGUgYXJndW1lbnRzIGlzIGN1cnJl
bnRseSB1bmltcGxlbWVudGVkLmApOworICAgICAgICBpZiAobmFtZSA9PSAidmVjdG9yIikKKyAg
ICAgICAgICAgIHJldHVybiBuZXcgVmVjdG9yVHlwZShvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVu
dHMpOworICAgICAgICBpZiAobmFtZSA9PSAibWF0cml4IikKKyAgICAgICAgICAgIHJldHVybiBu
ZXcgTWF0cml4VHlwZShvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVudHMpOwogCi0gICAgICAgIGlm
IChhbGxWZWN0b3JUeXBlTmFtZXMoKS5pbmRleE9mKG5hbWUpID4gLTEpCi0gICAgICAgICAgICBy
ZXR1cm4gbmV3IFZlY3RvclR5cGUob3JpZ2luLCBuYW1lKTsKLQotICAgICAgICByZXR1cm4gbmV3
IE5hdGl2ZVR5cGUob3JpZ2luLCBuYW1lKTsKKyAgICAgICAgcmV0dXJuIG5ldyBOYXRpdmVUeXBl
KG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXguanMgYi9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXguanMKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY3MDM3MWZiOTBmMmExZmQxNWMyZGRmNmM0YTM5NmMwZjIz
OWNlYmYuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4LmpzCisrKyAvZGV2
L251bGwKQEAgLTEsNzEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQot
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVD
VCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFU
QSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgotICovCi0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIE9wZXJhdG9yQW5kZXJJbmRleGVyIHsK
LSAgICBjb25zdHJ1Y3RvcihiYXNlVHlwZU5hbWUsIGFkZHJlc3NTcGFjZSkKLSAgICB7Ci0gICAg
ICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJhc2VUeXBlTmFtZTsKLSAgICAgICAgdGhpcy5fYWRk
cmVzc1NwYWNlID0gYWRkcmVzc1NwYWNlOwotICAgIH0KLQotICAgIGdldCBhZGRyZXNzU3BhY2Uo
KSB7IHJldHVybiB0aGlzLl9hZGRyZXNzU3BhY2U7IH0KLSAgICBnZXQgYmFzZVR5cGVOYW1lKCkg
eyByZXR1cm4gdGhpcy5fYmFzZVR5cGVOYW1lOyB9Ci0KLSAgICB0b1N0cmluZygpCi0gICAgewot
ICAgICAgICByZXR1cm4gYG5hdGl2ZSAke3RoaXMuYmFzZVR5cGVOYW1lfSogJHt0aGlzLmFkZHJl
c3NTcGFjZX0gb3BlcmF0b3ImW10oJHt0aGlzLmJhc2VUeXBlTmFtZX1bXSAke3RoaXMuYWRkcmVz
c1NwYWNlfSx1aW50KWA7Ci0gICAgfQotCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewot
ICAgICAgICBpZiAoIXRoaXMuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgdGhpcy5fZnVuY3Rp
b25zID0gW107Ci0KLSAgICAgICAgICAgIGNvbnN0IHR5cGVOYW1lcyA9IFsgInVpbnQiLCAiaW50
IiwgImZsb2F0IiwgImJvb2wiIF0uY29uY2F0KGFsbFZlY3RvclR5cGVOYW1lcygpKTsKLSAgICAg
ICAgICAgIGNvbnN0IGFkZHJlc3NTcGFjZXMgPSBbICJ0aHJlYWQiLCAidGhyZWFkZ3JvdXAiLCAi
ZGV2aWNlIiwgImNvbnN0YW50IiBdOwotCi0gICAgICAgICAgICBmb3IgKGxldCBhZGRyZXNzU3Bh
Y2Ugb2YgYWRkcmVzc1NwYWNlcykgewotICAgICAgICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1l
IG9mIHR5cGVOYW1lcykKLSAgICAgICAgICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zLnB1c2go
bmV3IE9wZXJhdG9yQW5kZXJJbmRleGVyKHR5cGVOYW1lLCBhZGRyZXNzU3BhY2UpKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdGhpcy5fZnVuY3Rpb25zOwotICAg
IH0KLQotICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykKLSAgICB7Ci0gICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3JlZiwgaW5kZXhdLCBub2RlKSA9PiB7Ci0gICAgICAg
ICAgICByZWYgPSByZWYubG9hZFZhbHVlKCk7Ci0gICAgICAgICAgICBpZiAoIXJlZikKLSAgICAg
ICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBFcnJvcihub2RlLm9yaWdpbi5vcmlnaW5TdHJpbmcs
ICJOdWxsIGRlcmVmZXJlbmNlIik7Ci0gICAgICAgICAgICBpbmRleCA9IGluZGV4LmxvYWRWYWx1
ZSgpOwotICAgICAgICAgICAgaWYgKGluZGV4ID4gcmVmLmxlbmd0aCkKLSAgICAgICAgICAgICAg
ICB0aHJvdyBuZXcgV1RyYXBFcnJvcihub2RlLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJBcnJheSBp
bmRleCAiICsgaW5kZXggKyAiIGlzIG91dCBvZiBib3VuZHMgb2YgIiArIHJlZik7Ci0gICAgICAg
ICAgICByZXR1cm4gRVB0ci5ib3gocmVmLnB0ci5wbHVzKGluZGV4ICogbm9kZS5hcmd1bWVudFR5
cGVzWzBdLmVsZW1lbnRUeXBlLnNpemUpKTsKLSAgICAgICAgfTsKLSAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwotICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFu
ZGVySW5kZXhlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5k
ZXJJbmRleGVyLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjAxMmYwNjc4MGY3YWQ5MzIyZDZjN2JlNDc5MGNkNDQ2
MTgxZjg5YjQKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9PcGVyYXRvckFuZGVySW5kZXhlci5qcwpAQCAtMCwwICsxLDU1IEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFO
RCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworY2xhc3MgT3Bl
cmF0b3JBbmRlckluZGV4ZXIgeworICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwgYWRkcmVz
c1NwYWNlKQorICAgIHsKKyAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1l
OworICAgICAgICB0aGlzLl9hZGRyZXNzU3BhY2UgPSBhZGRyZXNzU3BhY2U7CisgICAgfQorCisg
ICAgZ2V0IGFkZHJlc3NTcGFjZSgpIHsgcmV0dXJuIHRoaXMuX2FkZHJlc3NTcGFjZTsgfQorICAg
IGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KKworICAg
IHRvU3RyaW5nKCkKKyAgICB7CisgICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlw
ZU5hbWV9KiAke3RoaXMuYWRkcmVzc1NwYWNlfSBvcGVyYXRvciZbXSgke3RoaXMuYmFzZVR5cGVO
YW1lfVtdICR7dGhpcy5hZGRyZXNzU3BhY2V9LHVpbnQpYDsKKyAgICB9CisKKyAgICBpbnN0YW50
aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCisgICAgeworICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFtyZWYsIGluZGV4XSwgbm9kZSkgPT4geworICAgICAgICAgICAgcmVmID0gcmVmLmxv
YWRWYWx1ZSgpOworICAgICAgICAgICAgaWYgKCFyZWYpCisgICAgICAgICAgICAgICAgdGhyb3cg
bmV3IFdUcmFwRXJyb3Iobm9kZS5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiTnVsbCBkZXJlZmVyZW5j
ZSIpOworICAgICAgICAgICAgaW5kZXggPSBpbmRleC5sb2FkVmFsdWUoKTsKKyAgICAgICAgICAg
IGlmIChpbmRleCA+IHJlZi5sZW5ndGgpCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUcmFw
RXJyb3Iobm9kZS5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiQXJyYXkgaW5kZXggIiArIGluZGV4ICsg
IiBpcyBvdXQgb2YgYm91bmRzIG9mICIgKyByZWYpOworICAgICAgICAgICAgcmV0dXJuIEVQdHIu
Ym94KHJlZi5wdHIucGx1cyhpbmRleCAqIG5vZGUuYXJndW1lbnRUeXBlc1swXS5lbGVtZW50VHlw
ZS5zaXplKSk7CisgICAgICAgIH07CisgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0g
dGhpczsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9PcGVyYXRvckJvb2wuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRv
ckJvb2wuanMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU4YmIwZTA5YjgwYmVlMTA3
MDg5YjFjOWQyMDBjYmM2OGE1Y2I5ZDMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JCb29s
LmpzCisrKyAvZGV2L251bGwKQEAgLTEsNjggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
Ci0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgotICovCi0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIE9wZXJhdG9yQm9v
bCB7Ci0gICAgY29uc3RydWN0b3IoYmFzZVR5cGVOYW1lKQotICAgIHsKLSAgICAgICAgdGhpcy5f
YmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1lOwotICAgIH0KLQotICAgIGdldCBiYXNlVHlwZU5h
bWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KLQotICAgIHRvU3RyaW5nKCkKLSAg
ICB7Ci0gICAgICAgIHJldHVybiBgbmF0aXZlIG9wZXJhdG9yIGJvb2woJHt0aGlzLmJhc2VUeXBl
TmFtZX0pYDsKLSAgICB9Ci0KLSAgICBzdGF0aWMgZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAg
IC8vIEZJWE1FOiBUaGVzZSBvcGVyYXRvcnMgc2hvdWxkIGJlIGluIHRoZSBzdGFuZGFyZCBsaWJy
YXJ5IHdoZXJlIHBvc3NpYmxlLgotICAgICAgICBpZiAoIU9wZXJhdG9yQm9vbC5fZnVuY3Rpb25z
KSB7Ci0gICAgICAgICAgICBPcGVyYXRvckJvb2wuX2Z1bmN0aW9ucyA9IFtdOwotCi0gICAgICAg
ICAgICAvLyBib29sIGlzIG5vdCBpbmNsdWRlZCBiZWNhdXNlIHRoaXMgaXMgZ2VuZXJhdGVkIGJ5
IHRoZSBjb3B5IGNvbnN0cnVjdG9yLgotICAgICAgICAgICAgLy8gRklYTUU6IEluY2x1ZGUgYWxs
IG5hdGl2ZSB0eXBlcy4KLSAgICAgICAgICAgIGNvbnN0IHR5cGVOYW1lcyA9IFsgInVjaGFyIiwg
InVpbnQiLCAiaW50IiwgImZsb2F0IiBdLmNvbmNhdChhbGxWZWN0b3JUeXBlTmFtZXMoKSk7Ci0K
LSAgICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIHR5cGVOYW1lcykKLSAgICAgICAgICAg
ICAgICBPcGVyYXRvckJvb2wuX2Z1bmN0aW9ucy5wdXNoKG5ldyBPcGVyYXRvckJvb2wodHlwZU5h
bWUpKTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4gT3BlcmF0b3JCb29sLl9mdW5jdGlvbnM7
Ci0gICAgfQotCi0gICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQotICAgIHsKLSAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbcmVmXSwgbm9kZSkgPT4gewotICAgICAgICAg
ICAgY29uc3Qgc2l6ZSA9IG5vZGUuYXJndW1lbnRUeXBlc1swXS5zaXplOwotICAgICAgICAgICAg
Zm9yIChsZXQgaSA9IDA7IGkgPCBzaXplOyArK2kpIHsKLSAgICAgICAgICAgICAgICBpZiAoISFy
ZWYuZ2V0KGkpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gRVB0ci5ib3godHJ1ZSk7Ci0g
ICAgICAgICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gRVB0ci5ib3goZmFsc2UpOwotICAgICAg
ICB9Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKLSAgICB9Ci19Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvUHJlcGFyZS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1By
ZXBhcmUuanMKaW5kZXggN2IxNjEzOWU5NWI4MWUyZThkYTgzNTRiZDhjMTc5YjE5MGJhZWZhMC4u
ODM0NTkyZDM2ZjM0NTdkZmE4NmI1NzUxYmI3MjYyNDcyYTNmMGEyZCAxMDA2NDQKLS0tIGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5qcworKysgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzCkBAIC00MCwyMCArNDAsMTkgQEAgbGV0IHByZXBh
cmUgPSAoKCkgPT4gewogICAgICAgICB9CiAgICAgICAgIAogICAgICAgICBmb2xkQ29uc3RleHBy
cyhwcm9ncmFtKTsKLSAgICAgICAgcmVtb3ZlVHlwZUFyZ3VtZW50cyhwcm9ncmFtKTsKIAogICAg
ICAgICBsZXQgbmFtZVJlc29sdmVyID0gY3JlYXRlTmFtZVJlc29sdmVyKHByb2dyYW0pOwogICAg
ICAgICByZXNvbHZlTmFtZXNJblR5cGVzKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7CiAgICAgICAg
IHJlc29sdmVUeXBlRGVmc0luVHlwZXMocHJvZ3JhbSk7CiAgICAgICAgIGNoZWNrUmVjdXJzaXZl
VHlwZXMocHJvZ3JhbSk7CiAgICAgICAgIHN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMocHJvZ3Jh
bSk7Ci0gICAgICAgIHN5bnRoZXNpemVPcGVyYXRvckJvb2wocHJvZ3JhbSk7CiAgICAgICAgIHN5
bnRoZXNpemVFbnVtRnVuY3Rpb25zKHByb2dyYW0pOwogICAgICAgICBzeW50aGVzaXplQXJyYXlP
cGVyYXRvckxlbmd0aChwcm9ncmFtKTsKICAgICAgICAgc3ludGhlc2l6ZUNvcHlDb25zdHJ1Y3Rv
ck9wZXJhdG9yKHByb2dyYW0pOwogICAgICAgICBzeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9y
T3BlcmF0b3IocHJvZ3JhbSk7CiAgICAgICAgIHJlc29sdmVOYW1lc0luRnVuY3Rpb25zKHByb2dy
YW0sIG5hbWVSZXNvbHZlcik7CiAgICAgICAgIHJlc29sdmVUeXBlRGVmc0luRnVuY3Rpb25zKHBy
b2dyYW0pOworICAgICAgICBjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9ncmFtKTsKICAgICAg
ICAgCiAgICAgICAgIGNoZWNrKHByb2dyYW0pOwogICAgICAgICBjaGVja0xpdGVyYWxUeXBlcyhw
cm9ncmFtKTsKQEAgLTY2LDYgKzY1LDcgQEAgbGV0IHByZXBhcmUgPSAoKCkgPT4gewogICAgICAg
ICBjaGVja0xvb3BzKHByb2dyYW0pOwogICAgICAgICBjaGVja1JlY3Vyc2lvbihwcm9ncmFtKTsK
ICAgICAgICAgY2hlY2tQcm9ncmFtV3JhcHBlZChwcm9ncmFtKTsKKyAgICAgICAgY2hlY2tUeXBl
c1dpdGhBcmd1bWVudHMocHJvZ3JhbSk7CiAgICAgICAgIGZpbmRIaWdoWm9tYmllcyhwcm9ncmFt
KTsKICAgICAgICAgcHJvZ3JhbS52aXNpdChuZXcgU3RydWN0TGF5b3V0QnVpbGRlcigpKTsKICAg
ICAgICAgaW5saW5lKHByb2dyYW0pOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUHJvZ3JhbS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Byb2dy
YW0uanMKaW5kZXggMDY2MjVkOThmYzQxZTc0YzkzZGVjZTgwYjcwY2U1NWM3YWY3NGRkNS4uYWMx
ZGVmYjRmYmFhYTZlOGUxMzQyOTczNGNjZjQ5MTUzMzliYTUzOSAxMDA2NDQKLS0tIGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUHJvZ3JhbS5qcworKysgYi9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzCkBAIC00OCwxOSArNDgsMjUgQEAgY2xhc3MgUHJvZ3Jh
bSBleHRlbmRzIE5vZGUgewogICAgICAgICBpZiAoc3RhdGVtZW50IGluc3RhbmNlb2YgRnVuYykg
ewogICAgICAgICAgICAgbGV0IGFycmF5ID0gdGhpcy5fZnVuY3Rpb25zLmdldChzdGF0ZW1lbnQu
bmFtZSk7CiAgICAgICAgICAgICBpZiAoIWFycmF5KQotICAgICAgICAgICAgICAgIHRoaXMuX2Z1
bmN0aW9ucy5zZXQoc3RhdGVtZW50Lm5hbWUsIGFycmF5ID0gW10pOworICAgICAgICAgICAgICAg
IHRoaXMuZnVuY3Rpb25zLnNldChzdGF0ZW1lbnQubmFtZSwgYXJyYXkgPSBbXSk7CiAgICAgICAg
ICAgICBhcnJheS5wdXNoKHN0YXRlbWVudCk7Ci0gICAgICAgIH0gZWxzZSBpZiAoc3RhdGVtZW50
IGluc3RhbmNlb2YgVHlwZSkKLSAgICAgICAgICAgIHRoaXMuX3R5cGVzLnNldChzdGF0ZW1lbnQu
bmFtZSwgc3RhdGVtZW50KTsKLSAgICAgICAgZWxzZQorICAgICAgICB9IGVsc2UgaWYgKHN0YXRl
bWVudCBpbnN0YW5jZW9mIFR5cGUpIHsKKyAgICAgICAgICAgIGlmIChzdGF0ZW1lbnQuaXNOYXRp
dmUgJiYgc3RhdGVtZW50LnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDApIHsKKyAgICAgICAgICAg
ICAgICBsZXQgYXJyYXkgPSB0aGlzLnR5cGVzLmdldChzdGF0ZW1lbnQubmFtZSk7CisgICAgICAg
ICAgICAgICAgaWYgKCFhcnJheSkKKyAgICAgICAgICAgICAgICAgICAgdGhpcy50eXBlcy5zZXQo
c3RhdGVtZW50Lm5hbWUsIGFycmF5ID0gW10pOworICAgICAgICAgICAgICAgIGFycmF5LnB1c2go
c3RhdGVtZW50KTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgIHRoaXMudHlw
ZXMuc2V0KHN0YXRlbWVudC5uYW1lLCBzdGF0ZW1lbnQpOworICAgICAgICB9IGVsc2UKICAgICAg
ICAgICAgIHRocm93IG5ldyBFcnJvcigiU3RhdGVtZW50IGlzIG5vdCBhIGZ1bmN0aW9uIG9yIHR5
cGU6ICIgKyBzdGF0ZW1lbnQpOwotICAgICAgICB0aGlzLl90b3BMZXZlbFN0YXRlbWVudHMucHVz
aChzdGF0ZW1lbnQpOwotICAgICAgICB0aGlzLl9nbG9iYWxOYW1lQ29udGV4dC5hZGQoc3RhdGVt
ZW50KTsKKyAgICAgICAgdGhpcy50b3BMZXZlbFN0YXRlbWVudHMucHVzaChzdGF0ZW1lbnQpOwor
ICAgICAgICB0aGlzLmdsb2JhbE5hbWVDb250ZXh0LmFkZChzdGF0ZW1lbnQpOwogICAgIH0KICAg
ICAKICAgICB0b1N0cmluZygpCiAgICAgewotICAgICAgICBpZiAoIXRoaXMuX3RvcExldmVsU3Rh
dGVtZW50cy5sZW5ndGgpCisgICAgICAgIGlmICghdGhpcy50b3BMZXZlbFN0YXRlbWVudHMubGVu
Z3RoKQogICAgICAgICAgICAgcmV0dXJuICIiOwogICAgICAgICByZXR1cm4gdGhpcy5fdG9wTGV2
ZWxTdGF0ZW1lbnRzLmpvaW4oIjsiKSArICI7IjsKICAgICB9CmRpZmYgLS1naXQgYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVtb3ZlVHlwZUFyZ3VtZW50cy5qcwpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOTNkYjllNjQ3YzkyMWM5NTRlODk5OGNlMTY3NWRlN2NiNjFmMTQy
Yi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzCisrKyAvZGV2L251
bGwKQEAgLTEsNjUgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotICovCi0idXNlIHN0cmljdCI7Ci0KLWZ1bmN0aW9uIHJlbW92ZVR5cGVBcmd1bWVudHMocHJv
Z3JhbSkKLXsKLSAgICBjbGFzcyBSZW1vdmVUeXBlQXJndW1lbnRzIGV4dGVuZHMgVmlzaXRvciB7
Ci0gICAgICAgIHN0YXRpYyByZXNvbHZlTmFtZUFuZEFyZ3VtZW50cyhub2RlKQotICAgICAgICB7
Ci0gICAgICAgICAgICBpZiAoIW5vZGUudHlwZUFyZ3VtZW50cykKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gbm9kZS5uYW1lOwotCi0gICAgICAgICAgICBzd2l0Y2ggKG5vZGUubmFtZSkgewotICAg
ICAgICAgICAgY2FzZSAidmVjdG9yIjoKLSAgICAgICAgICAgICAgICBpZiAobm9kZS50eXBlQXJn
dW1lbnRzLmxlbmd0aCAhPSAyKQotICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1N5bnRh
eEVycm9yKG5vZGUub3JpZ2luU3RyaW5nLCBgJHtub2RlLm5hbWV9IHNob3VsZCBoYXZlIDIgdHlw
ZSBhcmd1bWVudHMsIGdvdCAke25vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGh9LmApOwotCi0gICAg
ICAgICAgICAgICAgY29uc3QgZWxlbWVudFR5cGVOYW1lID0gbm9kZS50eXBlQXJndW1lbnRzWzBd
Lm5hbWU7Ci0gICAgICAgICAgICAgICAgY29uc3QgbGVuZ3RoVmFsdWUgPSBub2RlLnR5cGVBcmd1
bWVudHNbMV0udmFsdWU7Ci0KLSAgICAgICAgICAgICAgICBpZiAoVmVjdG9yRWxlbWVudFR5cGVz
LmluZGV4T2YoZWxlbWVudFR5cGVOYW1lKSA8IDApCi0gICAgICAgICAgICAgICAgICAgIHRocm93
IG5ldyBXU3ludGF4RXJyb3Iobm9kZS5vcmlnaW5TdHJpbmcsIGAke2VsZW1lbnRUeXBlTmFtZX0g
aXMgbm90IGEgdmFsaWQgdmVjdG9yIGVsZW1lbnQgdHlwZS5gKTsKLSAgICAgICAgICAgICAgICBp
ZiAoVmVjdG9yRWxlbWVudFNpemVzLmluZGV4T2YobGVuZ3RoVmFsdWUpIDwgMCkKLSAgICAgICAg
ICAgICAgICAgICAgdGhyb3cgbmV3IFdTeW50YXhFcnJvcihub2RlLm9yaWdpblN0cmluZywgYCR7
bGVuZ3RoVmFsdWV9IGlzIG5vdCBhIHZhbGlkIHNpemUgZm9yIHZlY3RvcnMgd2l0aCBlbGVtZW50
IHR5cGUgJHtlbGVtZW50VHlwZU5hbWV9LmApOwotCi0gICAgICAgICAgICAgICAgcmV0dXJuIGAk
e2VsZW1lbnRUeXBlTmFtZX0ke2xlbmd0aFZhbHVlfWA7Ci0gICAgICAgICAgICAvLyBGSVhNRTog
RnVydGhlciBjYXNlcyBmb3IgbWF0cmljZXMsIHRleHR1cmVzLCBldGMuCi0gICAgICAgICAgICBk
ZWZhdWx0OgotICAgICAgICAgICAgICAgIGlmIChub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoKQot
ICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1N5bnRheEVycm9yKGAke25vZGUubmFtZX0k
e2FyZ3VtZW50cy5qb2luKCIsICIpfSBpcyBub3QgYSBwZXJtaXR0ZWQgZ2VuZXJpYyB0eXBlIG9y
IGZ1bmN0aW9uYCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIG5vZGUubmFtZTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfQotCi0gICAgICAgIHZpc2l0VHlwZVJlZihub2RlKQotICAgICAgICB7
Ci0gICAgICAgICAgICBub2RlLl9uYW1lID0gUmVtb3ZlVHlwZUFyZ3VtZW50cy5yZXNvbHZlTmFt
ZUFuZEFyZ3VtZW50cyhub2RlKTsKLSAgICAgICAgICAgIG5vZGUuX3R5cGVBcmd1bWVudHMgPSBu
dWxsOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgcHJvZ3JhbS52aXNpdChuZXcgUmVtb3ZlVHlw
ZUFyZ3VtZW50cygpKTsKLX0KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL1Jlc29sdmVOYW1lcy5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29s
dmVOYW1lcy5qcwppbmRleCAyZTQwMmM4ZDZjMGEzNjA5ODU2MWUwMjc1ZWU1M2U3NzhmZDM4NGI4
Li5iOGI1MzM0MjQ1OWFlODM5YWNmN2YwN2MyYmJhZWE5NmU4YTU0Y2RmIDEwMDY0NAotLS0gYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXNvbHZlTmFtZXMuanMKKysrIGIvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU5hbWVzLmpzCkBAIC0zMSw4ICszMSwxMyBA
QCBmdW5jdGlvbiBjcmVhdGVOYW1lUmVzb2x2ZXIocHJvZ3JhbSkKIAogZnVuY3Rpb24gcmVzb2x2
ZU5hbWVzSW5UeXBlcyhwcm9ncmFtLCBuYW1lUmVzb2x2ZXIpCiB7Ci0gICAgZm9yIChsZXQgdHlw
ZSBvZiBwcm9ncmFtLnR5cGVzLnZhbHVlcygpKQotICAgICAgICBuYW1lUmVzb2x2ZXIuZG9TdGF0
ZW1lbnQodHlwZSk7CisgICAgZm9yIChsZXQgdHlwZSBvZiBwcm9ncmFtLnR5cGVzLnZhbHVlcygp
KSB7CisgICAgICAgIGlmICh0eXBlIGluc3RhbmNlb2YgQXJyYXkpIHsKKyAgICAgICAgICAgIGZv
ciAobGV0IGNvbnN0aXR1ZW50VHlwZSBvZiB0eXBlKQorICAgICAgICAgICAgICAgIG5hbWVSZXNv
bHZlci5kb1N0YXRlbWVudChjb25zdGl0dWVudFR5cGUpOworICAgICAgICB9IGVsc2UKKyAgICAg
ICAgICAgIG5hbWVSZXNvbHZlci5kb1N0YXRlbWVudCh0eXBlKTsKKyAgICB9CiB9CiAKIGZ1bmN0
aW9uIHJlc29sdmVOYW1lc0luRnVuY3Rpb25zKHByb2dyYW0sIG5hbWVSZXNvbHZlcikKZGlmZiAt
LWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVPdmVybG9hZEltcGwu
anMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXNvbHZlT3ZlcmxvYWRJbXBsLmpz
CmluZGV4IGQwZjFlMzRkNjE3ZWEyNzI2NjQ2N2MxNjE3MDcxNTQ2NjRhNDQ5YWQuLjdhMDk3YmNh
NDcwZWNiNTZhNmVlM2RlZjUyYWFmNWY3OGI1MDY1MTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVPdmVybG9hZEltcGwuanMKKysrIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU92ZXJsb2FkSW1wbC5qcwpAQCAtMTAwLDMgKzEw
MCwyOCBAQCBmdW5jdGlvbiByZXNvbHZlT3ZlcmxvYWRJbXBsKGZ1bmN0aW9ucywgYXJndW1lbnRU
eXBlcywgcmV0dXJuVHlwZSwgYWxsb3dFbnRyeVBvaQogICAgIAogICAgIHJldHVybiB7ZmFpbHVy
ZXM6IGFtYmlndWl0eUxpc3QubWFwKG92ZXJsb2FkID0+IG5ldyBPdmVybG9hZFJlc29sdXRpb25G
YWlsdXJlKG92ZXJsb2FkLmZ1bmMsIG1lc3NhZ2UpKX07CiB9CisKK2Z1bmN0aW9uIHJlc29sdmVU
eXBlT3ZlcmxvYWRJbXBsKHR5cGVzLCB0eXBlQXJndW1lbnRzKQoreworICAgIGlmICghdHlwZXMp
CisgICAgICAgIHRocm93IG5ldyBFcnJvcigiTnVsbCB0eXBlczsgdGhhdCBzaG91bGQgaGF2ZSBi
ZWVuIGNhdWdodCBieSB0aGUgY2FsbGVyLiIpOworCisgICAgbGV0IGZhaWx1cmVzID0gW107Cisg
ICAgbGV0IHN1Y2Nlc3NlcyA9IFtdOworICAgIGZvciAobGV0IHR5cGUgb2YgdHlwZXMpIHsKKyAg
ICAgICAgbGV0IG92ZXJsb2FkID0gaW5mZXJUeXBlc0ZvclR5cGVBcmd1bWVudHModHlwZSwgdHlw
ZUFyZ3VtZW50cyk7CisgICAgICAgIGlmIChvdmVybG9hZC5mYWlsdXJlKQorICAgICAgICAgICAg
ZmFpbHVyZXMucHVzaChvdmVybG9hZC5mYWlsdXJlKTsKKyAgICAgICAgZWxzZQorICAgICAgICAg
ICAgc3VjY2Vzc2VzLnB1c2gob3ZlcmxvYWQpOworICAgIH0KKyAgICAKKyAgICBpZiAoIXN1Y2Nl
c3Nlcy5sZW5ndGgpCisgICAgICAgIHJldHVybiB7ZmFpbHVyZXM6IGZhaWx1cmVzfTsKKyAgICAK
KyAgICBpZiAoc3VjY2Vzc2VzLmxlbmd0aCA9PSAxKQorICAgICAgICByZXR1cm4gc3VjY2Vzc2Vz
WzBdOworICAgIAorICAgIGxldCBtZXNzYWdlID0gIkFtYmlndW91cyBvdmVybG9hZCAtIHR5cGVz
IG11dHVhbGx5IGFwcGxpY2FibGUiOworICAgIHJldHVybiB7ZmFpbHVyZXM6IHN1Y2Nlc3Nlcy5t
YXAob3ZlcmxvYWQgPT4gbmV3IFR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKG92ZXJsb2Fk
LnR5cGUsIG1lc3NhZ2UpKX07Cit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9SZXNvbHZlVHlwZURlZnMuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9SZXNvbHZlVHlwZURlZnMuanMKaW5kZXggOTE0M2Y4ZTFlMDBhMDQ5ODE0YjkwYTM0NWM1YWY0
NTE0NTlkODU3NC4uMDU3NGJlY2Q1NTMxNTA5NDc4YTJkZWZkYzJmZTdjNjhlNjFjM2QzNSAxMDA2
NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZVR5cGVEZWZzLmpz
CisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVUeXBlRGVmcy5qcwpA
QCAtMjcsOCArMjcsMTMgQEAKIGZ1bmN0aW9uIHJlc29sdmVUeXBlRGVmc0luVHlwZXMocHJvZ3Jh
bSkKIHsKICAgICBsZXQgcmVzb2x2ZXIgPSBuZXcgVHlwZURlZlJlc29sdmVyKCk7Ci0gICAgZm9y
IChsZXQgdHlwZSBvZiBwcm9ncmFtLnR5cGVzLnZhbHVlcygpKQotICAgICAgICB0eXBlLnZpc2l0
KHJlc29sdmVyKTsKKyAgICBmb3IgKGxldCB0eXBlIG9mIHByb2dyYW0udHlwZXMudmFsdWVzKCkp
IHsKKyAgICAgICAgaWYgKHR5cGUgaW5zdGFuY2VvZiBBcnJheSkgeworICAgICAgICAgICAgZm9y
IChsZXQgY29uc3RpdHVlbnRUeXBlIG9mIHR5cGUpCisgICAgICAgICAgICAgICAgY29uc3RpdHVl
bnRUeXBlLnZpc2l0KHJlc29sdmVyKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICB0eXBl
LnZpc2l0KHJlc29sdmVyKTsKKyAgICB9CiB9CiAKIGZ1bmN0aW9uIHJlc29sdmVUeXBlRGVmc0lu
RnVuY3Rpb25zKHByb2dyYW0pCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9SZXdyaXRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVy
LmpzCmluZGV4IGQ1NDdkMjAzZjBkYmY4Y2FiZWU0Mzc3ODAzYmQ1YjA4NGU5ODA3YmMuLmJkODNj
MzdkOWM0Nzc3MTdlMzUyMzcyOGQxNWRmNDI3OTBkYTFiMmYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL1Jld3JpdGVyLmpzCkBAIC05Nyw3ICs5Nyw3IEBAIGNsYXNzIFJld3JpdGVy
IHsKICAgICAKICAgICB2aXNpdFR5cGVSZWYobm9kZSkKICAgICB7Ci0gICAgICAgIGxldCByZXN1
bHQgPSBuZXcgVHlwZVJlZihub2RlLm9yaWdpbiwgbm9kZS5uYW1lKTsKKyAgICAgICAgbGV0IHJl
c3VsdCA9IG5ldyBUeXBlUmVmKG5vZGUub3JpZ2luLCBub2RlLm5hbWUsIG5vZGUudHlwZUFyZ3Vt
ZW50cy5tYXAoYXJndW1lbnQgPT4gYXJndW1lbnQudmlzaXQodGhpcykpKTsKICAgICAgICAgaWYg
KG5vZGUudHlwZSkKICAgICAgICAgICAgIHJlc3VsdC50eXBlID0gTm9kZS52aXNpdChub2RlLnR5
cGUsIHRoaXMpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMzgyLDkgKzM4MiwxNCBAQCBj
bGFzcyBSZXdyaXRlciB7CiAKICAgICB2aXNpdFZlY3RvclR5cGUobm9kZSkKICAgICB7Ci0gICAg
ICAgIGNvbnN0IHZlY1R5cGUgPSBuZXcgVmVjdG9yVHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1l
KTsKLSAgICAgICAgdmVjVHlwZS5fZWxlbWVudFR5cGUgPSBub2RlLmVsZW1lbnRUeXBlLnZpc2l0
KHRoaXMpOworICAgICAgICBjb25zdCB2ZWNUeXBlID0gbmV3IFZlY3RvclR5cGUobm9kZS5vcmln
aW4sIG5vZGUubmFtZSwgbm9kZS50eXBlQXJndW1lbnRzLm1hcChhcmd1bWVudCA9PiBhcmd1bWVu
dC52aXNpdCh0aGlzKSkpOwogICAgICAgICByZXR1cm4gdmVjVHlwZTsKICAgICB9CisKKyAgICB2
aXNpdE1hdHJpeFR5cGUobm9kZSkKKyAgICB7CisgICAgICAgIGNvbnN0IG1hdFR5cGUgPSBuZXcg
TWF0cml4VHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lLCBub2RlLnR5cGVBcmd1bWVudHMubWFw
KGFyZ3VtZW50ID0+IGFyZ3VtZW50LnZpc2l0KHRoaXMpKSk7CisgICAgICAgIHJldHVybiBtYXRU
eXBlOworICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvU1BJUlYuaHRtbCBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1NQSVJWLmh0bWwK
aW5kZXggYzdiMzk0MGYyYjExYmQ4OTYxNGYxNGE5YjUyYzQ3YTU2MTY2YWIxNC4uMzYyZTI2NmUy
YzhmMTZjODU4YmUyNGRhMDI1MmIxMTYyMTBiMDkzYSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TUElSVi5odG1sCkBAIC0zMiw5ICszMiw2IEBAIHRkIHsKICAgICA8c2NyaXB0IHNy
Yz0iQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBz
cmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJC
dWlsdGluVmVjdG9yU2V0dGVyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iQnVpbHRp
blZlY3RvckluZGV4R2V0dGVyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iQnVpbHRp
blZlY3RvckluZGV4U2V0dGVyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iQnVpbHRp
blZlY3RvckVxdWFsaXR5T3BlcmF0b3IuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJD
YWxsRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNhbGxGdW5jdGlv
bi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNrLmpzIj48L3NjcmlwdD4KQEAg
LTQzLDYgKzQwLDcgQEAgdGQgewogICAgIDxzY3JpcHQgc3JjPSJDaGVja1JlY3Vyc2lvbi5qcyI+
PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNrUmVjdXJzaXZlVHlwZXMuanMiPjwvc2Ny
aXB0PgogICAgIDxzY3JpcHQgc3JjPSJDaGVja1JldHVybnMuanMiPjwvc2NyaXB0PgorICAgIDxz
Y3JpcHQgc3JjPSJDaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9IkNoZWNrVW5yZWFjaGFibGVDb2RlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iQ2hlY2tXcmFwcGVkLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iQ2hlY2tl
ci5qcyI+PC9zY3JpcHQ+CkBAIC05NSw2ICs5Myw3IEBAIHRkIHsKICAgICA8c2NyaXB0IHNyYz0i
TG9vcENoZWNrZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJNYWtlQXJyYXlSZWZF
eHByZXNzaW9uLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTWFrZVB0ckV4cHJlc3Np
b24uanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJNYXRyaXhUeXBlLmpzIj48L3Njcmlw
dD4KICAgICA8c2NyaXB0IHNyYz0iTmFtZUNvbnRleHQuanMiPjwvc2NyaXB0PgogICAgIDxzY3Jp
cHQgc3JjPSJOYW1lRmluZGVyLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTmFtZVJl
c29sdmVyLmpzIj48L3NjcmlwdD4KQEAgLTEwMiw5ICsxMDEsOCBAQCB0ZCB7CiAgICAgPHNjcmlw
dCBzcmM9Ik5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3Jp
cHQgc3JjPSJOdWxsTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9Ik51bGxU
eXBlLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRlckluZGV4Lmpz
Ij48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRlckluZGV4ZXIuanMiPjwv
c2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFycmF5UmVmTGVuZ3RoLmpzIj48L3Nj
cmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JCb29sLmpzIj48L3NjcmlwdD4KICAgICA8
c2NyaXB0IHNyYz0iT3JpZ2luS2luZC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9Ik92
ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJQ
YXJzZS5qcyI+PC9zY3JpcHQ+CkBAIC0xMTYsNyArMTE0LDYgQEAgdGQgewogICAgIDxzY3JpcHQg
c3JjPSJSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iUmVjdXJzaW9uQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlJl
Y3Vyc2l2ZVR5cGVDaGVja2VyLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iUmVtb3Zl
VHlwZUFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlJlc29sdmVOYW1l
cy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlJlc29sdmVPdmVybG9hZEltcGwuanMi
Pjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJSZXNvbHZlUHJvcGVydGllcy5qcyI+PC9zY3Jp
cHQ+CkBAIC0xMzMsMTMgKzEzMCwxMyBAQCB0ZCB7CiAgICAgPHNjcmlwdCBzcmM9IlN5bnRoZXNp
emVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iU3lu
dGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJTeW50
aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iU3lu
dGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlN5bnRo
ZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBz
cmM9IlN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiAg
ICAgPHNjcmlwdCBzcmM9IlRyYXBTdGF0ZW1lbnQuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQg
c3JjPSJUeXBlRGVmLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlwZURlZlJlc29s
dmVyLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlwZVJlZi5qcyI+PC9zY3JpcHQ+
CisgICAgPHNjcmlwdCBzcmM9IlR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIj48L3Nj
cmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlwZWRWYWx1ZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9IlVpbnRMaXRlcmFsLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVWlu
dExpdGVyYWxUeXBlLmpzIj48L3NjcmlwdD4KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFyeS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL1N0YW5kYXJkTGlicmFyeS5qcwppbmRleCAwNmIyNTFjZjBhMjQ4MTljYWI1MDY1ZWY1
NDQ1ZTE0ODlkNWVhYWZjLi40MzIxYzU0MDA2N2Q4ZTU4OTgwNGNkODdjOWNhMmRkMGYxNWQ2Y2Ux
IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGFuZGFyZExpYnJh
cnkuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhbmRhcmRMaWJyYXJ5
LmpzCkBAIC0zMyw1MiArMzMsNjQzIEBAIGxldCBzdGFuZGFyZExpYnJhcnkgPSBgCiBuYXRpdmUg
dHlwZWRlZiB2b2lkOwogbmF0aXZlIHR5cGVkZWYgYm9vbDsKIG5hdGl2ZSB0eXBlZGVmIHVjaGFy
OworbmF0aXZlIHR5cGVkZWYgdXNob3J0OwogbmF0aXZlIHR5cGVkZWYgdWludDsKK25hdGl2ZSB0
eXBlZGVmIGNoYXI7CituYXRpdmUgdHlwZWRlZiBzaG9ydDsKIG5hdGl2ZSB0eXBlZGVmIGludDsK
K25hdGl2ZSB0eXBlZGVmIGhhbGY7CiBuYXRpdmUgdHlwZWRlZiBmbG9hdDsKK25hdGl2ZSB0eXBl
ZGVmIGF0b21pY19pbnQ7CituYXRpdmUgdHlwZWRlZiBhdG9taWNfdWludDsKIAotLy8gRklYTUU6
IEFkZCBzdXBwb3J0IGZvciB0aGVzZSB0eXBlcyB0byBJbnRyaW5zaWNzLmpzCi0vLyBuYXRpdmUg
dHlwZWRlZiB1c2hvcnQ7Ci0vLyBuYXRpdmUgdHlwZWRlZiBjaGFyOwotLy8gbmF0aXZlIHR5cGVk
ZWYgc2hvcnQ7Ci0vLyBuYXRpdmUgdHlwZWRlZiBoYWxmOwotLy8gbmF0aXZlIHR5cGVkZWYgYXRv
bWljX2ludDsKLS8vIG5hdGl2ZSB0eXBlZGVmIGF0b21pY191aW50OworbmF0aXZlIHR5cGVkZWYg
dmVjdG9yPGJvb2wsIDI+OwordHlwZWRlZiBib29sMiA9IHZlY3Rvcjxib29sLCAyPjsKK25hdGl2
ZSB0eXBlZGVmIHZlY3Rvcjxib29sLCAzPjsKK3R5cGVkZWYgYm9vbDMgPSB2ZWN0b3I8Ym9vbCwg
Mz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8Ym9vbCwgND47Cit0eXBlZGVmIGJvb2w0ID0gdmVj
dG9yPGJvb2wsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVjaGFyLCAyPjsKK3R5cGVkZWYg
dWNoYXIyID0gdmVjdG9yPHVjaGFyLCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjx1Y2hhciwg
Mz47Cit0eXBlZGVmIHVjaGFyMyA9IHZlY3Rvcjx1Y2hhciwgMz47CituYXRpdmUgdHlwZWRlZiB2
ZWN0b3I8dWNoYXIsIDQ+OwordHlwZWRlZiB1Y2hhcjQgPSB2ZWN0b3I8dWNoYXIsIDQ+OworbmF0
aXZlIHR5cGVkZWYgdmVjdG9yPHVzaG9ydCwgMj47Cit0eXBlZGVmIHVzaG9ydDIgPSB2ZWN0b3I8
dXNob3J0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjx1c2hvcnQsIDM+OwordHlwZWRlZiB1
c2hvcnQzID0gdmVjdG9yPHVzaG9ydCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8dXNob3J0
LCA0PjsKK3R5cGVkZWYgdXNob3J0NCA9IHZlY3Rvcjx1c2hvcnQsIDQ+OworbmF0aXZlIHR5cGVk
ZWYgdmVjdG9yPHVpbnQsIDI+OwordHlwZWRlZiB1aW50MiA9IHZlY3Rvcjx1aW50LCAyPjsKK25h
dGl2ZSB0eXBlZGVmIHZlY3Rvcjx1aW50LCAzPjsKK3R5cGVkZWYgdWludDMgPSB2ZWN0b3I8dWlu
dCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8dWludCwgND47Cit0eXBlZGVmIHVpbnQ0ID0g
dmVjdG9yPHVpbnQsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGNoYXIsIDI+OwordHlwZWRl
ZiBjaGFyMiA9IHZlY3RvcjxjaGFyLCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxjaGFyLCAz
PjsKK3R5cGVkZWYgY2hhcjMgPSB2ZWN0b3I8Y2hhciwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0
b3I8Y2hhciwgND47Cit0eXBlZGVmIGNoYXI0ID0gdmVjdG9yPGNoYXIsIDQ+OworbmF0aXZlIHR5
cGVkZWYgdmVjdG9yPHNob3J0LCAyPjsKK3R5cGVkZWYgc2hvcnQyID0gdmVjdG9yPHNob3J0LCAy
PjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxzaG9ydCwgMz47Cit0eXBlZGVmIHNob3J0MyA9IHZl
Y3RvcjxzaG9ydCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8c2hvcnQsIDQ+OwordHlwZWRl
ZiBzaG9ydDQgPSB2ZWN0b3I8c2hvcnQsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGludCwg
Mj47Cit0eXBlZGVmIGludDIgPSB2ZWN0b3I8aW50LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rv
cjxpbnQsIDM+OwordHlwZWRlZiBpbnQzID0gdmVjdG9yPGludCwgMz47CituYXRpdmUgdHlwZWRl
ZiB2ZWN0b3I8aW50LCA0PjsKK3R5cGVkZWYgaW50NCA9IHZlY3RvcjxpbnQsIDQ+OworbmF0aXZl
IHR5cGVkZWYgdmVjdG9yPGhhbGYsIDI+OwordHlwZWRlZiBoYWxmMiA9IHZlY3RvcjxoYWxmLCAy
PjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxoYWxmLCAzPjsKK3R5cGVkZWYgaGFsZjMgPSB2ZWN0
b3I8aGFsZiwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8aGFsZiwgND47Cit0eXBlZGVmIGhh
bGY0ID0gdmVjdG9yPGhhbGYsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGZsb2F0LCAyPjsK
K3R5cGVkZWYgZmxvYXQyID0gdmVjdG9yPGZsb2F0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rv
cjxmbG9hdCwgMz47Cit0eXBlZGVmIGZsb2F0MyA9IHZlY3RvcjxmbG9hdCwgMz47CituYXRpdmUg
dHlwZWRlZiB2ZWN0b3I8ZmxvYXQsIDQ+OwordHlwZWRlZiBmbG9hdDQgPSB2ZWN0b3I8ZmxvYXQs
IDQ+OwogCi1uYXRpdmUgb3BlcmF0b3IgaW50KHVpbnQpOwotbmF0aXZlIG9wZXJhdG9yIGludCh1
Y2hhcik7Ci1uYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKLW5hdGl2ZSBvcGVyYXRvciB1aW50
KGludCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWludCh1Y2hhcik7Ci1uYXRpdmUgb3BlcmF0b3IgdWlu
dChmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWNoYXIoaW50KTsKK25hdGl2ZSB0eXBlZGVmIG1h
dHJpeDxoYWxmLCAyLCAyPjsKK3R5cGVkZWYgaGFsZjJ4MiA9IG1hdHJpeDxoYWxmLCAyLCAyPjsK
K25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCAzPjsKK3R5cGVkZWYgaGFsZjJ4MyA9IG1h
dHJpeDxoYWxmLCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCA0PjsKK3R5
cGVkZWYgaGFsZjJ4NCA9IG1hdHJpeDxoYWxmLCAyLCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJp
eDxoYWxmLCAzLCAyPjsKK3R5cGVkZWYgaGFsZjN4MiA9IG1hdHJpeDxoYWxmLCAzLCAyPjsKK25h
dGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCAzPjsKK3R5cGVkZWYgaGFsZjN4MyA9IG1hdHJp
eDxoYWxmLCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCA0PjsKK3R5cGVk
ZWYgaGFsZjN4NCA9IG1hdHJpeDxoYWxmLCAzLCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxo
YWxmLCA0LCAyPjsKK3R5cGVkZWYgaGFsZjR4MiA9IG1hdHJpeDxoYWxmLCA0LCAyPjsKK25hdGl2
ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCAzPjsKK3R5cGVkZWYgaGFsZjR4MyA9IG1hdHJpeDxo
YWxmLCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCA0PjsKK3R5cGVkZWYg
aGFsZjR4NCA9IG1hdHJpeDxoYWxmLCA0LCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9h
dCwgMiwgMj47Cit0eXBlZGVmIGZsb2F0MngyID0gbWF0cml4PGZsb2F0LCAyLCAyPjsKK25hdGl2
ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgMz47Cit0eXBlZGVmIGZsb2F0MngzID0gbWF0cml4
PGZsb2F0LCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgND47Cit0eXBl
ZGVmIGZsb2F0Mng0ID0gbWF0cml4PGZsb2F0LCAyLCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJp
eDxmbG9hdCwgMywgMj47Cit0eXBlZGVmIGZsb2F0M3gyID0gbWF0cml4PGZsb2F0LCAzLCAyPjsK
K25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgMz47Cit0eXBlZGVmIGZsb2F0M3gzID0g
bWF0cml4PGZsb2F0LCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgND47
Cit0eXBlZGVmIGZsb2F0M3g0ID0gbWF0cml4PGZsb2F0LCAzLCA0PjsKK25hdGl2ZSB0eXBlZGVm
IG1hdHJpeDxmbG9hdCwgNCwgMj47Cit0eXBlZGVmIGZsb2F0NHgyID0gbWF0cml4PGZsb2F0LCA0
LCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgNCwgMz47Cit0eXBlZGVmIGZsb2F0
NHgzID0gbWF0cml4PGZsb2F0LCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwg
NCwgND47Cit0eXBlZGVmIGZsb2F0NHg0ID0gbWF0cml4PGZsb2F0LCA0LCA0PjsKKworbmF0aXZl
IHR5cGVkZWYgc2FtcGxlcjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxib29sPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxRDxib29sMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Ym9v
bDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dWNoYXIyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxRDx1Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHVj
aGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1c2hvcnQzPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUxRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1aW50Mj47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMUQ8dWludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHVpbnQ0PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUx
RDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEPGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxzaG9ydD47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUx
RDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHNob3J0ND47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMUQ8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxpbnQyPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxp
bnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aGFsZjM+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTFEPGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxmbG9h
dD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8ZmxvYXQyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGZsb2F0ND47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxRDxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFE
PGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGJvb2wzPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTFEPGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVjaGFy
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUxRDx1Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8dWNoYXI0PjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUxRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVzaG9ydDM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUxRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVpbnQyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFE
PHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNoYXI+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMUQ8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8Y2hhcjM+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMUQ8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8c2hvcnQyPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUxRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aW50PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEPGludDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aW50
Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTFEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aGFsZjI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MUQ8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8ZmxvYXQ+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlMUQ8ZmxvYXQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGZs
b2F0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxmbG9hdDQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxi
b29sMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxib29sMz47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMURBcnJheTxib29sND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJh
eTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1Y2hhcjI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUx
REFycmF5PHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1c2hvcnQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMURBcnJheTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHVz
aG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWludD47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMURBcnJheTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJh
eTx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1aW50ND47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFy
cmF5PGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGNoYXIzPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUx
REFycmF5PHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHNob3J0Mj47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTFEQXJyYXk8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGludD47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxREFycmF5PGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8aW50ND47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxREFycmF5PGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGhhbGYz
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGZs
b2F0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxmbG9hdDM+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTFEQXJyYXk8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFE
QXJyYXk8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGJvb2wyPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMURBcnJheTxib29sND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVj
aGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWNoYXIyPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTFEQXJyYXk8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dXNob3J0
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dXNob3J0Mj47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MURBcnJheTx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWludD47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTFEQXJyYXk8dWludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJh
eTx1aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGNoYXI+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUxREFycmF5PGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Y2hhcjQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxzaG9ydD47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUxREFycmF5PHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFy
cmF5PHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHNob3J0ND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGludD47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUxREFycmF5PGludDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxpbnQz
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aW50ND47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUxREFycmF5PGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJh
eTxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGhhbGYzPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMURBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGZsb2F0
Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGZsb2F0Mz47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxREFycmF5PGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8
Ym9vbD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxib29sND47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVj
aGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUyRDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVzaG9ydD47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkQ8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dXNob3J0ND47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMkQ8dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWludDI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUyRDx1aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Y2hhcj47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMkQ8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGNoYXIzPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkQ8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHNob3J0Mj47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMkQ8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxzaG9ydDQ+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkQ8aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aW50Mz47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkQ8aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aGFsZj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGhh
bGYzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxoYWxmND47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMkQ8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGZsb2F0Mj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxm
bG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9vbD47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUyRDxib29sMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxib29sMz47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxib29sND47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1Y2hhcjI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1c2hvcnQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMkQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
RDx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHVzaG9ydDQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMkQ8dWludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1
aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1aW50Mz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUyRDx1aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxjaGFyPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTJEPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGNoYXI0PjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJE
PHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxzaG9ydDM+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlMkQ8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGlu
dD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTJEPGludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8aW50ND47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUyRDxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJE
PGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGhhbGYzPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEPGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGZsb2F0
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUyRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8ZmxvYXQ0PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEQXJyYXk8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Ym9vbDM+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEQXJyYXk8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWNo
YXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVjaGFyMz47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMkRBcnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJy
YXk8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVzaG9ydDI+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMkRBcnJheTx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVpbnQ+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWludDI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEQXJyYXk8dWludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWlu
dDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hhcj47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkRBcnJheTxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxj
aGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxjaGFyND47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMkRBcnJheTxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJh
eTxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8c2hvcnQzPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkRBcnJheTxpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aW50Mj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUy
REFycmF5PGludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aGFsZj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkRBcnJheTxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxoYWxmND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMkRBcnJheTxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8ZmxvYXQz
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGZsb2F0ND47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUyREFycmF5PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJh
eTxib29sMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGJvb2wzPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkRBcnJheTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVjaGFy
Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVjaGFyMz47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUyREFycmF5PHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
REFycmF5PHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVzaG9ydDI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEQXJyYXk8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
REFycmF5PHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1aW50Mj47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTJEQXJyYXk8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxj
aGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8Y2hhcjI+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlMkRBcnJheTxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
REFycmF5PGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8c2hvcnQ+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkRBcnJheTxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJh
eTxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxpbnQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEQXJyYXk8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGludDQ+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTJEQXJyYXk8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxo
YWxmMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGhhbGY0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MkRBcnJheTxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxmbG9hdDM+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxmbG9hdDQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTNEPGJvb2w+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGJvb2wyPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxib29sMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8
Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUzRDx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVjaGFyMz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUz
RDx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVzaG9ydDI+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTNEPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVzaG9y
dDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTNEPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1aW50Mz47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlM0Q8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGNoYXI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUzRDxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8Y2hhcjQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTNEPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxzaG9ydDI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlM0Q8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxpbnQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTNEPGludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGludDM+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNE
PGhhbGY+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUzRDxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8aGFsZjQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxm
bG9hdDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlM0Q8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGJvb2w+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlM0Q8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Ym9vbDQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlM0Q8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8
dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVjaGFyMz47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUzRDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dXNo
b3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVzaG9ydDI+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlM0Q8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1c2hv
cnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlM0Q8dWludDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWludDM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlM0Q8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxjaGFyMj47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUzRDxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxj
aGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9ydD47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUzRDxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8c2hvcnQz
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUzRDxpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aW50Mj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUzRDxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNE
PGludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFsZj47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUzRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxoYWxmMz47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxoYWxmND47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUzRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxmbG9hdDI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTNEPGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxib29sPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmVDdWJlPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGJv
b2wzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmVDdWJlPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVjaGFyMj47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZUN1YmU8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVzaG9ydD47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmVDdWJlPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dXNob3J0ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVD
dWJlPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVpbnQzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmVDdWJlPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGNo
YXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZUN1YmU8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Y2hhcjQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZUN1YmU8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHNob3J0Mz47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1
YmU8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGludDI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZUN1YmU8aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxpbnQ0PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZUN1YmU8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aGFsZjM+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZUN1YmU8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8
ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8ZmxvYXQyPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmVDdWJlPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxmbG9h
dDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoMkQ8ZmxvYXQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZURlcHRoMkQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmVEZXB0aDJE
PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZURlcHRoMkQ8aGFsZj47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlRGVwdGgyREFycmF5PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmVEZXB0aDJEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmVEZXB0aDJEQXJy
YXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVwdGgyREFycmF5PGhhbGY+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoQ3ViZTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlRGVwdGhDdWJlPGhhbGY+OworCituYXRpdmUgb3BlcmF0b3IgdWNoYXIodXNob3J0KTsK
IG5hdGl2ZSBvcGVyYXRvciB1Y2hhcih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1Y2hhcihjaGFy
KTsKK25hdGl2ZSBvcGVyYXRvciB1Y2hhcihzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdWNoYXIo
aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1Y2hhcihoYWxmKTsKIG5hdGl2ZSBvcGVyYXRvciB1Y2hh
cihmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KTsKLW5hdGl2ZSBvcGVyYXRvciBm
bG9hdCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQodWNoYXIpOworbmF0aXZlIG9wZXJh
dG9yIHVzaG9ydCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQoY2hhcik7CituYXRpdmUg
b3BlcmF0b3IgdXNob3J0KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQoaW50KTsKK25h
dGl2ZSBvcGVyYXRvciB1c2hvcnQoaGFsZik7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KGZsb2F0
KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KHVz
aG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdWludChjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciB1aW50
KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGludCk7CituYXRpdmUgb3BlcmF0b3IgdWlu
dChoYWxmKTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciBj
aGFyKHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKHVzaG9ydCk7CituYXRpdmUgb3BlcmF0
b3IgY2hhcih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKHNob3J0KTsKK25hdGl2ZSBvcGVy
YXRvciBjaGFyKGludCk7CituYXRpdmUgb3BlcmF0b3IgY2hhcihoYWxmKTsKK25hdGl2ZSBvcGVy
YXRvciBjaGFyKGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydCh1Y2hhcik7CituYXRpdmUg
b3BlcmF0b3Igc2hvcnQodXNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydCh1aW50KTsKK25h
dGl2ZSBvcGVyYXRvciBzaG9ydChjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydChpbnQpOwor
bmF0aXZlIG9wZXJhdG9yIHNob3J0KGhhbGYpOworbmF0aXZlIG9wZXJhdG9yIHNob3J0KGZsb2F0
KTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodWNoYXIpOworbmF0aXZlIG9wZXJhdG9yIGludCh1c2hv
cnQpOworbmF0aXZlIG9wZXJhdG9yIGludCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBpbnQoY2hh
cik7CituYXRpdmUgb3BlcmF0b3IgaW50KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBpbnQoaGFs
Zik7CituYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKHVj
aGFyKTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgaGFs
Zih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKGNoYXIpOworbmF0aXZlIG9wZXJhdG9yIGhh
bGYoc2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGhhbGYoaW50KTsKK25hdGl2ZSBvcGVyYXRvciBo
YWxmKGZsb2F0KTsKIG5hdGl2ZSBvcGVyYXRvciBmbG9hdCh1Y2hhcik7CituYXRpdmUgb3BlcmF0
b3IgZmxvYXQodXNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBmbG9hdCh1aW50KTsKK25hdGl2ZSBv
cGVyYXRvciBmbG9hdChjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBmbG9hdChzaG9ydCk7CituYXRp
dmUgb3BlcmF0b3IgZmxvYXQoaW50KTsKK25hdGl2ZSBvcGVyYXRvciBmbG9hdChoYWxmKTsKKwor
b3BlcmF0b3IgYm9vbCh1Y2hhciB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9y
IGJvb2wodXNob3J0IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbCh1
aW50IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChjaGFyIHgpIHsK
KyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChzaG9ydCB4KSB7CisgICAgcmV0
dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woaW50IHgpIHsKKyAgICByZXR1cm4geCAhPSAw
OworfQorb3BlcmF0b3IgYm9vbChoYWxmIHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3Bl
cmF0b3IgYm9vbChmbG9hdCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KKworbmF0aXZlIG9w
ZXJhdG9yIGludChhdG9taWNfaW50KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGF0b21pY191aW50
KTsKIAorbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShib29sLCBib29sKTsKK2Jvb2wgb3BlcmF0b3Im
KGJvb2wgYSwgYm9vbCBiKSB7CisgICAgcmV0dXJuIGEgJiYgYjsKK30KK2Jvb2wgb3BlcmF0b3J8
KGJvb2wgYSwgYm9vbCBiKSB7CisgICAgcmV0dXJuIGEgfHwgYjsKK30KK2Jvb2wgb3BlcmF0b3Je
KGJvb2wgYSwgYm9vbCBiKSB7CisgICAgaWYgKGEpCisgICAgICAgIHJldHVybiAhYjsKKyAgICBy
ZXR1cm4gYjsKK30KK2Jvb2wgb3BlcmF0b3J+KGJvb2wgdmFsdWUpIHsKKyAgICByZXR1cm4gIXZh
bHVlOworfQogbmF0aXZlIGludCBvcGVyYXRvcisoaW50LCBpbnQpOwotbmF0aXZlIHVpbnQgb3Bl
cmF0b3IrKHVpbnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3IrKHVjaGFyIGEsIHVjaGFyIGIpIHsg
cmV0dXJuIHVjaGFyKHVpbnQoYSkgKyB1aW50KGIpKTsgfQotbmF0aXZlIGZsb2F0IG9wZXJhdG9y
KyhmbG9hdCwgZmxvYXQpOwotaW50IG9wZXJhdG9yKysoaW50IHZhbHVlKSB7IHJldHVybiB2YWx1
ZSArIDE7IH0KLXVpbnQgb3BlcmF0b3IrKyh1aW50IHZhbHVlKSB7IHJldHVybiB2YWx1ZSArIDE7
IH0KLXVjaGFyIG9wZXJhdG9yKysodWNoYXIgdmFsdWUpIHsgcmV0dXJuIHZhbHVlICsgMTsgfQog
bmF0aXZlIGludCBvcGVyYXRvci0oaW50LCBpbnQpOwotbmF0aXZlIHVpbnQgb3BlcmF0b3ItKHVp
bnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3ItKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVj
aGFyKHVpbnQoYSkgLSB1aW50KGIpKTsgfQotbmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCwg
ZmxvYXQpOwotaW50IG9wZXJhdG9yLS0oaW50IHZhbHVlKSB7IHJldHVybiB2YWx1ZSAtIDE7IH0K
LXVpbnQgb3BlcmF0b3ItLSh1aW50IHZhbHVlKSB7IHJldHVybiB2YWx1ZSAtIDE7IH0KLXVjaGFy
IG9wZXJhdG9yLS0odWNoYXIgdmFsdWUpIHsgcmV0dXJuIHZhbHVlIC0gMTsgfQogbmF0aXZlIGlu
dCBvcGVyYXRvciooaW50LCBpbnQpOwotbmF0aXZlIHVpbnQgb3BlcmF0b3IqKHVpbnQsIHVpbnQp
OwotdWNoYXIgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQo
YSkgKiB1aW50KGIpKTsgfQotbmF0aXZlIGZsb2F0IG9wZXJhdG9yKihmbG9hdCwgZmxvYXQpOwog
bmF0aXZlIGludCBvcGVyYXRvci8oaW50LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShp
bnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjwoaW50LCBpbnQpOworbmF0aXZlIGJvb2wg
b3BlcmF0b3I8PShpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4oaW50LCBpbnQpOwor
bmF0aXZlIGJvb2wgb3BlcmF0b3I+PShpbnQsIGludCk7CituYXRpdmUgdWludCBvcGVyYXRvciso
dWludCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvci0odWludCwgdWludCk7CituYXRpdmUg
dWludCBvcGVyYXRvcioodWludCwgdWludCk7CiBuYXRpdmUgdWludCBvcGVyYXRvci8odWludCwg
dWludCk7Ci11Y2hhciBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIgYikgeyByZXR1cm4gdWNoYXIo
dWludChhKSAvIHVpbnQoYikpOyB9CituYXRpdmUgYm9vbCBvcGVyYXRvcj09KHVpbnQsIHVpbnQp
OworbmF0aXZlIGJvb2wgb3BlcmF0b3I8KHVpbnQsIHVpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0
b3I8PSh1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPih1aW50LCB1aW50KTsKK25h
dGl2ZSBib29sIG9wZXJhdG9yPj0odWludCwgdWludCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3Ir
KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3ItKGZsb2F0LCBmbG9hdCk7Citu
YXRpdmUgZmxvYXQgb3BlcmF0b3IqKGZsb2F0LCBmbG9hdCk7CituYXRpdmUgZmxvYXQgb3BlcmF0
b3IvKGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj09KGZsb2F0LCBmbG9hdCk7
CituYXRpdmUgYm9vbCBvcGVyYXRvcjwoZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBib29sIG9wZXJh
dG9yPD0oZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPihmbG9hdCwgZmxvYXQp
OworbmF0aXZlIGJvb2wgb3BlcmF0b3I+PShmbG9hdCwgZmxvYXQpOwogbmF0aXZlIGludCBvcGVy
YXRvciYoaW50LCBpbnQpOwogbmF0aXZlIGludCBvcGVyYXRvcnwoaW50LCBpbnQpOwogbmF0aXZl
IGludCBvcGVyYXRvcl4oaW50LCBpbnQpOwpAQCAtOTEsMTEwICs2ODIsMjc0OCBAQCBuYXRpdmUg
dWludCBvcGVyYXRvcl4odWludCwgdWludCk7CiBuYXRpdmUgdWludCBvcGVyYXRvcn4odWludCk7
CiBuYXRpdmUgdWludCBvcGVyYXRvcjw8KHVpbnQsIHVpbnQpOwogbmF0aXZlIHVpbnQgb3BlcmF0
b3I+Pih1aW50LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yJih1Y2hhciBhLCB1Y2hhciBiKSB7IHJl
dHVybiB1Y2hhcih1aW50KGEpICYgdWludChiKSk7IH0KLXVjaGFyIG9wZXJhdG9yfCh1Y2hhciBh
LCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpIHwgdWludChiKSk7IH0KLXVjaGFyIG9w
ZXJhdG9yXih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpIF4gdWludChi
KSk7IH0KLXVjaGFyIG9wZXJhdG9yfih1Y2hhciB2YWx1ZSkgeyByZXR1cm4gdWNoYXIofnVpbnQo
dmFsdWUpKTsgfQotdWNoYXIgb3BlcmF0b3I8PCh1Y2hhciBhLCB1aW50IGIpIHsgcmV0dXJuIHVj
aGFyKHVpbnQoYSkgPDwgKGIgJiA3KSk7IH0KLXVjaGFyIG9wZXJhdG9yPj4odWNoYXIgYSwgdWlu
dCBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpID4+IChiICYgNykpOyB9Ci1uYXRpdmUgZmxvYXQg
b3BlcmF0b3IvKGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGludCwgaW50
KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPT0odWludCwgdWludCk7Ci1ib29sIG9wZXJhdG9yPT0o
dWNoYXIgYSwgdWNoYXIgYikgeyByZXR1cm4gdWludChhKSA9PSB1aW50KGIpOyB9Ci1uYXRpdmUg
Ym9vbCBvcGVyYXRvcj09KGJvb2wsIGJvb2wpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShmbG9h
dCwgZmxvYXQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCwgaW50KTsKLW5hdGl2ZSBib29s
IG9wZXJhdG9yPCh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I8KHVjaGFyIGEsIHVjaGFyIGIp
IHsgcmV0dXJuIHVpbnQoYSkgPCB1aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcjwoZmxv
YXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPD0oaW50LCBpbnQpOwotbmF0aXZlIGJv
b2wgb3BlcmF0b3I8PSh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I8PSh1Y2hhciBhLCB1Y2hh
ciBiKSB7IHJldHVybiB1aW50KGEpIDw9IHVpbnQoYik7IH0KLW5hdGl2ZSBib29sIG9wZXJhdG9y
PD0oZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPihpbnQsIGludCk7Ci1uYXRp
dmUgYm9vbCBvcGVyYXRvcj4odWludCwgdWludCk7Ci1ib29sIG9wZXJhdG9yPih1Y2hhciBhLCB1
Y2hhciBiKSB7IHJldHVybiB1aW50KGEpID4gdWludChiKTsgfQotbmF0aXZlIGJvb2wgb3BlcmF0
b3I+KGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj49KGludCwgaW50KTsKLW5h
dGl2ZSBib29sIG9wZXJhdG9yPj0odWludCwgdWludCk7Ci1ib29sIG9wZXJhdG9yPj0odWNoYXIg
YSwgdWNoYXIgYikgeyByZXR1cm4gdWludChhKSA+PSB1aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBv
cGVyYXRvcj49KGZsb2F0LCBmbG9hdCk7Ci0KLWJvb2wgb3BlcmF0b3ImKGJvb2wgYSwgYm9vbCBi
KQotewotICAgIGlmIChhKQotICAgICAgICByZXR1cm4gYjsKLSAgICByZXR1cm4gZmFsc2U7Cit1
Y2hhciBvcGVyYXRvcisodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50
KGEpICsgdWludChiKSk7CiB9Ci0KLWJvb2wgb3BlcmF0b3J8KGJvb2wgYSwgYm9vbCBiKQotewot
ICAgIGlmIChhKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBpZiAoYikKLSAgICAgICAgcmV0
dXJuIHRydWU7Ci0gICAgcmV0dXJuIGZhbHNlOwordWNoYXIgb3BlcmF0b3ItKHVjaGFyIGEsIHVj
aGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSAtIHVpbnQoYikpOwogfQotCi1ib29s
IG9wZXJhdG9yXihib29sIGEsIGJvb2wgYikKLXsKLSAgICBpZiAoYSkKLSAgICAgICAgcmV0dXJu
ICFiOwotICAgIHJldHVybiBiOwordWNoYXIgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyIGIpIHsK
KyAgICByZXR1cm4gdWNoYXIodWludChhKSAqIHVpbnQoYikpOwogfQotCi1ib29sIG9wZXJhdG9y
fihib29sIHZhbHVlKQotewotICAgIHJldHVybiAhdmFsdWU7Cit1Y2hhciBvcGVyYXRvci8odWNo
YXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIC8gdWludChiKSk7CiB9
Ci0KLW5hdGl2ZSB0eXBlZGVmIHVjaGFyMjsKLW5hdGl2ZSB0eXBlZGVmIHVjaGFyMzsKLW5hdGl2
ZSB0eXBlZGVmIHVjaGFyNDsKLQotbmF0aXZlIHR5cGVkZWYgdWludDI7Ci1uYXRpdmUgdHlwZWRl
ZiB1aW50MzsKLW5hdGl2ZSB0eXBlZGVmIHVpbnQ0OwotCi1uYXRpdmUgdHlwZWRlZiBpbnQyOwot
bmF0aXZlIHR5cGVkZWYgaW50MzsKLW5hdGl2ZSB0eXBlZGVmIGludDQ7Ci0KLW5hdGl2ZSB0eXBl
ZGVmIGZsb2F0MjsKLW5hdGl2ZSB0eXBlZGVmIGZsb2F0MzsKLW5hdGl2ZSB0eXBlZGVmIGZsb2F0
NDsKLWA7Ci0KLS8vIEZJWE1FOiBPbmNlIHRoZSBzdGFuZGFyZCBsaWJyYXJ5IGhhcyBiZWVuIHJl
cGxhY2VkIHdpdGggYSBuZXcgdmVyc2lvbiwgdGhpcyBjb21tZW50cyBzaG91bGQgYmUgcmVtb3Zl
ZC4KLS8vIFRoaXMgbGlzdCBpcyB1c2VkIHRvIHJlc3RyaWN0IHRoZSBhdmFpbGFiaWxpdHkgb2Yg
dmVjdG9yIHR5cGVzIGF2YWlsYWJsZSBpbiB0aGUgbGFuZ2F1Z2UuCi0vLyBQZXJtaXNzaWJsZSB2
ZWN0b3IgZWxlbWVudCB0eXBlcyBtdXN0IGFwcGVhciBpbiB0aGlzIGxpc3QgYW5kIGluIHRoZSBz
dGFuZGFyZCBsaWJyYXJ5Ci1jb25zdCBWZWN0b3JFbGVtZW50VHlwZXMgPSBbIC8qImJvb2wiLCov
ICJ1Y2hhciIsIC8qImNoYXIiLCAidXNob3J0IiwgInNob3J0IiwqLyAidWludCIsICJpbnQiLCAv
KiAiaGFsZiIsICovImZsb2F0IiBdOwotY29uc3QgVmVjdG9yRWxlbWVudFNpemVzID0gWyAyLCAz
LCA0IF07Ci0KLWZ1bmN0aW9uIGFsbFZlY3RvclR5cGVOYW1lcygpCi17Ci0gICAgY29uc3QgbmFt
ZXMgPSBbXTsKLSAgICBmb3IgKGxldCBlbGVtZW50VHlwZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMp
IHsKLSAgICAgICAgZm9yIChsZXQgc2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpCi0gICAgICAg
ICAgICBuYW1lcy5wdXNoKGAke2VsZW1lbnRUeXBlfSR7c2l6ZX1gKTsKLSAgICB9Ci0gICAgcmV0
dXJuIG5hbWVzOwordWNoYXIgb3BlcmF0b3ImKHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1
cm4gdWNoYXIodWludChhKSAmIHVpbnQoYikpOwogfQordWNoYXIgb3BlcmF0b3J8KHVjaGFyIGEs
IHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSB8IHVpbnQoYikpOworfQordWNo
YXIgb3BlcmF0b3JeKHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChh
KSBeIHVpbnQoYikpOworfQordWNoYXIgb3BlcmF0b3J+KHVjaGFyIGEpIHsKKyAgICByZXR1cm4g
dWNoYXIofnVpbnQoYSkpOworfQorYm9vbCBvcGVyYXRvcj09KHVjaGFyIGEsIHVjaGFyIGIpIHsK
KyAgICByZXR1cm4gdWludChhKSA9PSB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcjwodWNoYXIg
YSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEpIDwgdWludChiKTsKK30KK2Jvb2wgb3Bl
cmF0b3I8PSh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJuIHVpbnQoYSkgPD0gdWludChi
KTsKK30KK2Jvb2wgb3BlcmF0b3I+KHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWlu
dChhKSA+IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0odWNoYXIgYSwgdWNoYXIgYikgewor
ICAgIHJldHVybiB1aW50KGEpID49IHVpbnQoYik7Cit9Cit1c2hvcnQgb3BlcmF0b3IrKHVzaG9y
dCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWludChhKSArIHVpbnQoYikpOwor
fQordXNob3J0IG9wZXJhdG9yLSh1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4gdXNo
b3J0KHVpbnQoYSkgLSB1aW50KGIpKTsKK30KK3VzaG9ydCBvcGVyYXRvcioodXNob3J0IGEsIHVz
aG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpICogdWludChiKSk7Cit9Cit1c2hv
cnQgb3BlcmF0b3IvKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWlu
dChhKSAvIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yJih1c2hvcnQgYSwgdXNob3J0IGIp
IHsKKyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgJiB1aW50KGIpKTsKK30KK3VzaG9ydCBvcGVy
YXRvcnwodXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpIHwg
dWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3JeKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAg
IHJldHVybiB1c2hvcnQodWludChhKSBeIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yfih1
c2hvcnQgYSkgeworICAgIHJldHVybiB1c2hvcnQofnVpbnQoYSkpOworfQorYm9vbCBvcGVyYXRv
cj09KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpID09IHVpbnQoYik7
Cit9Citib29sIG9wZXJhdG9yPCh1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4gdWlu
dChhKSA8IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPD0odXNob3J0IGEsIHVzaG9ydCBiKSB7
CisgICAgcmV0dXJuIHVpbnQoYSkgPD0gdWludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+KHVzaG9y
dCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpID4gdWludChiKTsKK30KK2Jvb2wg
b3BlcmF0b3I+PSh1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4gdWludChhKSA+PSB1
aW50KGIpOworfQordWNoYXIgb3BlcmF0b3I8PCh1Y2hhciBhLCB1aW50IGIpIHsKKyAgICByZXR1
cm4gdWNoYXIodWludChhKSA8PCAoYiAmIDI1NSkpOworfQordXNob3J0IG9wZXJhdG9yPDwodXNo
b3J0IGEsIHVpbnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWludChhKSA8PCAoYiAmIDY1NTM1
KSk7Cit9Cit1Y2hhciBvcGVyYXRvcj4+KHVjaGFyIGEsIHVpbnQgYikgeworICAgIHJldHVybiB1
Y2hhcih1aW50KGEpID4+IChiICYgMjU1KSk7Cit9Cit1c2hvcnQgb3BlcmF0b3I+Pih1c2hvcnQg
YSwgdWludCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpID4+IChiICYgNjU1MzUpKTsK
K30KK2NoYXIgb3BlcmF0b3IrKGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50
KGEpICsgaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3ItKGNoYXIgYSwgY2hhciBiKSB7CisgICAg
cmV0dXJuIGNoYXIoaW50KGEpIC0gaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3IqKGNoYXIgYSwg
Y2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpICogaW50KGIpKTsKK30KK2NoYXIgb3Bl
cmF0b3IvKGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIC8gaW50KGIp
KTsKK30KK2NoYXIgb3BlcmF0b3ImKGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIo
aW50KGEpICYgaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3J8KGNoYXIgYSwgY2hhciBiKSB7Cisg
ICAgcmV0dXJuIGNoYXIoaW50KGEpIHwgaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3JeKGNoYXIg
YSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIF4gaW50KGIpKTsKK30KK2NoYXIg
b3BlcmF0b3J+KGNoYXIgYSkgeworICAgIHJldHVybiBjaGFyKH5pbnQoYSkpOworfQorYm9vbCBv
cGVyYXRvcj09KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGludChhKSA9PSBpbnQoYik7
Cit9Citib29sIG9wZXJhdG9yPihjaGFyIGEsIGNoYXIgYikgeworICAgIHJldHVybiBpbnQoYSkg
PiBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0oY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1
cm4gaW50KGEpID49IGludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I8KGNoYXIgYSwgY2hhciBiKSB7
CisgICAgcmV0dXJuIGludChhKSA8IGludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I8PShjaGFyIGEs
IGNoYXIgYikgeworICAgIHJldHVybiBpbnQoYSkgPD0gaW50KGIpOworfQorc2hvcnQgb3BlcmF0
b3IrKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpICsgaW50KGIp
KTsKK30KK3Nob3J0IG9wZXJhdG9yLShzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0dXJuIHNo
b3J0KGludChhKSAtIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvciooc2hvcnQgYSwgc2hvcnQg
YikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgKiBpbnQoYikpOworfQorc2hvcnQgb3BlcmF0
b3IvKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpIC8gaW50KGIp
KTsKK30KK3Nob3J0IG9wZXJhdG9yJihzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0dXJuIHNo
b3J0KGludChhKSAmIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvcnwoc2hvcnQgYSwgc2hvcnQg
YikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgfCBpbnQoYikpOworfQorc2hvcnQgb3BlcmF0
b3JeKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpIF4gaW50KGIp
KTsKK30KK3Nob3J0IG9wZXJhdG9yfihzaG9ydCBhKSB7CisgICAgcmV0dXJuIHNob3J0KH5pbnQo
YSkpOworfQorYm9vbCBvcGVyYXRvcj09KHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4g
aW50KGEpID09IGludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+KHNob3J0IGEsIHNob3J0IGIpIHsK
KyAgICByZXR1cm4gaW50KGEpID4gaW50KGIpOworfQorYm9vbCBvcGVyYXRvcj49KHNob3J0IGEs
IHNob3J0IGIpIHsKKyAgICByZXR1cm4gaW50KGEpID49IGludChiKTsKK30KK2Jvb2wgb3BlcmF0
b3I8KHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gaW50KGEpIDwgaW50KGIpOworfQor
Ym9vbCBvcGVyYXRvcjw9KHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gaW50KGEpIDw9
IGludChiKTsKK30KK2NoYXIgb3BlcmF0b3I8PChjaGFyIGEsIHVpbnQgYikgeworICAgIHJldHVy
biBjaGFyKGludChhKSA8PCAoYiAmIDI1NSkpOworfQorc2hvcnQgb3BlcmF0b3I8PChzaG9ydCBh
LCB1aW50IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpIDw8IChiICYgNjU1MzUpKTsKK30K
K2NoYXIgb3BlcmF0b3I+PihjaGFyIGEsIHVpbnQgYikgeworICAgIHJldHVybiBjaGFyKGludChh
KSA+PiAoYiAmIDI1NSkpOworfQorc2hvcnQgb3BlcmF0b3I+PihzaG9ydCBhLCB1aW50IGIpIHsK
KyAgICByZXR1cm4gc2hvcnQoaW50KGEpID4+IChiICYgNjU1MzUpKTsKK30KK3VjaGFyIG9wZXJh
dG9yKysodWNoYXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQordWNoYXIgb3Bl
cmF0b3ItLSh1Y2hhciB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSAtIDE7Cit9Cit1c2hvcnQg
b3BlcmF0b3IrKyh1c2hvcnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQordXNo
b3J0IG9wZXJhdG9yLS0odXNob3J0IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30K
K3VpbnQgb3BlcmF0b3IrKyh1aW50IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlICsgMTsKK30K
K3VpbnQgb3BlcmF0b3ItLSh1aW50IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30K
K2NoYXIgb3BlcmF0b3IrKyhjaGFyIHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlICsgMTsKK30K
K2NoYXIgb3BlcmF0b3ItLShjaGFyIHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30K
K3Nob3J0IG9wZXJhdG9yKysoc2hvcnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOwor
fQorc2hvcnQgb3BlcmF0b3ItLShzaG9ydCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSAtIDE7
Cit9CitpbnQgb3BlcmF0b3IrKyhpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOwor
fQoraW50IG9wZXJhdG9yLS0oaW50IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30K
K2hhbGYgb3BlcmF0b3IrKyhoYWxmIHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlICsgMTsKK30K
K2hhbGYgb3BlcmF0b3ItLShoYWxmIHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30K
K2Zsb2F0IG9wZXJhdG9yKysoZmxvYXQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOwor
fQorZmxvYXQgb3BlcmF0b3ItLShmbG9hdCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSAtIDE7
Cit9CitoYWxmIG9wZXJhdG9yKyhoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBoYWxmKGZs
b2F0KGEpICsgZmxvYXQoYikpOworfQoraGFsZiBvcGVyYXRvci0oaGFsZiBhLCBoYWxmIGIpIHsK
KyAgICByZXR1cm4gaGFsZihmbG9hdChhKSAtIGZsb2F0KGIpKTsKK30KK2hhbGYgb3BlcmF0b3Iq
KGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxvYXQoYSkgKiBmbG9hdChiKSk7
Cit9CitoYWxmIG9wZXJhdG9yLyhoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBoYWxmKGZs
b2F0KGEpIC8gZmxvYXQoYikpOworfQorYm9vbCBvcGVyYXRvcj09KGhhbGYgYSwgaGFsZiBiKSB7
CisgICAgcmV0dXJuIGZsb2F0KGEpID09IGZsb2F0KGIpOworfQorYm9vbCBvcGVyYXRvcjwoaGFs
ZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQoYSkgPCBmbG9hdChiKTsKK30KK2Jvb2wg
b3BlcmF0b3I8PShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBmbG9hdChhKSA8PSBmbG9h
dChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+KGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGZs
b2F0KGEpIDwgZmxvYXQoYik7Cit9Citib29sIG9wZXJhdG9yPj0oaGFsZiBhLCBoYWxmIGIpIHsK
KyAgICByZXR1cm4gZmxvYXQoYSkgPD0gZmxvYXQoYik7Cit9CitjaGFyIG9wZXJhdG9yLShjaGFy
IHgpIHsKKyAgICByZXR1cm4gY2hhcigtaW50KHgpKTsKK30KK3Nob3J0IG9wZXJhdG9yLShzaG9y
dCB4KSB7CisgICAgcmV0dXJuIHNob3J0KC1pbnQoeCkpOworfQoraGFsZiBvcGVyYXRvci0oaGFs
ZiB4KSB7CisgICAgcmV0dXJuIGhhbGYoLWZsb2F0KHgpKTsKK30KK25hdGl2ZSBpbnQgb3BlcmF0
b3ItKGludCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3ItKGZsb2F0KTsKIAotLy8gUHJvdmlkZXMg
b3BlcmF0b3ImW10KLXN0YW5kYXJkTGlicmFyeSArPSBPcGVyYXRvckFuZGVySW5kZXhlci5mdW5j
dGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotCi0vLyBOYXRpdmUgdmVjdG9yIHR5cGVzIGFy
ZSBsaWtlIHN0cnVjdHMgaW4gdGhlIGxhbmdhdWdlLCBidXQgdGhleSBkbyBub3QgaGF2ZSB0aGUg
YW5kZXIgZmllbGQgYWNjZXNzLgotLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIHRha2UgdGhlIGFk
ZHJlc3Mgb2YgYSB2ZWN0b3IgZmllbGQuCi1zdGFuZGFyZExpYnJhcnkgKz0gQnVpbHRpblZlY3Rv
ckdldHRlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotc3RhbmRhcmRMaWJyYXJ5
ICs9IEJ1aWx0aW5WZWN0b3JTZXR0ZXIuZnVuY3Rpb25zKCkuam9pbigiO1xuIikgKyAiO1xuIjsK
LXN0YW5kYXJkTGlicmFyeSArPSBCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuZnVuY3Rpb25zKCku
am9pbigiO1xuIikgKyAiO1xuIjsKLXN0YW5kYXJkTGlicmFyeSArPSBCdWlsdGluVmVjdG9ySW5k
ZXhTZXR0ZXIuZnVuY3Rpb25zKCkuam9pbigiO1xuIikgKyAiO1xuIjsKLQotLy8gRklYTUU6IEZv
ciBuYXRpdmUgdHlwZXMgdGhlc2UgY291bGQgYmUgaW5jbHVkZWQgYXMgc291cmNlIGluIHRoZSBz
dGFuZGFyZCBsaWJyYXJ5LgotLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4ODY4NQotc3RhbmRhcmRMaWJyYXJ5ICs9IE9wZXJhdG9yQm9vbC5mdW5jdGlvbnMoKS5q
b2luKCI7XG4iKSArICI7XG4iOwotc3RhbmRhcmRMaWJyYXJ5ICs9IEJ1aWx0aW5WZWN0b3JFcXVh
bGl0eU9wZXJhdG9yLmZ1bmN0aW9ucygpLmpvaW4oIjtcbiIpICsgIjtcbiI7Cit1Y2hhcjIgb3Bl
cmF0b3IrKHVjaGFyMiBhLCB1Y2hhcjIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBvcGVyYXRvci0odWNoYXIyIGEsIHVjaGFyMiBiKSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9w
ZXJhdG9yKih1Y2hhcjIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IqKHVjaGFyMiBhLCB1Y2hhciBiKSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1
bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9y
Kih1Y2hhciBhLCB1Y2hhcjIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyMiBvcGVyYXRvci8odWNoYXIyIGEsIHVjaGFyMiBiKSB7CisgICAgdWNoYXIy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLyh1Y2hh
cjIgYSwgdWNoYXIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyMiBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IrKHVjaGFyMyBhLCB1Y2hhcjMg
YikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci0odWNoYXIzIGEsIHVjaGFy
MyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yKih1Y2hhcjMgYSwgdWNo
YXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBi
WzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IqKHVjaGFyMyBhLCB1
Y2hhciBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhcjMgYikg
eworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci8odWNoYXIzIGEsIHVjaGFyMyBiKSB7CisgICAg
dWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLyh1Y2hhcjMgYSwgdWNoYXIgYikgeworICAg
IHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyMyBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IrKHVjaGFyNCBhLCB1Y2hhcjQgYikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAr
IGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci0odWNoYXI0IGEs
IHVjaGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yKih1Y2hhcjQgYSwgdWNoYXI0IGIpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9
IGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IqKHVj
aGFyNCBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJd
ICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhcjQgYikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci8odWNoYXI0IGEsIHVjaGFyNCBiKSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAg
ICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLyh1Y2hhcjQgYSwgdWNoYXIgYikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVz
dWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXI0IGIpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEg
LyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yKyh1c2hvcnQy
IGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFb
MF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLSh1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHVz
aG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9y
Kih1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yKih1c2hvcnQyIGEsIHVzaG9ydCBiKSB7
CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0
b3IqKHVzaG9ydCBhLCB1c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci8odXNob3J0MiBhLCB1c2hvcnQyIGIpIHsKKyAg
ICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVy
YXRvci8odXNob3J0MiBhLCB1c2hvcnQgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLyh1c2hvcnQgYSwgdXNob3J0MiBiKSB7Cisg
ICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Ir
KHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3Bl
cmF0b3ItKHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDMgb3BlcmF0b3IqKHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7CisgICAgdXNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDMgb3BlcmF0b3IqKHVzaG9ydDMgYSwgdXNob3J0IGIpIHsKKyAgICB1c2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICog
YjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0MyBvcGVyYXRvcioodXNob3J0IGEsIHVzaG9ydDMgYikgeworICAgIHVzaG9ydDMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOwor
ICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLyh1c2hvcnQzIGEsIHVzaG9ydDMgYikgeworICAgIHVzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQzIG9wZXJhdG9yLyh1c2hvcnQzIGEsIHVzaG9ydCBiKSB7CisgICAgdXNob3J0MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7
CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDMgb3BlcmF0b3IvKHVzaG9ydCBhLCB1c2hvcnQzIGIpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvcisodXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci0odXNob3J0NCBhLCB1
c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvcioodXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXN1bHRb
M10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
cioodXNob3J0NCBhLCB1c2hvcnQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKih1c2hvcnQgYSwgdXNob3J0NCBiKSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAq
IGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IvKHVzaG9ydDQg
YSwgdXNob3J0NCBiKSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YVsyXSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IvKHVzaG9ydDQgYSwgdXNob3J0IGIpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0g
PSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXN1bHRbM10gPSBh
WzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci8odXNob3J0
IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEg
LyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBi
WzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50MiBvcGVyYXRvcisodWludDIgYSwgdWludDIgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3ItKHVpbnQyIGEsIHVpbnQyIGIp
IHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9w
ZXJhdG9yKih1aW50MiBhLCB1aW50MiBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvcioodWludDIgYSwgdWludCBiKSB7CisgICAg
dWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvcioodWludCBh
LCB1aW50MiBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MiBvcGVyYXRvci8odWludDIgYSwgdWludDIgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IvKHVpbnQyIGEsIHVpbnQgYikgewor
ICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRb
MV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IvKHVp
bnQgYSwgdWludDIgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDMgb3BlcmF0b3IrKHVpbnQzIGEsIHVpbnQzIGIpIHsKKyAgICB1aW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQzIG9wZXJhdG9yLSh1aW50MyBhLCB1aW50MyBiKSB7CisgICAgdWludDMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOwor
ICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MyBvcGVyYXRvcioodWludDMgYSwgdWludDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMg
b3BlcmF0b3IqKHVpbnQzIGEsIHVpbnQgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IqKHVp
bnQgYSwgdWludDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICog
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IvKHVpbnQzIGEsIHVpbnQz
IGIpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLyh1aW50MyBhLCB1aW50IGIp
IHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLyh1aW50IGEsIHVpbnQzIGIpIHsKKyAgICB1aW50
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAv
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yKyh1aW50NCBhLCB1aW50NCBiKSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKyBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci0odWludDQgYSwgdWlu
dDQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsy
XTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IqKHVpbnQ0IGEsIHVpbnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yKih1aW50NCBhLCB1aW50
IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAg
cmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVz
dWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Kih1aW50IGEsIHVpbnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAq
IGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLyh1aW50NCBhLCB1aW50NCBiKSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci8odWludDQgYSwgdWlu
dCBiKSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJl
c3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci8odWludCBhLCB1aW50NCBiKSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEg
LyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMiBvcGVyYXRvcisoY2hhcjIgYSwgY2hhcjIgYikgeworICAgIGNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsx
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3ItKGNoYXIyIGEsIGNoYXIy
IGIpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIy
IG9wZXJhdG9yKihjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvciooY2hhcjIgYSwgY2hhciBiKSB7Cisg
ICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvciooY2hh
ciBhLCBjaGFyMiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMiBvcGVyYXRvci8oY2hhcjIgYSwgY2hhcjIgYikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IvKGNoYXIyIGEsIGNoYXIgYikg
eworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1
bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3Iv
KGNoYXIgYSwgY2hhcjIgYikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
IC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjMgb3BlcmF0b3IrKGNoYXIzIGEsIGNoYXIzIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXIzIG9wZXJhdG9yLShjaGFyMyBhLCBjaGFyMyBiKSB7CisgICAgY2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMyBvcGVyYXRvciooY2hhcjMgYSwgY2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjMgb3BlcmF0b3IqKGNoYXIzIGEsIGNoYXIgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1
bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iq
KGNoYXIgYSwgY2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
ICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICog
YlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IvKGNoYXIzIGEsIGNo
YXIzIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLyhjaGFyMyBhLCBjaGFy
IGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAg
cmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLyhjaGFyIGEsIGNoYXIzIGIpIHsKKyAgICBj
aGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yKyhjaGFyNCBhLCBjaGFyNCBiKSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10g
KyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci0oY2hhcjQgYSwg
Y2hhcjQgYikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0g
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IqKGNoYXI0IGEsIGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAq
IGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yKihjaGFyNCBhLCBj
aGFyIGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAg
cmVzdWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yKihjaGFyIGEsIGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLyhjaGFyNCBhLCBjaGFyNCBiKSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10g
LyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci8oY2hhcjQgYSwg
Y2hhciBiKSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAg
IHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci8oY2hhciBhLCBjaGFyNCBiKSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9
IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDIgb3BlcmF0b3IrKHNob3J0MiBhLCBzaG9ydDIgYikgeworICAgIHNob3J0MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsx
XSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvci0oc2hvcnQy
IGEsIHNob3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQyIG9wZXJhdG9yKihzaG9ydDIgYSwgc2hvcnQyIGIpIHsKKyAgICBzaG9ydDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IqKHNob3J0
MiBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
ICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQyIG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydDIgYikgeworICAgIHNob3J0MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvci8oc2hvcnQyIGEsIHNob3J0MiBi
KSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQy
IG9wZXJhdG9yLyhzaG9ydDIgYSwgc2hvcnQgYikgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvci8oc2hvcnQgYSwgc2hvcnQyIGIpIHsKKyAg
ICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IrKHNo
b3J0MyBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJd
ID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci0o
c2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9y
KihzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0
b3IqKHNob3J0MyBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0g
PSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yKihzaG9y
dCBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAq
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci8oc2hvcnQzIGEsIHNo
b3J0MyBiKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8g
YlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLyhzaG9ydDMgYSwg
c2hvcnQgYikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7
CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci8oc2hvcnQgYSwgc2hvcnQzIGIp
IHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IrKHNob3J0NCBhLCBzaG9ydDQgYikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci0oc2hvcnQ0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yKihzaG9ydDQgYSwgc2hvcnQ0IGIp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOwor
ICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3IqKHNob3J0NCBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydDQgYikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0g
YSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci8oc2hvcnQ0
IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBh
WzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLyhzaG9ydDQgYSwgc2hvcnQgYikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsx
XSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAv
IGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci8oc2hvcnQgYSwgc2hv
cnQ0IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAg
IHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJh
dG9yKyhpbnQyIGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLShpbnQyIGEsIGludDIgYikgeworICAgIGludDIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
LSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yKihpbnQyIGEsIGlu
dDIgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQy
IG9wZXJhdG9yKihpbnQyIGEsIGludCBiKSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDIgb3BlcmF0b3IqKGludCBhLCBpbnQyIGIpIHsKKyAgICBpbnQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci8oaW50MiBhLCBpbnQyIGIpIHsK
KyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRv
ci8oaW50MiBhLCBpbnQgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFb
MF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQyIG9wZXJhdG9yLyhpbnQgYSwgaW50MiBiKSB7CisgICAgaW50MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IrKGludDMgYSwgaW50MyBiKSB7CisgICAgaW50
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDMgb3BlcmF0b3ItKGludDMgYSwgaW50MyBiKSB7CisgICAgaW50MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAt
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDMgb3BlcmF0b3IqKGludDMgYSwgaW50MyBiKSB7CisgICAgaW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDMgb3BlcmF0b3IqKGludDMgYSwgaW50IGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvciooaW50
IGEsIGludDMgYikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLyhpbnQzIGEsIGludDMgYikgewor
ICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLyhpbnQzIGEsIGludCBiKSB7CisgICAgaW50
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsx
XSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDMgb3BlcmF0b3IvKGludCBhLCBpbnQzIGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvciso
aW50NCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
ICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBh
WzJdICsgYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci0oaW50NCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0g
YlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNd
IC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvciooaW50NCBhLCBp
bnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsy
XTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvciooaW50NCBhLCBpbnQgYikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yKihpbnQgYSwgaW50NCBiKSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IvKGludDQgYSwgaW50NCBiKSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3IvKGludDQgYSwgaW50IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci8oaW50IGEsIGludDQgYikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvcisoaGFsZjIgYSwgaGFsZjIgYikgeworICAgIGhhbGYy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3ItKGhhbGYy
IGEsIGhhbGYyIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAt
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYyIG9wZXJhdG9yKihoYWxmMiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBi
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvciooaGFsZjIgYSwgaGFs
ZiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVy
YXRvciooaGFsZiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMiBvcGVyYXRvci8oaGFsZjIgYSwgaGFsZjIgYikgeworICAgIGhhbGYyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IvKGhhbGYyIGEs
IGhhbGYgYikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsK
KyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIg
b3BlcmF0b3IvKGhhbGYgYSwgaGFsZjIgYikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IrKGhhbGYzIGEsIGhhbGYzIGIpIHsKKyAgICBoYWxm
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLShoYWxmMyBhLCBoYWxmMyBiKSB7CisgICAgaGFsZjMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMyBvcGVyYXRvciooaGFsZjMgYSwgaGFsZjMgYikgeworICAgIGhhbGYzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjMgb3BlcmF0b3IqKGhhbGYzIGEsIGhhbGYgYikgeworICAgIGhhbGYzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMg
b3BlcmF0b3IqKGhhbGYgYSwgaGFsZjMgYikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRb
Ml0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IvKGhh
bGYzIGEsIGhhbGYzIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLyhoYWxm
MyBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAv
IGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLyhoYWxmIGEsIGhhbGYzIGIp
IHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yKyhoYWxmNCBhLCBoYWxmNCBiKSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJlc3VsdFsz
XSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci0o
aGFsZjQgYSwgaGFsZjQgYikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IqKGhhbGY0IGEsIGhhbGY0IGIpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNd
ID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yKiho
YWxmNCBhLCBoYWxmIGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAq
IGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yKihoYWxmIGEsIGhhbGY0IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLyhoYWxmNCBhLCBoYWxmNCBiKSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFsz
XSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci8o
aGFsZjQgYSwgaGFsZiBiKSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFb
MF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0g
LyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci8oaGFsZiBhLCBoYWxmNCBiKSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJl
c3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IrKGZsb2F0MiBhLCBmbG9hdDIgYikgeworICAg
IGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRv
ci0oZmxvYXQyIGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yKihmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0
b3IqKGZsb2F0MiBhLCBmbG9hdCBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQyIG9wZXJhdG9yKihmbG9hdCBhLCBmbG9hdDIgYikgeworICAgIGZsb2F0
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAq
IGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvci8oZmxvYXQyIGEs
IGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQyIG9wZXJhdG9yLyhmbG9hdDIgYSwgZmxvYXQgYikgeworICAgIGZsb2F0MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvci8oZmxvYXQgYSwgZmxvYXQy
IGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3Bl
cmF0b3IrKGZsb2F0MyBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAg
cmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBv
cGVyYXRvci0oZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
IG9wZXJhdG9yKihmbG9hdDMgYSwgZmxvYXQzIGIpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOwor
ICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDMgb3BlcmF0b3IqKGZsb2F0MyBhLCBmbG9hdCBiKSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJh
dG9yKihmbG9hdCBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJd
ID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci8oZmxv
YXQzIGEsIGZsb2F0MyBiKSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLyhm
bG9hdDMgYSwgZmxvYXQgYikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsy
XSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci8oZmxvYXQgYSwg
ZmxvYXQzIGIpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IrKGZsb2F0NCBhLCBmbG9hdDQg
YikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07
CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci0oZmxvYXQ0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsx
XTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0g
YlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yKihmbG9hdDQgYSwg
ZmxvYXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0g
KiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IqKGZsb2F0NCBhLCBmbG9hdCBiKSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICog
YjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yKihmbG9hdCBhLCBmbG9hdDQg
YikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci8oZmxvYXQ0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLyhmbG9hdDQgYSwgZmxvYXQgYikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0
WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNd
ID0gYVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci8oZmxv
YXQgYSwgZmxvYXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEg
LyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBi
WzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMiBvcGVyYXRvci0oY2hhcjIgYSkgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjMgb3BlcmF0b3ItKGNoYXIzIGEpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0g
LWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLShjaGFyNCBhKSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsx
XSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJlc3VsdFszXSA9IC1hWzNd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3ItKHNob3J0MiBhKSB7Cisg
ICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0g
PSAtYVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLShzaG9ydDMg
YSkgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVz
dWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci0oc2hvcnQ0IGEpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3Vs
dFsyXSA9IC1hWzJdOworICAgIHJlc3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQyIG9wZXJhdG9yLShpbnQyIGEpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50MyBvcGVyYXRvci0oaW50MyBhKSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0g
LWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3ItKGludDQgYSkgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9
IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJlc3VsdFszXSA9IC1hWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci0oaGFsZjIgYSkgeworICAgIGhh
bGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsx
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3ItKGhhbGYzIGEpIHsKKyAg
ICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0g
LWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLShoYWxmNCBhKSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJd
OworICAgIHJlc3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIg
b3BlcmF0b3ItKGZsb2F0MiBhKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzIG9wZXJhdG9yLShmbG9hdDMgYSkgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0g
LWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci0oZmxvYXQ0IGEp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3Vs
dFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJlc3VsdFszXSA9IC1h
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2Jvb2wgb3BlcmF0b3I9PShib29sMiBhLCBi
b29sMiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueTsKK30KK2Jvb2wg
b3BlcmF0b3I9PShib29sMyBhLCBib29sMyBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYg
YS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVyYXRvcj09KGJvb2w0IGEsIGJv
b2w0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBi
LnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBib29sIG9wZXJhdG9yLngoYm9vbDIpOworbmF0
aXZlIGJvb2wgb3BlcmF0b3IueShib29sMik7CituYXRpdmUgYm9vbCBvcGVyYXRvci54KGJvb2wz
KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLnkoYm9vbDMpOworbmF0aXZlIGJvb2wgb3BlcmF0b3Iu
eihib29sMyk7CituYXRpdmUgYm9vbCBvcGVyYXRvci54KGJvb2w0KTsKK25hdGl2ZSBib29sIG9w
ZXJhdG9yLnkoYm9vbDQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3Iueihib29sNCk7CituYXRpdmUg
Ym9vbCBvcGVyYXRvci53KGJvb2w0KTsKK25hdGl2ZSBib29sMiBvcGVyYXRvci54PShib29sMiwg
Ym9vbCk7CituYXRpdmUgYm9vbDIgb3BlcmF0b3IueT0oYm9vbDIsIGJvb2wpOworbmF0aXZlIGJv
b2wzIG9wZXJhdG9yLng9KGJvb2wzLCBib29sKTsKK25hdGl2ZSBib29sMyBvcGVyYXRvci55PShi
b29sMywgYm9vbCk7CituYXRpdmUgYm9vbDMgb3BlcmF0b3Iuej0oYm9vbDMsIGJvb2wpOworbmF0
aXZlIGJvb2w0IG9wZXJhdG9yLng9KGJvb2w0LCBib29sKTsKK25hdGl2ZSBib29sNCBvcGVyYXRv
ci55PShib29sNCwgYm9vbCk7CituYXRpdmUgYm9vbDQgb3BlcmF0b3Iuej0oYm9vbDQsIGJvb2wp
OworbmF0aXZlIGJvb2w0IG9wZXJhdG9yLnc9KGJvb2w0LCBib29sKTsKK2Jvb2wgb3BlcmF0b3Jb
XShib29sMiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBj
YXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAg
ICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAg
ICB9Cit9Citib29sIG9wZXJhdG9yW10oYm9vbDMgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRj
aCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAg
ICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgor
ICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRy
YXA7CisgICAgfQorfQorYm9vbCBvcGVyYXRvcltdKGJvb2w0IHYsIHVpbnQgaW5kZXgpIHsKKyAg
ICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2
Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNh
c2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAg
ICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAg
IH0KK30KK2Jvb2wyIG9wZXJhdG9yW109KGJvb2wyIHYsIHVpbnQgaW5kZXgsIGJvb2wgYSkgewor
ICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0g
YTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2Lnkg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0
cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wzIG9wZXJhdG9yW109KGJvb2wzIHYs
IHVpbnQgaW5kZXgsIGJvb2wgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2Fz
ZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQor
Ym9vbDQgb3BlcmF0b3JbXT0oYm9vbDQgdiwgdWludCBpbmRleCwgYm9vbCBhKSB7CisgICAgc3dp
dGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBh
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFw
OworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3BlcmF0b3I9PSh1Y2hhcjIgYSwgdWNo
YXIyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55OworfQorYm9vbCBv
cGVyYXRvcj09KHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYm
IGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3BlcmF0b3I9PSh1Y2hhcjQgYSwg
dWNoYXI0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9
PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSB1Y2hhciBvcGVyYXRvci54KHVjaGFyMik7
CituYXRpdmUgdWNoYXIgb3BlcmF0b3IueSh1Y2hhcjIpOworbmF0aXZlIHVjaGFyIG9wZXJhdG9y
LngodWNoYXIzKTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRvci55KHVjaGFyMyk7CituYXRpdmUgdWNo
YXIgb3BlcmF0b3Iueih1Y2hhcjMpOworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLngodWNoYXI0KTsK
K25hdGl2ZSB1Y2hhciBvcGVyYXRvci55KHVjaGFyNCk7CituYXRpdmUgdWNoYXIgb3BlcmF0b3Iu
eih1Y2hhcjQpOworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLncodWNoYXI0KTsKK25hdGl2ZSB1Y2hh
cjIgb3BlcmF0b3IueD0odWNoYXIyLCB1Y2hhcik7CituYXRpdmUgdWNoYXIyIG9wZXJhdG9yLnk9
KHVjaGFyMiwgdWNoYXIpOworbmF0aXZlIHVjaGFyMyBvcGVyYXRvci54PSh1Y2hhcjMsIHVjaGFy
KTsKK25hdGl2ZSB1Y2hhcjMgb3BlcmF0b3IueT0odWNoYXIzLCB1Y2hhcik7CituYXRpdmUgdWNo
YXIzIG9wZXJhdG9yLno9KHVjaGFyMywgdWNoYXIpOworbmF0aXZlIHVjaGFyNCBvcGVyYXRvci54
PSh1Y2hhcjQsIHVjaGFyKTsKK25hdGl2ZSB1Y2hhcjQgb3BlcmF0b3IueT0odWNoYXI0LCB1Y2hh
cik7CituYXRpdmUgdWNoYXI0IG9wZXJhdG9yLno9KHVjaGFyNCwgdWNoYXIpOworbmF0aXZlIHVj
aGFyNCBvcGVyYXRvci53PSh1Y2hhcjQsIHVjaGFyKTsKK3VjaGFyIG9wZXJhdG9yW10odWNoYXIy
IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoK
KyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJl
dHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30K
K3VjaGFyIG9wZXJhdG9yW10odWNoYXIzIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGlu
ZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAg
IGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAg
ICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOwor
ICAgIH0KK30KK3VjaGFyIG9wZXJhdG9yW10odWNoYXI0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBz
d2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7
CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2Ug
MjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAg
IHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0K
K30KK3VjaGFyMiBvcGVyYXRvcltdPSh1Y2hhcjIgdiwgdWludCBpbmRleCwgdWNoYXIgYSkgewor
ICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0g
YTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2Lnkg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0
cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3VjaGFyMyBvcGVyYXRvcltdPSh1Y2hhcjMg
diwgdWludCBpbmRleCwgdWNoYXIgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAg
Y2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2Owor
fQordWNoYXI0IG9wZXJhdG9yW109KHVjaGFyNCB2LCB1aW50IGluZGV4LCB1Y2hhciBhKSB7Cisg
ICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBh
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICB2
LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAg
ICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3BlcmF0b3I9PSh1c2hvcnQy
IGEsIHVzaG9ydDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnk7Cit9
Citib29sIG9wZXJhdG9yPT0odXNob3J0MyBhLCB1c2hvcnQzIGIpIHsKKyAgICByZXR1cm4gYS54
ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9wZXJhdG9yPT0o
dXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0g
Yi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSB1c2hvcnQgb3BlcmF0
b3IueCh1c2hvcnQyKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3IueSh1c2hvcnQyKTsKK25hdGl2
ZSB1c2hvcnQgb3BlcmF0b3IueCh1c2hvcnQzKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3IueSh1
c2hvcnQzKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iueih1c2hvcnQzKTsKK25hdGl2ZSB1c2hv
cnQgb3BlcmF0b3IueCh1c2hvcnQ0KTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3IueSh1c2hvcnQ0
KTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iueih1c2hvcnQ0KTsKK25hdGl2ZSB1c2hvcnQgb3Bl
cmF0b3Iudyh1c2hvcnQ0KTsKK25hdGl2ZSB1c2hvcnQyIG9wZXJhdG9yLng9KHVzaG9ydDIsIHVz
aG9ydCk7CituYXRpdmUgdXNob3J0MiBvcGVyYXRvci55PSh1c2hvcnQyLCB1c2hvcnQpOworbmF0
aXZlIHVzaG9ydDMgb3BlcmF0b3IueD0odXNob3J0MywgdXNob3J0KTsKK25hdGl2ZSB1c2hvcnQz
IG9wZXJhdG9yLnk9KHVzaG9ydDMsIHVzaG9ydCk7CituYXRpdmUgdXNob3J0MyBvcGVyYXRvci56
PSh1c2hvcnQzLCB1c2hvcnQpOworbmF0aXZlIHVzaG9ydDQgb3BlcmF0b3IueD0odXNob3J0NCwg
dXNob3J0KTsKK25hdGl2ZSB1c2hvcnQ0IG9wZXJhdG9yLnk9KHVzaG9ydDQsIHVzaG9ydCk7Citu
YXRpdmUgdXNob3J0NCBvcGVyYXRvci56PSh1c2hvcnQ0LCB1c2hvcnQpOworbmF0aXZlIHVzaG9y
dDQgb3BlcmF0b3Iudz0odXNob3J0NCwgdXNob3J0KTsKK3VzaG9ydCBvcGVyYXRvcltdKHVzaG9y
dDIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAw
OgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAg
cmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQor
fQordXNob3J0IG9wZXJhdG9yW10odXNob3J0MyB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNo
IChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAg
ICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBjYXNlIDI6Cisg
ICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJh
cDsKKyAgICB9Cit9Cit1c2hvcnQgb3BlcmF0b3JbXSh1c2hvcnQ0IHYsIHVpbnQgaW5kZXgpIHsK
KyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVy
biB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAg
IGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAg
ICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOwor
ICAgIH0KK30KK3VzaG9ydDIgb3BlcmF0b3JbXT0odXNob3J0MiB2LCB1aW50IGluZGV4LCB1c2hv
cnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAg
ICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAg
ICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3VzaG9ydDMgb3BlcmF0b3Jb
XT0odXNob3J0MyB2LCB1aW50IGluZGV4LCB1c2hvcnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgp
IHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAg
IHJldHVybiB2OworfQordXNob3J0NCBvcGVyYXRvcltdPSh1c2hvcnQ0IHYsIHVpbnQgaW5kZXgs
IHVzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAg
ICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAg
ICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgor
ICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6
CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3Bl
cmF0b3I9PSh1aW50MiBhLCB1aW50MiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55
ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PSh1aW50MyBhLCB1aW50MyBiKSB7CisgICAgcmV0
dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVy
YXRvcj09KHVpbnQ0IGEsIHVpbnQ0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkg
PT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSB1aW50IG9wZXJh
dG9yLngodWludDIpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IueSh1aW50Mik7CituYXRpdmUgdWlu
dCBvcGVyYXRvci54KHVpbnQzKTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLnkodWludDMpOworbmF0
aXZlIHVpbnQgb3BlcmF0b3Iueih1aW50Myk7CituYXRpdmUgdWludCBvcGVyYXRvci54KHVpbnQ0
KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLnkodWludDQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3Iu
eih1aW50NCk7CituYXRpdmUgdWludCBvcGVyYXRvci53KHVpbnQ0KTsKK25hdGl2ZSB1aW50MiBv
cGVyYXRvci54PSh1aW50MiwgdWludCk7CituYXRpdmUgdWludDIgb3BlcmF0b3IueT0odWludDIs
IHVpbnQpOworbmF0aXZlIHVpbnQzIG9wZXJhdG9yLng9KHVpbnQzLCB1aW50KTsKK25hdGl2ZSB1
aW50MyBvcGVyYXRvci55PSh1aW50MywgdWludCk7CituYXRpdmUgdWludDMgb3BlcmF0b3Iuej0o
dWludDMsIHVpbnQpOworbmF0aXZlIHVpbnQ0IG9wZXJhdG9yLng9KHVpbnQ0LCB1aW50KTsKK25h
dGl2ZSB1aW50NCBvcGVyYXRvci55PSh1aW50NCwgdWludCk7CituYXRpdmUgdWludDQgb3BlcmF0
b3Iuej0odWludDQsIHVpbnQpOworbmF0aXZlIHVpbnQ0IG9wZXJhdG9yLnc9KHVpbnQ0LCB1aW50
KTsKK3VpbnQgb3BlcmF0b3JbXSh1aW50MiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChp
bmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAg
ICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0OgorICAg
ICAgICAgICAgdHJhcDsKKyAgICB9Cit9Cit1aW50IG9wZXJhdG9yW10odWludDMgdiwgdWludCBp
bmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAg
ICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsK
KyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQordWludCBvcGVyYXRvcltdKHVpbnQ0IHYs
IHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVy
biB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAg
IGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KK30KK3VpbnQyIG9wZXJhdG9yW109KHVpbnQyIHYsIHVpbnQg
aW5kZXgsIHVpbnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgor
ICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6
CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3VpbnQzIG9w
ZXJhdG9yW109KHVpbnQzIHYsIHVpbnQgaW5kZXgsIHVpbnQgYSkgeworICAgIHN3aXRjaCAoaW5k
ZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQor
ICAgIHJldHVybiB2OworfQordWludDQgb3BlcmF0b3JbXT0odWludDQgdiwgdWludCBpbmRleCwg
dWludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAg
ICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAg
ICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAg
ICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6Cisg
ICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3BlcmF0
b3I9PShjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09
IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShjaGFyMyBhLCBjaGFyMyBiKSB7CisgICAgcmV0dXJu
IGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVyYXRv
cj09KGNoYXI0IGEsIGNoYXI0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0g
Yi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBjaGFyIG9wZXJhdG9y
LngoY2hhcjIpOworbmF0aXZlIGNoYXIgb3BlcmF0b3IueShjaGFyMik7CituYXRpdmUgY2hhciBv
cGVyYXRvci54KGNoYXIzKTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9yLnkoY2hhcjMpOworbmF0aXZl
IGNoYXIgb3BlcmF0b3IueihjaGFyMyk7CituYXRpdmUgY2hhciBvcGVyYXRvci54KGNoYXI0KTsK
K25hdGl2ZSBjaGFyIG9wZXJhdG9yLnkoY2hhcjQpOworbmF0aXZlIGNoYXIgb3BlcmF0b3Iueihj
aGFyNCk7CituYXRpdmUgY2hhciBvcGVyYXRvci53KGNoYXI0KTsKK25hdGl2ZSBjaGFyMiBvcGVy
YXRvci54PShjaGFyMiwgY2hhcik7CituYXRpdmUgY2hhcjIgb3BlcmF0b3IueT0oY2hhcjIsIGNo
YXIpOworbmF0aXZlIGNoYXIzIG9wZXJhdG9yLng9KGNoYXIzLCBjaGFyKTsKK25hdGl2ZSBjaGFy
MyBvcGVyYXRvci55PShjaGFyMywgY2hhcik7CituYXRpdmUgY2hhcjMgb3BlcmF0b3Iuej0oY2hh
cjMsIGNoYXIpOworbmF0aXZlIGNoYXI0IG9wZXJhdG9yLng9KGNoYXI0LCBjaGFyKTsKK25hdGl2
ZSBjaGFyNCBvcGVyYXRvci55PShjaGFyNCwgY2hhcik7CituYXRpdmUgY2hhcjQgb3BlcmF0b3Iu
ej0oY2hhcjQsIGNoYXIpOworbmF0aXZlIGNoYXI0IG9wZXJhdG9yLnc9KGNoYXI0LCBjaGFyKTsK
K2NoYXIgb3BlcmF0b3JbXShjaGFyMiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRl
eCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAgICBj
YXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0OgorICAgICAg
ICAgICAgdHJhcDsKKyAgICB9Cit9CitjaGFyIG9wZXJhdG9yW10oY2hhcjMgdiwgdWludCBpbmRl
eCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAg
cmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAg
ICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVsdDoK
KyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQorY2hhciBvcGVyYXRvcltdKGNoYXI0IHYsIHVp
bnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAg
ICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2
Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGNh
c2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICB0cmFwOworICAgIH0KK30KK2NoYXIyIG9wZXJhdG9yW109KGNoYXIyIHYsIHVpbnQgaW5k
ZXgsIGNoYXIgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAg
ICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6Cisg
ICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2NoYXIzIG9wZXJh
dG9yW109KGNoYXIzIHYsIHVpbnQgaW5kZXgsIGNoYXIgYSkgeworICAgIHN3aXRjaCAoaW5kZXgp
IHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAg
IHJldHVybiB2OworfQorY2hhcjQgb3BlcmF0b3JbXT0oY2hhcjQgdiwgdWludCBpbmRleCwgY2hh
ciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAg
ICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAg
ICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAg
ICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6CisgICAg
ICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3BlcmF0b3I9
PShzaG9ydDIgYSwgc2hvcnQyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0g
Yi55OworfQorYm9vbCBvcGVyYXRvcj09KHNob3J0MyBhLCBzaG9ydDMgYikgeworICAgIHJldHVy
biBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3BlcmF0
b3I9PShzaG9ydDQgYSwgc2hvcnQ0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkg
PT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBzaG9ydCBvcGVy
YXRvci54KHNob3J0Mik7CituYXRpdmUgc2hvcnQgb3BlcmF0b3IueShzaG9ydDIpOworbmF0aXZl
IHNob3J0IG9wZXJhdG9yLngoc2hvcnQzKTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci55KHNob3J0
Myk7CituYXRpdmUgc2hvcnQgb3BlcmF0b3IueihzaG9ydDMpOworbmF0aXZlIHNob3J0IG9wZXJh
dG9yLngoc2hvcnQ0KTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci55KHNob3J0NCk7CituYXRpdmUg
c2hvcnQgb3BlcmF0b3IueihzaG9ydDQpOworbmF0aXZlIHNob3J0IG9wZXJhdG9yLncoc2hvcnQ0
KTsKK25hdGl2ZSBzaG9ydDIgb3BlcmF0b3IueD0oc2hvcnQyLCBzaG9ydCk7CituYXRpdmUgc2hv
cnQyIG9wZXJhdG9yLnk9KHNob3J0Miwgc2hvcnQpOworbmF0aXZlIHNob3J0MyBvcGVyYXRvci54
PShzaG9ydDMsIHNob3J0KTsKK25hdGl2ZSBzaG9ydDMgb3BlcmF0b3IueT0oc2hvcnQzLCBzaG9y
dCk7CituYXRpdmUgc2hvcnQzIG9wZXJhdG9yLno9KHNob3J0Mywgc2hvcnQpOworbmF0aXZlIHNo
b3J0NCBvcGVyYXRvci54PShzaG9ydDQsIHNob3J0KTsKK25hdGl2ZSBzaG9ydDQgb3BlcmF0b3Iu
eT0oc2hvcnQ0LCBzaG9ydCk7CituYXRpdmUgc2hvcnQ0IG9wZXJhdG9yLno9KHNob3J0NCwgc2hv
cnQpOworbmF0aXZlIHNob3J0NCBvcGVyYXRvci53PShzaG9ydDQsIHNob3J0KTsKK3Nob3J0IG9w
ZXJhdG9yW10oc2hvcnQyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7Cisg
ICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0
cmFwOworICAgIH0KK30KK3Nob3J0IG9wZXJhdG9yW10oc2hvcnQzIHYsIHVpbnQgaW5kZXgpIHsK
KyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVy
biB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAg
IGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KK30KK3Nob3J0IG9wZXJhdG9yW10oc2hvcnQ0IHYsIHVpbnQg
aW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAg
ICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7
CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGNhc2Ug
MzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAg
ICB0cmFwOworICAgIH0KK30KK3Nob3J0MiBvcGVyYXRvcltdPShzaG9ydDIgdiwgdWludCBpbmRl
eCwgc2hvcnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAg
ICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6Cisg
ICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3Nob3J0MyBvcGVy
YXRvcltdPShzaG9ydDMgdiwgdWludCBpbmRleCwgc2hvcnQgYSkgeworICAgIHN3aXRjaCAoaW5k
ZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQor
ICAgIHJldHVybiB2OworfQorc2hvcnQ0IG9wZXJhdG9yW109KHNob3J0NCB2LCB1aW50IGluZGV4
LCBzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAg
ICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAg
ICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgor
ICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6
CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3Bl
cmF0b3I9PShpbnQyIGEsIGludDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9
PSBiLnk7Cit9Citib29sIG9wZXJhdG9yPT0oaW50MyBhLCBpbnQzIGIpIHsKKyAgICByZXR1cm4g
YS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9wZXJhdG9y
PT0oaW50NCBhLCBpbnQ0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55
ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBpbnQgb3BlcmF0b3IueChp
bnQyKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueShpbnQyKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3Iu
eChpbnQzKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueShpbnQzKTsKK25hdGl2ZSBpbnQgb3BlcmF0
b3IueihpbnQzKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueChpbnQ0KTsKK25hdGl2ZSBpbnQgb3Bl
cmF0b3IueShpbnQ0KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueihpbnQ0KTsKK25hdGl2ZSBpbnQg
b3BlcmF0b3IudyhpbnQ0KTsKK25hdGl2ZSBpbnQyIG9wZXJhdG9yLng9KGludDIsIGludCk7Citu
YXRpdmUgaW50MiBvcGVyYXRvci55PShpbnQyLCBpbnQpOworbmF0aXZlIGludDMgb3BlcmF0b3Iu
eD0oaW50MywgaW50KTsKK25hdGl2ZSBpbnQzIG9wZXJhdG9yLnk9KGludDMsIGludCk7CituYXRp
dmUgaW50MyBvcGVyYXRvci56PShpbnQzLCBpbnQpOworbmF0aXZlIGludDQgb3BlcmF0b3IueD0o
aW50NCwgaW50KTsKK25hdGl2ZSBpbnQ0IG9wZXJhdG9yLnk9KGludDQsIGludCk7CituYXRpdmUg
aW50NCBvcGVyYXRvci56PShpbnQ0LCBpbnQpOworbmF0aXZlIGludDQgb3BlcmF0b3Iudz0oaW50
NCwgaW50KTsKK2ludCBvcGVyYXRvcltdKGludDIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRj
aCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAg
ICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoK
KyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQoraW50IG9wZXJhdG9yW10oaW50MyB2LCB1aW50
IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAg
ICAgICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55
OworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZh
dWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitpbnQgb3BlcmF0b3JbXShpbnQ0IHYs
IHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVy
biB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAg
IGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KK30KK2ludDIgb3BlcmF0b3JbXT0oaW50MiB2LCB1aW50IGlu
ZGV4LCBpbnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAg
ICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6Cisg
ICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2ludDMgb3BlcmF0
b3JbXT0oaW50MyB2LCB1aW50IGluZGV4LCBpbnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsK
KyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJl
dHVybiB2OworfQoraW50NCBvcGVyYXRvcltdPShpbnQ0IHYsIHVpbnQgaW5kZXgsIGludCBhKSB7
CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2Lngg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYu
eSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAg
di56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6CisgICAgICAgICAg
ICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3BlcmF0b3I9PShoYWxm
MiBhLCBoYWxmMiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueTsKK30K
K2Jvb2wgb3BlcmF0b3I9PShoYWxmMyBhLCBoYWxmMyBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBi
LnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVyYXRvcj09KGhhbGY0
IGEsIGhhbGY0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEu
eiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBoYWxmIG9wZXJhdG9yLngoaGFsZjIp
OworbmF0aXZlIGhhbGYgb3BlcmF0b3IueShoYWxmMik7CituYXRpdmUgaGFsZiBvcGVyYXRvci54
KGhhbGYzKTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9yLnkoaGFsZjMpOworbmF0aXZlIGhhbGYgb3Bl
cmF0b3IueihoYWxmMyk7CituYXRpdmUgaGFsZiBvcGVyYXRvci54KGhhbGY0KTsKK25hdGl2ZSBo
YWxmIG9wZXJhdG9yLnkoaGFsZjQpOworbmF0aXZlIGhhbGYgb3BlcmF0b3IueihoYWxmNCk7Citu
YXRpdmUgaGFsZiBvcGVyYXRvci53KGhhbGY0KTsKK25hdGl2ZSBoYWxmMiBvcGVyYXRvci54PSho
YWxmMiwgaGFsZik7CituYXRpdmUgaGFsZjIgb3BlcmF0b3IueT0oaGFsZjIsIGhhbGYpOworbmF0
aXZlIGhhbGYzIG9wZXJhdG9yLng9KGhhbGYzLCBoYWxmKTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRv
ci55PShoYWxmMywgaGFsZik7CituYXRpdmUgaGFsZjMgb3BlcmF0b3Iuej0oaGFsZjMsIGhhbGYp
OworbmF0aXZlIGhhbGY0IG9wZXJhdG9yLng9KGhhbGY0LCBoYWxmKTsKK25hdGl2ZSBoYWxmNCBv
cGVyYXRvci55PShoYWxmNCwgaGFsZik7CituYXRpdmUgaGFsZjQgb3BlcmF0b3Iuej0oaGFsZjQs
IGhhbGYpOworbmF0aXZlIGhhbGY0IG9wZXJhdG9yLnc9KGhhbGY0LCBoYWxmKTsKK2hhbGYgb3Bl
cmF0b3JbXShoYWxmMiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6Cisg
ICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJh
cDsKKyAgICB9Cit9CitoYWxmIG9wZXJhdG9yW10oaGFsZjMgdiwgdWludCBpbmRleCkgeworICAg
IHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYu
eDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2Fz
ZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorfQoraGFsZiBvcGVyYXRvcltdKGhhbGY0IHYsIHVpbnQgaW5kZXgp
IHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJl
dHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAg
ICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAg
ICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFw
OworICAgIH0KK30KK2hhbGYyIG9wZXJhdG9yW109KGhhbGYyIHYsIHVpbnQgaW5kZXgsIGhhbGYg
YSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAg
di54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAg
ICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2hhbGYzIG9wZXJhdG9yW109KGhh
bGYzIHYsIHVpbnQgaW5kZXgsIGhhbGYgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAg
ICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2
OworfQoraGFsZjQgb3BlcmF0b3JbXT0oaGFsZjQgdiwgdWludCBpbmRleCwgaGFsZiBhKSB7Cisg
ICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBh
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICB2
LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAg
ICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3BlcmF0b3I9PShmbG9hdDIg
YSwgZmxvYXQyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55OworfQor
Ym9vbCBvcGVyYXRvcj09KGZsb2F0MyBhLCBmbG9hdDMgYikgeworICAgIHJldHVybiBhLnggPT0g
Yi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3BlcmF0b3I9PShmbG9h
dDQgYSwgZmxvYXQ0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYm
IGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBmbG9hdCBvcGVyYXRvci54KGZs
b2F0Mik7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueShmbG9hdDIpOworbmF0aXZlIGZsb2F0IG9w
ZXJhdG9yLngoZmxvYXQzKTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvci55KGZsb2F0Myk7CituYXRp
dmUgZmxvYXQgb3BlcmF0b3IueihmbG9hdDMpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLngoZmxv
YXQ0KTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvci55KGZsb2F0NCk7CituYXRpdmUgZmxvYXQgb3Bl
cmF0b3IueihmbG9hdDQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLncoZmxvYXQ0KTsKK25hdGl2
ZSBmbG9hdDIgb3BlcmF0b3IueD0oZmxvYXQyLCBmbG9hdCk7CituYXRpdmUgZmxvYXQyIG9wZXJh
dG9yLnk9KGZsb2F0MiwgZmxvYXQpOworbmF0aXZlIGZsb2F0MyBvcGVyYXRvci54PShmbG9hdDMs
IGZsb2F0KTsKK25hdGl2ZSBmbG9hdDMgb3BlcmF0b3IueT0oZmxvYXQzLCBmbG9hdCk7CituYXRp
dmUgZmxvYXQzIG9wZXJhdG9yLno9KGZsb2F0MywgZmxvYXQpOworbmF0aXZlIGZsb2F0NCBvcGVy
YXRvci54PShmbG9hdDQsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDQgb3BlcmF0b3IueT0oZmxvYXQ0
LCBmbG9hdCk7CituYXRpdmUgZmxvYXQ0IG9wZXJhdG9yLno9KGZsb2F0NCwgZmxvYXQpOworbmF0
aXZlIGZsb2F0NCBvcGVyYXRvci53PShmbG9hdDQsIGZsb2F0KTsKK2Zsb2F0IG9wZXJhdG9yW10o
ZmxvYXQyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNh
c2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAg
ICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAg
IH0KK30KK2Zsb2F0IG9wZXJhdG9yW10oZmxvYXQzIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0
Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7Cisg
ICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoK
KyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0
cmFwOworICAgIH0KK30KK2Zsb2F0IG9wZXJhdG9yW10oZmxvYXQ0IHYsIHVpbnQgaW5kZXgpIHsK
KyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVy
biB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAg
IGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAg
ICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOwor
ICAgIH0KK30KK2Zsb2F0MiBvcGVyYXRvcltdPShmbG9hdDIgdiwgdWludCBpbmRleCwgZmxvYXQg
YSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAg
di54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAg
ICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Zsb2F0MyBvcGVyYXRvcltdPShm
bG9hdDMgdiwgdWludCBpbmRleCwgZmxvYXQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAg
ICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVy
biB2OworfQorZmxvYXQ0IG9wZXJhdG9yW109KGZsb2F0NCB2LCB1aW50IGluZGV4LCBmbG9hdCBh
KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2
LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAg
IHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAg
ICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6CisgICAgICAg
ICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KKworLypoYWxmMngyIG9wZXJh
dG9yKyhoYWxmMngyIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1b
MV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAg
IHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
Ki8KK2A7CisKKy8vIEZJWE1FOiBPbmNlIHRoZSBzdGFuZGFyZCBsaWJyYXJ5IGhhcyBiZWVuIHJl
cGxhY2VkIHdpdGggYSBuZXcgdmVyc2lvbiwgdGhpcyBjb21tZW50cyBzaG91bGQgYmUgcmVtb3Zl
ZC4KKy8vIFRoaXMgbGlzdCBpcyB1c2VkIHRvIHJlc3RyaWN0IHRoZSBhdmFpbGFiaWxpdHkgb2Yg
dmVjdG9yIHR5cGVzIGF2YWlsYWJsZSBpbiB0aGUgbGFuZ2F1Z2UuCisvLyBQZXJtaXNzaWJsZSB2
ZWN0b3IgZWxlbWVudCB0eXBlcyBtdXN0IGFwcGVhciBpbiB0aGlzIGxpc3QgYW5kIGluIHRoZSBz
dGFuZGFyZCBsaWJyYXJ5Citjb25zdCBWZWN0b3JFbGVtZW50VHlwZXMgPSBbICJib29sIiwgInVj
aGFyIiwgImNoYXIiLCAidXNob3J0IiwgInNob3J0IiwgInVpbnQiLCAiaW50IiwgImhhbGYiLCAi
ZmxvYXQiIF07Citjb25zdCBWZWN0b3JFbGVtZW50U2l6ZXMgPSBbIDIsIDMsIDQgXTsKKworZnVu
Y3Rpb24gYWxsVmVjdG9yVHlwZU5hbWVzKCkKK3sKKyAgICBjb25zdCBuYW1lcyA9IFtdOworICAg
IGZvciAobGV0IGVsZW1lbnRUeXBlIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgeworICAgICAgICBm
b3IgKGxldCBzaXplIG9mIFZlY3RvckVsZW1lbnRTaXplcykKKyAgICAgICAgICAgIG5hbWVzLnB1
c2goYCR7ZWxlbWVudFR5cGV9JHtzaXplfWApOworICAgIH0KKyAgICByZXR1cm4gbmFtZXM7Cit9
CiAKIC8vIEZJWE1FOiBUaGVzZSBuZWVkIHRvIGJlIGluY2x1ZGVkIGFzIHNvdXJjZSBpbiB0aGUg
c3RhbmRhcmQgbGlicmFyeS4KIHN0YW5kYXJkTGlicmFyeSArPSBTd2l6emxlT3AuZnVuY3Rpb25z
KCkuam9pbigiO1xuIikgKyAiO1xuIjsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1N0YXRlbWVudENsb25lci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL1N0YXRlbWVudENsb25lci5qcwppbmRleCBiMzk0OGM0NTBjNzE2MDk3Nzk3NWVkNGU4ZTk4
ZWQ5OWM0ZjdhMDU5Li4wZDA3MTVhOTg1NGRlZjFiZmQyYTgwOGM3NDA0MTEyYmExYTRhMGMxIDEw
MDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1lbnRDbG9uZXIu
anMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhdGVtZW50Q2xvbmVyLmpz
CkBAIC01MCw3ICs1MCw3IEBAIGNsYXNzIFN0YXRlbWVudENsb25lciBleHRlbmRzIFJld3JpdGVy
IHsKICAgICAKICAgICB2aXNpdE5hdGl2ZVR5cGUobm9kZSkKICAgICB7Ci0gICAgICAgIHJldHVy
biBuZXcgTmF0aXZlVHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lKTsKKyAgICAgICAgcmV0dXJu
IG5ldyBOYXRpdmVUeXBlKG5vZGUub3JpZ2luLCBub2RlLm5hbWUsIG5vZGUudHlwZUFyZ3VtZW50
cy5tYXAoYXJndW1lbnQgPT4gYXJndW1lbnQudmlzaXQodGhpcykpKTsKICAgICB9CiAgICAgCiAg
ICAgdmlzaXRUeXBlRGVmKG5vZGUpCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanMgYi9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0
b3IuanMKaW5kZXggZmVmZTljMDNkN2IxMGIzMTE2YjNiNjdmMmFmMDU3ZjE2ZmMxNTE2Yy4uZGM1
MDY1MzhkMWM2YzcxMDliMWFkMWVjYmEzY2VjMjc4ZDBmN2I1YyAxMDA2NDQKLS0tIGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJh
dG9yLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVEZWZh
dWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcwpAQCAtNDUsNiArNDUsMTggQEAgZnVuY3Rpb24gc3lu
dGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yKHByb2dyYW0pCiAgICAgICAgICAgICB0
eXBlcy5hZGQobm9kZSk7CiAgICAgICAgICAgICBzdXBlci52aXNpdEVsZW1lbnRhbFR5cGUobm9k
ZSk7CiAgICAgICAgIH0KKworICAgICAgICB2aXNpdFZlY3RvclR5cGUobm9kZSkKKyAgICAgICAg
eworICAgICAgICAgICAgdHlwZXMuYWRkKG5vZGUpOworICAgICAgICAgICAgc3VwZXIudmlzaXRW
ZWN0b3JUeXBlKG5vZGUpOworICAgICAgICB9CisKKyAgICAgICAgdmlzaXRNYXRyaXhUeXBlKG5v
ZGUpCisgICAgICAgIHsKKyAgICAgICAgICAgIHR5cGVzLmFkZChub2RlKTsKKyAgICAgICAgICAg
IHN1cGVyLnZpc2l0TWF0cml4VHlwZShub2RlKTsKKyAgICAgICAgfQogICAgIH0KIAogICAgIHBy
b2dyYW0udmlzaXQobmV3IEZpbmRBbGxUeXBlcygpKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVPcGVyYXRvckJvb2wuanMgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpzCmRlbGV0ZWQgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCA2OTVmZTEzNzUzZDBhMjY0M2IwOTViNTM0YjExOTIxN2Y2MjUz
OGIzLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVPcGVyYXRvckJvb2wuanMKKysrIC9k
ZXYvbnVsbApAQCAtMSwzNyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
Ci0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuIAotICovCi0idXNlIHN0cmljdCI7Ci0KLWZ1bmN0aW9uIHN5bnRoZXNpemVPcGVyYXRv
ckJvb2wocHJvZ3JhbSkKLXsKLSAgICBmb3IgKGxldCB0eXBlIG9mIHByb2dyYW0udHlwZXMudmFs
dWVzKCkpIHsKLSAgICAgICAgaWYgKCEodHlwZSBpbnN0YW5jZW9mIFN0cnVjdFR5cGUpICYmICEo
dHlwZSBpbnN0YW5jZW9mIEVudW1UeXBlKSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAg
ICBjb25zdCBmdW5jID0gbmV3IE5hdGl2ZUZ1bmModHlwZS5vcmlnaW4sICJvcGVyYXRvciBjYXN0
IiwgVHlwZVJlZi53cmFwKHByb2dyYW0udHlwZXMuZ2V0KCJib29sIikpLCBbIG5ldyBGdW5jUGFy
YW1ldGVyKHR5cGUub3JpZ2luLCBudWxsLCBUeXBlUmVmLndyYXAodHlwZSkpIF0sIHRydWUsIG51
bGwpOwotICAgICAgICBjb25zdCBvcGVyYXRvckJvb2wgPSBuZXcgT3BlcmF0b3JCb29sKHR5cGUu
bmFtZSk7Ci0gICAgICAgIG9wZXJhdG9yQm9vbC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1
bmMpOwotICAgICAgICBwcm9ncmFtLmFkZChmdW5jKTsKLSAgICB9Ci19CmRpZmYgLS1naXQgYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpz
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29y
cy5qcwppbmRleCBiZmU2MDQ0OTRkYzcyNWFlN2U3NGFkNGEwYmZlMjNlOTNjMDkxNzc2Li5hMDE4
MTQ2OGEyNWVkNGMwOTA1MGQ3YmYxZDYxZjQ0ZWQzYTBhYTY2IDEwMDY0NAotLS0gYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzCisrKyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMu
anMKQEAgLTUxLDcgKzUxLDcgQEAgZnVuY3Rpb24gc3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycyhw
cm9ncmFtKQogICAgICAgICAgICAgCiAgICAgICAgICAgICBmdW5jdGlvbiBjcmVhdGVUeXBlUmVm
KCkKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICByZXR1cm4gVHlwZVJlZi5pbnN0YW50
aWF0ZSh0eXBlKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gVHlwZVJlZi53cmFwKHR5cGUpOwog
ICAgICAgICAgICAgfQogICAgICAgICAgICAgCiAgICAgICAgICAgICBsZXQgaXNDYXN0ID0gZmFs
c2U7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0Lmh0bWwg
Yi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0Lmh0bWwKaW5kZXggMTNmMzU4MjM5
OTI5ZDhhM2U2YWNlNTI1NDViOTFjYTUyZDYwNjBlNC4uZDFlN2Y3ZjBlMTI3MjQ3M2Q3MTE1YzQz
OTQ0NjcxMjBiMDRmNjFjYiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvVGVzdC5odG1sCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuaHRt
bApAQCAtMjYsOSArMjYsNiBAQAogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3Rv
cnMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JTZXR0ZXIuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcyI+PC9zY3JpcHQ+Ci08c2Ny
aXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQg
c3JjPSJCdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iQ2FsbEV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkNhbGxGdW5j
dGlvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2suanMiPjwvc2NyaXB0PgpAQCAt
MzcsNiArMzQsNyBAQAogPHNjcmlwdCBzcmM9IkNoZWNrUmVjdXJzaW9uLmpzIj48L3NjcmlwdD4K
IDxzY3JpcHQgc3JjPSJDaGVja1JlY3Vyc2l2ZVR5cGVzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQg
c3JjPSJDaGVja1JldHVybnMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IkNoZWNrVHlwZXNX
aXRoQXJndW1lbnRzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja1VucmVhY2hhYmxl
Q29kZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tXcmFwcGVkLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJDaGVja2VyLmpzIj48L3NjcmlwdD4KQEAgLTg5LDYgKzg3LDcgQEAK
IDxzY3JpcHQgc3JjPSJMb29wQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTWFr
ZUFycmF5UmVmRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTWFrZVB0ckV4
cHJlc3Npb24uanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ik1hdHJpeFR5cGUuanMiPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9Ik5hbWVDb250ZXh0LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJOYW1lRmluZGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOYW1lUmVzb2x2ZXIuanMi
Pjwvc2NyaXB0PgpAQCAtOTYsOSArOTUsOCBAQAogPHNjcmlwdCBzcmM9Ik5vcm1hbFVzZVByb3Bl
cnR5UmVzb2x2ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik51bGxMaXRlcmFsLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOdWxsVHlwZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iT3BlcmF0b3JBbmRlckluZGV4LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJPcGVyYXRv
ckFuZGVySW5kZXhlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iT3BlcmF0b3JBcnJheVJl
Zkxlbmd0aC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3BlcmF0b3JCb29sLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJPcmlnaW5LaW5kLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJQ
YXJzZS5qcyI+PC9zY3JpcHQ+CkBAIC0xMTAsNyArMTA4LDYgQEAKIDxzY3JpcHQgc3JjPSJSZWFk
TW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZWN1cnNp
b25DaGVja2VyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZWN1cnNpdmVUeXBlQ2hlY2tl
ci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iUmVtb3ZlVHlwZUFyZ3VtZW50cy5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2ZU5hbWVzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQg
c3JjPSJSZXNvbHZlT3ZlcmxvYWRJbXBsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZXNv
bHZlUHJvcGVydGllcy5qcyI+PC9zY3JpcHQ+CkBAIC0xMjcsMTMgKzEyNCwxMyBAQAogPHNjcmlw
dCBzcmM9IlN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJTeW50aGVzaXplRW51bUZ1bmN0aW9ucy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0i
U3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhl
c2l6ZUNvcHlDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJT
eW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanMiPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9IlRyYXBTdGF0ZW1lbnQuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVEZWYu
anMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVEZWZSZXNvbHZlci5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iVHlwZVJlZi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iVHlwZU92
ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVk
VmFsdWUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlVpbnRMaXRlcmFsLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJVaW50TGl0ZXJhbFR5cGUuanMiPjwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qcyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMKaW5kZXggZGY0MTdkYWJmNmQ4NzEzNWU3MzVjYThjOWIx
YmYxM2FiNjQwNzVhMS4uYjM1OThkZDdmYTE4OGU4ZWQ0YjA0ZWEwZjRlZDg0NmU2NzYyODZhMCAx
MDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qcworKysgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCkBAIC0yMTUzLDQxICsyMTUzLDYg
QEAgdGVzdHMub3BlcmF0b3JCb29sID0gZnVuY3Rpb24oKQogCiAgICAgICAgIGJvb2wgYm9vbEZy
b21GbG9hdEZhbHNlKCkgeyByZXR1cm4gYm9vbChmbG9hdCgwKSk7IH0KICAgICAgICAgYm9vbCBi
b29sRnJvbUZsb2F0VHJ1ZSgpIHsgcmV0dXJuIGJvb2woZmxvYXQoMSkpOyB9Ci0KLSAgICAgICAg
Ym9vbCBib29sRnJvbUludDJGYWxzZSgpIHsgcmV0dXJuIGJvb2woaW50MigwLCAwKSk7IH0KLSAg
ICAgICAgYm9vbCBib29sRnJvbUludDJUcnVlMSgpIHsgcmV0dXJuIGJvb2woaW50MigxLCAwKSk7
IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUludDJUcnVlMigpIHsgcmV0dXJuIGJvb2woaW50Migw
LCAxKSk7IH0KLQotICAgICAgICBib29sIGJvb2xGcm9tRmxvYXQzRmFsc2UoKSB7IHJldHVybiBi
b29sKGZsb2F0MygwLCAwLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUZsb2F0M1RydWUx
KCkgeyByZXR1cm4gYm9vbChmbG9hdDMoMSwgMCwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZy
b21GbG9hdDNUcnVlMigpIHsgcmV0dXJuIGJvb2woZmxvYXQzKDAsIDEsIDApKTsgfQotICAgICAg
ICBib29sIGJvb2xGcm9tRmxvYXQzVHJ1ZTMoKSB7IHJldHVybiBib29sKGZsb2F0MygwLCAwLCAx
KSk7IH0KLQotICAgICAgICBib29sIGJvb2xGcm9tVWludDRGYWxzZSgpIHsgcmV0dXJuIGJvb2wo
dWludDQoMCwgMCwgMCwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21VaW50NFRydWUxKCkg
eyByZXR1cm4gYm9vbCh1aW50NCgxLCAwLCAwLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJv
bVVpbnQ0VHJ1ZTIoKSB7IHJldHVybiBib29sKHVpbnQ0KDAsIDEsIDAsIDApKTsgfQotICAgICAg
ICBib29sIGJvb2xGcm9tVWludDRUcnVlMygpIHsgcmV0dXJuIGJvb2wodWludDQoMCwgMCwgMSwg
MCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21VaW50NFRydWU0KCkgeyByZXR1cm4gYm9vbCh1
aW50NCgwLCAwLCAwLCAxKSk7IH0KLQotICAgICAgICBzdHJ1Y3QgWCB7IGludCB4OyB9Ci0KLSAg
ICAgICAgYm9vbCBib29sRnJvbVN0cnVjdEZhbHNlKCkKLSAgICAgICAgewotICAgICAgICAgICAg
WCB4OwotICAgICAgICAgICAgcmV0dXJuIGJvb2woeCk7Ci0gICAgICAgIH0KLQotICAgICAgICBi
b29sIGJvb2xGcm9tU3RydWN0VHJ1ZSgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIFggeDsKLSAg
ICAgICAgICAgIHgueCA9IDE7Ci0gICAgICAgICAgICByZXR1cm4gYm9vbCh4KTsKLSAgICAgICAg
fQotCi0gICAgICAgIGVudW0gWSB7IEEsIEIgfQotCi0gICAgICAgIGJvb2wgYm9vbEZyb21FbnVt
RmFsc2UoKSB7IHJldHVybiBib29sKFkuQSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUVudW1U
cnVlKCkgeyByZXR1cm4gYm9vbChZLkIpOyB9CiAgICAgYCk7CiAKICAgICBjaGVja0Jvb2wocHJv
Z3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbVVjaGFyRmFsc2UiLCBbXSksIGZh
bHNlKTsKQEAgLTIyMDEsMjcgKzIxNjYsNiBAQCB0ZXN0cy5vcGVyYXRvckJvb2wgPSBmdW5jdGlv
bigpCiAKICAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29s
RnJvbUZsb2F0RmFsc2UiLCBbXSksIGZhbHNlKTsKICAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2Fs
bEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUZsb2F0VHJ1ZSIsIFtdKSwgdHJ1ZSk7Ci0KLSAg
ICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUludDJG
YWxzZSIsIFtdKSwgZmFsc2UpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24o
cHJvZ3JhbSwgImJvb2xGcm9tSW50MlRydWUxIiwgW10pLCB0cnVlKTsKLSAgICBjaGVja0Jvb2wo
cHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUludDJUcnVlMiIsIFtdKSwg
dHJ1ZSk7Ci0KLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJi
b29sRnJvbUZsb2F0M0ZhbHNlIiwgW10pLCBmYWxzZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0s
IGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdDNUcnVlMSIsIFtdKSwgdHJ1ZSk7
Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21G
bG9hdDNUcnVlMiIsIFtdKSwgdHJ1ZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5j
dGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdDNUcnVlMyIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBj
aGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbVVpbnQ0RmFs
c2UiLCBbXSksIGZhbHNlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHBy
b2dyYW0sICJib29sRnJvbVVpbnQ0VHJ1ZTEiLCBbXSksIHRydWUpOwotICAgIGNoZWNrQm9vbChw
cm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tVWludDRUcnVlMiIsIFtdKSwg
dHJ1ZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9v
bEZyb21VaW50NFRydWUzIiwgW10pLCB0cnVlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2Fs
bEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbVVpbnQ0VHJ1ZTQiLCBbXSksIHRydWUpOwotCi0g
ICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21TdHJ1
Y3RGYWxzZSIsIFtdKSwgZmFsc2UpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rp
b24ocHJvZ3JhbSwgImJvb2xGcm9tU3RydWN0VHJ1ZSIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBjaGVj
a0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUVudW1GYWxzZSIs
IFtdKSwgZmFsc2UpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3Jh
bSwgImJvb2xGcm9tRW51bVRydWUiLCBbXSksIHRydWUpOwogfQogCiB0ZXN0cy5ib29sQml0QW5k
ID0gZnVuY3Rpb24oKQpAQCAtMjg4MSw3ICsyODI1LDcgQEAgdGVzdHMuc2hhZGVyVHlwZXMgPSBm
dW5jdGlvbigpCiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBmcmFnbWVudCBCb28gYmFyKEZv
byBzdGFnZUluKQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIHJldHVybiBib28oKTsK
KyAgICAgICAgICAgICAgICByZXR1cm4gQm9vKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgIGAp
LAogICAgICAgICAoZSkgPT4gZSBpbnN0YW5jZW9mIFdUeXBlRXJyb3IpOwpAQCAtMjkwNCw3ICsy
ODQ4LDcgQEAgdGVzdHMuc2hhZGVyVHlwZXMgPSBmdW5jdGlvbigpCiAKIHRlc3RzLnZlY3RvclR5
cGVTeW50YXggPSBmdW5jdGlvbigpCiB7Ci0gICAgY29uc3QgcHJvZ3JhbSA9IGRvUHJlcChgCisg
ICAgbGV0IHByb2dyYW0gPSBkb1ByZXAoYAogICAgICAgICBpbnQgZm9vMigpCiAgICAgICAgIHsK
ICAgICAgICAgICAgIGludDIgeDsKQEAgLTI5MzksNyArMjg4MywyNiBAQCB0ZXN0cy52ZWN0b3JU
eXBlU3ludGF4ID0gZnVuY3Rpb24oKQogICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlv
bihwcm9ncmFtLCAiZm9vMiIsIFtdKSwgNCk7CiAgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1
bmN0aW9uKHByb2dyYW0sICJmb28zIiwgW10pLCA1KTsKICAgICBjaGVja0ludChwcm9ncmFtLCBj
YWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbzQiLCBbXSksIDYpOworICAgIGNoZWNrQm9vbChwcm9n
cmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgInZlYzJPcGVyYXRvckNhc3QiLCBbXSksIHRydWUp
OworCisgICAgcHJvZ3JhbSA9IGRvUHJlcChgCisgICAgICAgIHR5cGVkZWYgaSA9IGludDsKKyAg
ICAgICAgaW50IGZvbzIoKQorICAgICAgICB7CisgICAgICAgICAgICBpbnQyIHg7CisgICAgICAg
ICAgICB2ZWN0b3I8aSwgMj4geiA9IGludDIoMywgNCk7CisgICAgICAgICAgICB4ID0gejsKKyAg
ICAgICAgICAgIHJldHVybiB4Lnk7CisgICAgICAgIH0KKworICAgICAgICBib29sIHZlYzJPcGVy
YXRvckNhc3QoKQorICAgICAgICB7CisgICAgICAgICAgICBpbnQyIHggPSB2ZWN0b3I8aSwyPigx
LCAyKTsKKyAgICAgICAgICAgIHZlY3RvcjxpLCAyPiB5ID0gaW50MigxLCAyKTsKKyAgICAgICAg
ICAgIHJldHVybiB4ID09IHkgJiYgeC54ID09IDEgJiYgeC55ID09IDIgJiYgeS54ID09IDEgJiYg
eS55ID09IDI7CisgICAgICAgIH1gKTsKIAorICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5j
dGlvbihwcm9ncmFtLCAiZm9vMiIsIFtdKSwgNCk7CiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNh
bGxGdW5jdGlvbihwcm9ncmFtLCAidmVjMk9wZXJhdG9yQ2FzdCIsIFtdKSwgdHJ1ZSk7CiB9CiAK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVPdmVybG9hZFJl
c29sdXRpb25GYWlsdXJlLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZU92
ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDVjYjNmNzEwZmEwY2UwM2Qy
OTAyZmEzMmVkOGIwMjc1ZmI2MjYwOAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1R5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzCkBAIC0wLDAg
KzEsNDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKyJ1
c2Ugc3RyaWN0IjsKKworY2xhc3MgVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUgeworICAg
IGNvbnN0cnVjdG9yKHR5cGUsIHJlYXNvbikKKyAgICB7CisgICAgICAgIHRoaXMuX3R5cGUgPSB0
eXBlOworICAgICAgICB0aGlzLl9yZWFzb24gPSByZWFzb247CisgICAgfQorICAgIAorICAgIGdl
dCB0eXBlKCkgeyByZXR1cm4gdGhpcy5fdHlwZTsgfQorICAgIGdldCByZWFzb24oKSB7IHJldHVy
biB0aGlzLl9yZWFzb247IH0KKyAgICAKKyAgICB0b1N0cmluZygpCisgICAgeworICAgICAgICBy
ZXR1cm4gdGhpcy50eXBlLnRvU3RyaW5nKCkgKyAiIGRpZCBub3QgbWF0Y2ggYmVjYXVzZTogIiAr
IHRoaXMucmVhc29uOworICAgIH0KK30KKwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVHlwZVJlZi5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5
cGVSZWYuanMKaW5kZXggYjVmM2MwYjNkOTI1MzJlMDVjNjgwMDU0YTE2MWYwNWUwZGRkNjQ2Yi4u
YWNkYTcwNmMwY2UzNzk3ZTQ2YjA5NTE3ZGNiMDgxZWE1OWUzZGY4OSAxMDA2NDQKLS0tIGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZVJlZi5qcworKysgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVmLmpzCkBAIC0yNSw3ICsyNSw3IEBACiAidXNlIHN0cmlj
dCI7CiAKIGNsYXNzIFR5cGVSZWYgZXh0ZW5kcyBUeXBlIHsKLSAgICBjb25zdHJ1Y3Rvcihvcmln
aW4sIG5hbWUsIHR5cGVBcmd1bWVudHMgPSBudWxsKQorICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwg
bmFtZSwgdHlwZUFyZ3VtZW50cyA9IFtdKQogICAgIHsKICAgICAgICAgc3VwZXIoKTsKICAgICAg
ICAgdGhpcy5fb3JpZ2luID0gb3JpZ2luOwpAQCAtMzgsMTQgKzM4LDExIEBAIGNsYXNzIFR5cGVS
ZWYgZXh0ZW5kcyBUeXBlIHsKICAgICB7CiAgICAgICAgIGlmICh0eXBlIGluc3RhbmNlb2YgVHlw
ZVJlZikKICAgICAgICAgICAgIHJldHVybiB0eXBlOwotICAgICAgICBsZXQgcmVzdWx0ID0gbmV3
IFR5cGVSZWYodHlwZS5vcmlnaW4sIHR5cGUubmFtZSk7Ci0gICAgICAgIHJlc3VsdC50eXBlID0g
dHlwZTsKLSAgICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICB9Ci0gICAgCi0gICAgc3RhdGljIGlu
c3RhbnRpYXRlKHR5cGUpCi0gICAgewotICAgICAgICBsZXQgcmVzdWx0ID0gbmV3IFR5cGVSZWYo
dHlwZS5vcmlnaW4sIHR5cGUubmFtZSk7CisgICAgICAgIGxldCByZXN1bHQ7CisgICAgICAgIGlm
ICh0eXBlIGluc3RhbmNlb2YgTmF0aXZlVHlwZSkKKyAgICAgICAgICAgIHJlc3VsdCA9IG5ldyBU
eXBlUmVmKHR5cGUub3JpZ2luLCB0eXBlLm5hbWUsIHR5cGUudHlwZUFyZ3VtZW50cyk7CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3JnaW4sIHR5
cGUubmFtZSk7CiAgICAgICAgIHJlc3VsdC50eXBlID0gdHlwZTsKICAgICAgICAgcmV0dXJuIHJl
c3VsdDsKICAgICB9CkBAIC02NCw2ICs2MSwzOSBAQCBjbGFzcyBUeXBlUmVmIGV4dGVuZHMgVHlw
ZSB7CiAgICAgICAgIHRoaXMuX3R5cGUgPSBuZXdUeXBlOwogICAgIH0KIAorICAgIHJlc29sdmUo
cG9zc2libGVPdmVybG9hZHMpCisgICAgeworICAgICAgICBpZiAoIXBvc3NpYmxlT3ZlcmxvYWRz
KQorICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IodGhpcy5vcmlnaW4ub3JpZ2luU3Ry
aW5nLCAiRGlkIG5vdCBmaW5kIGFueSB0eXBlcyBuYW1lZCAiICsgdGhpcy5uYW1lKTsKKworICAg
ICAgICBsZXQgZmFpbHVyZXMgPSBbXTsKKyAgICAgICAgbGV0IG92ZXJsb2FkID0gcmVzb2x2ZVR5
cGVPdmVybG9hZEltcGwocG9zc2libGVPdmVybG9hZHMsIHRoaXMudHlwZUFyZ3VtZW50cyk7CisK
KyAgICAgICAgaWYgKCFvdmVybG9hZC50eXBlKSB7CisgICAgICAgICAgICBmYWlsdXJlcy5wdXNo
KC4uLm92ZXJsb2FkLmZhaWx1cmVzKTsKKyAgICAgICAgICAgIGxldCBtZXNzYWdlID0gIkRpZCBu
b3QgZmluZCB0eXBlIG5hbWVkICIgKyB0aGlzLm5hbWUgKyAiIGZvciB0eXBlIGFyZ3VtZW50cyAi
OworICAgICAgICAgICAgbWVzc2FnZSArPSAiKCIgKyB0aGlzLnR5cGVBcmd1bWVudHMgKyAiKSI7
CisgICAgICAgICAgICBpZiAoZmFpbHVyZXMubGVuZ3RoKQorICAgICAgICAgICAgICAgIG1lc3Nh
Z2UgKz0gIiwgYnV0IGNvbnNpZGVyZWQ6XG4iICsgZmFpbHVyZXMuam9pbigiXG4iKQorICAgICAg
ICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IodGhpcy5vcmlnaW4ub3JpZ2luU3RyaW5nLCBtZXNz
YWdlKTsKKyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy50eXBl
QXJndW1lbnRzLmxlbmd0aDsgKytpKSB7CisgICAgICAgICAgICBsZXQgdHlwZUFyZ3VtZW50ID0g
dGhpcy50eXBlQXJndW1lbnRzW2ldOworICAgICAgICAgICAgbGV0IHJlc29sdmVkVHlwZUFyZ3Vt
ZW50ID0gb3ZlcmxvYWQudHlwZS50eXBlQXJndW1lbnRzW2ldOworICAgICAgICAgICAgbGV0IHJl
c3VsdCA9IHR5cGVBcmd1bWVudC5lcXVhbHNXaXRoQ29tbWl0KHJlc29sdmVkVHlwZUFyZ3VtZW50
KTsKKyAgICAgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAgICAgIHRocm93IG5ldyBF
cnJvcigiQXQgIiArIHRoaXMub3JpZ2luLm9yaWdpblN0cmluZyArICIgYXJndW1lbnQgdHlwZXMg
Zm9yIFR5cGUgYW5kIFR5cGVSZWYgbm90IGVxdWFsOiBhcmd1bWVudCB0eXBlID0gIiArIHR5cGVB
cmd1bWVudCArICIsIHJlc29sdmVkIHR5cGUgYXJndW1lbnQgPSAiICsgcmVzb2x2ZWRUeXBlQXJn
dW1lbnQpOworICAgICAgICAgICAgaWYgKHJlc29sdmVkVHlwZUFyZ3VtZW50LmNvbnN0cnVjdG9y
Lm5hbWUgPT0gIkdlbmVyaWNMaXRlcmFsIikgeworICAgICAgICAgICAgICAgIHJlc3VsdCA9IHR5
cGVBcmd1bWVudC50eXBlLmVxdWFsc1dpdGhDb21taXQocmVzb2x2ZWRUeXBlQXJndW1lbnQudHlw
ZSk7CisgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICAgICAgICAgIHRo
cm93IG5ldyBFcnJvcigiQXQgIiArIHRoaXMub3JpZ2luLm9yaWdpblN0cmluZyArICIgYXJndW1l
bnQgdHlwZXMgZm9yIFR5cGUgYW5kIFR5cGVSZWYgbm90IGVxdWFsOiBhcmd1bWVudCB0eXBlID0g
IiArIHR5cGVBcmd1bWVudCArICIsIHJlc29sdmVkIHR5cGUgYXJndW1lbnQgPSAiICsgcmVzb2x2
ZWRUeXBlQXJndW1lbnQpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIAorICAgICAg
ICB9CisgICAgICAgIHRoaXMudHlwZSA9IG92ZXJsb2FkLnR5cGU7CisgICAgfQorCiAgICAgZ2V0
IHVuaWZ5Tm9kZSgpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMudHlwZSkKQEAgLTk5LDcgKzEy
OSwxMCBAQCBjbGFzcyBUeXBlUmVmIGV4dGVuZHMgVHlwZSB7CiAgICAgewogICAgICAgICBpZiAo
IXRoaXMubmFtZSkKICAgICAgICAgICAgIHJldHVybiB0aGlzLnR5cGUudG9TdHJpbmcoKTsKLSAg
ICAgICAgcmV0dXJuIHRoaXMubmFtZTsKKyAgICAgICAgbGV0IHJlc3VsdCA9IHRoaXMubmFtZTsK
KyAgICAgICAgaWYgKHRoaXMudHlwZUFyZ3VtZW50cy5sZW5ndGggPiAwKQorICAgICAgICAgICAg
cmVzdWx0ICs9ICI8IiArIHRoaXMudHlwZUFyZ3VtZW50cy5tYXAoYXJndW1lbnQgPT4gYXJndW1l
bnQudG9TdHJpbmcoKSkuam9pbigiLCIpICsgIj4iOworICAgICAgICByZXR1cm4gcmVzdWx0Owog
ICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5p
ZmljYXRpb25Db250ZXh0LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmlj
YXRpb25Db250ZXh0LmpzCmluZGV4IDJmNzE1NDdiMGFmYmUxODAzNzhmMzc5OTYyMzE4NjJhMmI5
MWE4MmUuLjM4MTkxNjk3MjIzZWY3MjFhNTM3OTE0YjM2OTg5NzY3ODFmZTZlNmUgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1VuaWZpY2F0aW9uQ29udGV4dC5qcwor
KysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9VbmlmaWNhdGlvbkNvbnRleHQuanMK
QEAgLTkyLDYgKzkyLDE5IEBAIGNsYXNzIFVuaWZpY2F0aW9uQ29udGV4dCB7CiAgICAgCiAgICAg
dmVyaWZ5KCkKICAgICB7CisgICAgICAgIC8vIFdlIGRvIGEgdHdvLXBoYXNlIHByZS12ZXJpZmlj
YXRpb24uIFRoaXMgZ2l2ZXMgbGl0ZXJhbHMgYSBjaGFuY2UgdG8gc2VsZWN0IGEgbW9yZSBzcGVj
aWZpYyB0eXBlLgorICAgICAgICBsZXQgcHJlcGFyYXRpb25zID0gW107CisgICAgICAgIGZvciAo
bGV0IG5vZGUgb2YgdGhpcy5ub2RlcykgeworICAgICAgICAgICAgbGV0IHByZXBhcmF0aW9uID0g
bm9kZS5wcmVwYXJlVG9WZXJpZnkodGhpcyk7CisgICAgICAgICAgICBpZiAocHJlcGFyYXRpb24p
CisgICAgICAgICAgICAgICAgcHJlcGFyYXRpb25zLnB1c2gocHJlcGFyYXRpb24pOworICAgICAg
ICB9CisgICAgICAgIGZvciAobGV0IHByZXBhcmF0aW9uIG9mIHByZXBhcmF0aW9ucykgeworICAg
ICAgICAgICAgbGV0IHJlc3VsdCA9IHByZXBhcmF0aW9uKCk7CisgICAgICAgICAgICBpZiAoIXJl
c3VsdC5yZXN1bHQpCisgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgfQor
CiAgICAgICAgIGZvciAobGV0IHR5cGVBcmd1bWVudCBvZiB0aGlzLnR5cGVBcmd1bWVudHMoKSkg
ewogICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHR5cGVBcmd1bWVudC52ZXJpZnlBc0FyZ3VtZW50
KHRoaXMpOwogICAgICAgICAgICAgaWYgKCFyZXN1bHQucmVzdWx0KQpkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmVjdG9yVHlwZS5qcyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL1ZlY3RvclR5cGUuanMKaW5kZXggNTAxNGM2NzFhMDc4ODIwMDJjMjM0
YmIzMmYxN2M4ODYwZWZmYzFjNi4uZGYwY2JjMmM3MzA4ZjQ1NDEzY2JjYzI4ZDg5NjIxYmMwM2Fi
MjYwNCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmVjdG9yVHlw
ZS5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9WZWN0b3JUeXBlLmpzCkBA
IC0yNSwxOSArMjUsMTQgQEAKICJ1c2Ugc3RyaWN0IjsKIAogY2xhc3MgVmVjdG9yVHlwZSBleHRl
bmRzIE5hdGl2ZVR5cGUgewotICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwgbmFtZSkKKyAgICBjb25z
dHJ1Y3RvcihvcmlnaW4sIG5hbWUsIHR5cGVBcmd1bWVudHMpCiAgICAgewotICAgICAgICBzdXBl
cihvcmlnaW4sIG5hbWUpOwotICAgICAgICBjb25zdCBtYXRjaCA9IC9eKFtBLXpdKykoWzAtOV0p
JC8uZXhlYyhuYW1lKTsKLSAgICAgICAgaWYgKCFtYXRjaCkKLSAgICAgICAgICAgIHRocm93IG5l
dyBXVHlwZUVycm9yKG9yaWdpbi5vcmlnaW5TdHJpbmcsIGAke25hbWV9IGRvZXNuJ3QgbWF0Y2gg
dGhlIGZvcm1hdCBmb3IgdmVjdG9yIHR5cGUgbmFtZXMuJ2ApOwotCi0gICAgICAgIHRoaXMuX2Vs
ZW1lbnRUeXBlID0gbmV3IFR5cGVSZWYob3JpZ2luLCBtYXRjaFsxXSk7Ci0gICAgICAgIHRoaXMu
X251bUVsZW1lbnRzVmFsdWUgPSBwYXJzZUludChtYXRjaFsyXSk7CisgICAgICAgIHN1cGVyKG9y
aWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CiAgICAgfQogCi0gICAgZ2V0IGVsZW1lbnRUeXBl
KCkgeyByZXR1cm4gdGhpcy5fZWxlbWVudFR5cGU7IH0KLSAgICBnZXQgbnVtRWxlbWVudHNWYWx1
ZSgpIHsgcmV0dXJuIHRoaXMuX251bUVsZW1lbnRzVmFsdWU7IH0KKyAgICBnZXQgZWxlbWVudFR5
cGUoKSB7IHJldHVybiB0aGlzLnR5cGVBcmd1bWVudHNbMF07IH0KKyAgICBnZXQgbnVtRWxlbWVu
dHMoKSB7IHJldHVybiB0aGlzLnR5cGVBcmd1bWVudHNbMV07IH0KKyAgICBnZXQgbnVtRWxlbWVu
dHNWYWx1ZSgpIHsgcmV0dXJuIHRoaXMubnVtRWxlbWVudHMudmFsdWU7IH0KICAgICBnZXQgc2l6
ZSgpIHsgcmV0dXJuIHRoaXMuZWxlbWVudFR5cGUuc2l6ZSAqIHRoaXMubnVtRWxlbWVudHNWYWx1
ZTsgfQogCiAgICAgdW5pZnlJbXBsKHVuaWZpY2F0aW9uQ29udGV4dCwgb3RoZXIpCkBAIC01OSw3
ICs1NCw3IEBAIGNsYXNzIFZlY3RvclR5cGUgZXh0ZW5kcyBOYXRpdmVUeXBlIHsKIAogICAgIHRv
U3RyaW5nKCkKICAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0aXZlIHR5cGVkZWYgJHt0aGlzLmVs
ZW1lbnRUeXBlfSR7dGhpcy5udW1FbGVtZW50c1ZhbHVlfWA7CisgICAgICAgIHJldHVybiBgbmF0
aXZlIHR5cGVkZWYgdmVjdG9yPCR7dGhpcy5lbGVtZW50VHlwZX0sICR7dGhpcy5udW1FbGVtZW50
c1ZhbHVlfT5gOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvVmlzaXRvci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0
b3IuanMKaW5kZXggN2QzODdiMjVmMjU4OWI4NzM5MThhZjJmNDRjMjQzNGFkNjU4NzQ3Zi4uMmRl
MWU3NGRmMjcxOGJiM2JhNjhkMDVjMGU3MTAyYmQwNWEwMTY5MyAxMDA2NDQKLS0tIGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmlzaXRvci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9WaXNpdG9yLmpzCkBAIC02OCwxMCArNjgsMTQgQEAgY2xhc3MgVmlzaXRv
ciB7CiAgICAgCiAgICAgdmlzaXRUeXBlUmVmKG5vZGUpCiAgICAgeworICAgICAgICBmb3IgKGxl
dCB0eXBlQXJndW1lbnQgb2Ygbm9kZS50eXBlQXJndW1lbnRzKQorICAgICAgICAgICAgdHlwZUFy
Z3VtZW50LnZpc2l0KHRoaXMpOwogICAgIH0KICAgICAKICAgICB2aXNpdE5hdGl2ZVR5cGUobm9k
ZSkKICAgICB7CisgICAgICAgIGZvciAobGV0IHR5cGVBcmd1bWVudCBvZiBub2RlLnR5cGVBcmd1
bWVudHMpCisgICAgICAgICAgICB0eXBlQXJndW1lbnQudmlzaXQodGhpcyk7CiAgICAgfQogICAg
IAogICAgIHZpc2l0VHlwZURlZihub2RlKQpAQCAtMzI3LDYgKzMzMSwxNCBAQCBjbGFzcyBWaXNp
dG9yIHsKICAgICB2aXNpdFZlY3RvclR5cGUobm9kZSkKICAgICB7CiAgICAgICAgIG5vZGUuZWxl
bWVudFR5cGUudmlzaXQodGhpcyk7CisgICAgICAgIG5vZGUubnVtRWxlbWVudHMudmlzaXQodGhp
cyk7CisgICAgfQorCisgICAgdmlzaXRNYXRyaXhUeXBlKG5vZGUpCisgICAgeworICAgICAgICBu
b2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bVJvd3MudmlzaXQo
dGhpcyk7CisgICAgICAgIG5vZGUubnVtQ29sdW1ucy52aXNpdCh0aGlzKTsKICAgICB9CiB9CiAK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL2luZGV4Lmh0bWwgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9pbmRleC5odG1sCmluZGV4IDRjOTNhMzNlNmEz
ODY2MmU4YmExZTg0MjQwM2Q0YzAyZDVlOWY5ZGYuLjAwZmFhYmUzNzgyYTQ0YjIxNGY4MjNiMWVh
ZDUxMzE3ODY5MTlmOGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L2luZGV4Lmh0bWwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRt
bApAQCAtMjYsOSArMjYsNiBAQAogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3Rv
cnMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JTZXR0ZXIuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcyI+PC9zY3JpcHQ+Ci08c2Ny
aXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQg
c3JjPSJCdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iQ2FsbEV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkNhbGxGdW5j
dGlvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2suanMiPjwvc2NyaXB0PgpAQCAt
MzgsNiArMzUsNyBAQAogPHNjcmlwdCBzcmM9IkNoZWNrUmVjdXJzaXZlVHlwZXMuanMiPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9IkNoZWNrUmV0dXJucy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iQ2hlY2tVbnJlYWNoYWJsZUNvZGUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IkNoZWNr
VHlwZXNXaXRoQXJndW1lbnRzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja1dyYXBw
ZWQuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkNoZWNrZXIuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9IkNsb25lUHJvZ3JhbS5qcyI+PC9zY3JpcHQ+CkBAIC04OSw2ICs4Nyw3IEBACiA8
c2NyaXB0IHNyYz0iTG9vcENoZWNrZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik1ha2VB
cnJheVJlZkV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik1ha2VQdHJFeHBy
ZXNzaW9uLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJNYXRyaXhUeXBlLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJOYW1lQ29udGV4dC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
TmFtZUZpbmRlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTmFtZVJlc29sdmVyLmpzIj48
L3NjcmlwdD4KQEAgLTk2LDkgKzk1LDggQEAKIDxzY3JpcHQgc3JjPSJOb3JtYWxVc2VQcm9wZXJ0
eVJlc29sdmVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOdWxsTGl0ZXJhbC5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iTnVsbFR5cGUuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9
Ik9wZXJhdG9yQW5kZXJJbmRleC5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iT3BlcmF0b3JB
bmRlckluZGV4ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQXJyYXlSZWZM
ZW5ndGguanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQm9vbC5qcyI+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0iT3JpZ2luS2luZC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
T3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUGFy
c2UuanMiPjwvc2NyaXB0PgpAQCAtMTEwLDcgKzEwOCw2IEBACiA8c2NyaXB0IHNyYz0iUmVhZE1v
ZGlmeVdyaXRlRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVjdXJzaW9u
Q2hlY2tlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVjdXJzaXZlVHlwZUNoZWNrZXIu
anMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IlJlbW92ZVR5cGVBcmd1bWVudHMuanMiPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9IlJlc29sdmVOYW1lcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iUmVzb2x2ZU92ZXJsb2FkSW1wbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2
ZVByb3BlcnRpZXMuanMiPjwvc2NyaXB0PgpAQCAtMTI3LDEzICsxMjQsMTMgQEAKIDxzY3JpcHQg
c3JjPSJTeW50aGVzaXplQXJyYXlPcGVyYXRvckxlbmd0aC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9
IlN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IlN5
bnRoZXNpemVPcGVyYXRvckJvb2wuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlN5bnRoZXNp
emVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3lu
dGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQg
c3JjPSJUcmFwU3RhdGVtZW50LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUeXBlRGVmLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUeXBlRGVmUmVzb2x2ZXIuanMiPjwvc2NyaXB0Pgog
PHNjcmlwdCBzcmM9IlR5cGVSZWYuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IlR5cGVPdmVy
bG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJUeXBlZFZh
bHVlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJVaW50TGl0ZXJhbC5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iVWludExpdGVyYWxUeXBlLmpzIj48L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347935</attachid>
            <date>2018-08-23 10:41:43 -0700</date>
            <delta_ts>2018-08-23 10:42:26 -0700</delta_ts>
            <desc>Matrix types compile</desc>
            <filename>bug-188873-20180823104142.patch</filename>
            <type>text/plain</type>
            <size>235418</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MjE1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTMyMTQ5OWZlOTRlYzI1Y2M3MTM3OTZkNmQ2MmI2OGIx
MWZlYjVmZi4uNzNkOTQwZDUzYjZjZGRmMzY0NjM3YjcyNjNhYzE1NjdmODZhY2EwYSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1
OCBAQAorMjAxOC0wOC0yMiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29t
PgorCisgICAgICAgIFtXSExTTF0gQWRkIG1vcmUgZnVuY3Rpb25zIHRvIHRoZSBzdGFuZGFyZCBs
aWJyYXJ5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODg4NzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qczoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzOgorICAgICAgICAoQnVpbHRp
blZlY3RvckNvbnN0cnVjdG9ycyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
Q2FsbEV4cHJlc3Npb24uanM6CisgICAgICAgIChDYWxsRXhwcmVzc2lvbi5wcm90b3R5cGUucmVz
b2x2ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhB
cmd1bWVudHMuanM6IENvcGllZCBmcm9tIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5
bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcy4KKyAgICAgICAgKGNoZWNrVHlw
ZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlci5wcm90b3R5cGUudmlzaXRU
eXBlUmVmKToKKyAgICAgICAgKGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1l
bnRzQ2hlY2tlcik6CisgICAgICAgIChjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyk6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qczoKKyAgICAgICAgKENoZWNrZXIu
cHJvdG90eXBlLnZpc2l0UHJvZ3JhbSk6CisgICAgICAgIChDaGVja2VyLnByb3RvdHlwZS52aXNp
dFR5cGVSZWYpOgorICAgICAgICAoQ2hlY2tlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKToK
KyAgICAgICAgKENoZWNrZXIucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgICog
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanM6
CisgICAgICAgIChGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5wcm90b3R5cGUudmlzaXRN
YXRyaXhUeXBlKToKKyAgICAgICAgKEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyKToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qczoKKyAg
ICAgICAgKGluZmVyVHlwZXNGb3JDYWxsKToKKyAgICAgICAgKGluZmVyVHlwZXNGb3JUeXBlQXJn
dW1lbnRzKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpz
OgorICAgICAgICAoSW50cmluc2ljcy5jYXN0KToKKyAgICAgICAgKEludHJpbnNpY3MuYml0d2lz
ZUNhc3QpOgorICAgICAgICAoSW50cmluc2ljcy5jYXN0VG9IYWxmKToKKyAgICAgICAgKEludHJp
bnNpY3MuKToKKyAgICAgICAgKEludHJpbnNpY3MpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL01hdHJpeFR5cGUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9PcGVyYXRvckJvb2wuanMuCisgICAgICAgIChNYXRyaXhUeXBlKToKKyAgICAg
ICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBlbGVtZW50VHlwZSk6CisgICAgICAgIChNYXRy
aXhUeXBlLnByb3RvdHlwZS5nZXQgbnVtUm93cyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3Rv
dHlwZS5nZXQgbnVtQ29sdW1ucyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3RvdHlwZS5nZXQg
bnVtUm93c1ZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBudW1Db2x1
bW5zVmFsdWUpOgorICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUuZ2V0IHNpemUpOgorICAg
ICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUudW5pZnlJbXBsKToKKyAgICAgICAgKE1hdHJpeFR5
cGUucHJvdG90eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUu
cHJvdG90eXBlLnRvU3RyaW5nKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9O
YW1lQ29udGV4dC5qczoKKyAgICAgICAgKE5hbWVDb250ZXh0LnByb3RvdHlwZS5hZGQpOgorICAg
ICAgICAoTmFtZUNvbnRleHQucHJvdG90eXBlLmdldCBsZXQpOgorICAgICAgICAoTmFtZUNvbnRl
eHQudW5kZXJseWluZ1RoaW5ncy5wcm90b3R5cGUuZWxzZSk6CisgICAgICAgIChOYW1lQ29udGV4
dC5wcm90b3R5cGUuU3ltYm9sLml0ZXJhdG9yKToKKyAgICAgICAgKE5hbWVDb250ZXh0KToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVzb2x2ZXIuanM6CisgICAgICAg
IChOYW1lUmVzb2x2ZXIucHJvdG90eXBlLnZpc2l0VHlwZVJlZik6CisgICAgICAgIChOYW1lUmVz
b2x2ZXIucHJvdG90eXBlLnZpc2l0Q2FsbEV4cHJlc3Npb24pOgorICAgICAgICAoTmFtZVJlc29s
dmVyKToKKyAgICAgICAgKE5hbWVSZXNvbHZlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpz
OgorICAgICAgICAoTmF0aXZlVHlwZSk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS5n
ZXQgdHlwZUFyZ3VtZW50cyk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS50b1N0cmlu
Zyk6CisgICAgICAgIChOYXRpdmVUeXBlLmNyZWF0ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanM6IFJlbmFtZWQgZnJvbSBUb29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXguanMuCisgICAgICAgIChP
cGVyYXRvckFuZGVySW5kZXhlci5mdW5jdGlvbnMpOgorICAgICAgICAoT3BlcmF0b3JBbmRlcklu
ZGV4ZXIpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ByZXBhcmUuanM6Cisg
ICAgICAgIChsZXQucHJlcGFyZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UHJvZ3JhbS5qczoKKyAgICAgICAgKFByb2dyYW0ucHJvdG90eXBlLmFkZCk6CisgICAgICAgIChQ
cm9ncmFtLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgIChQcm9ncmFtKToKKyAgICAgICAg
KiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzOiBSZW1vdmVk
LgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVOYW1lcy5qczoKKyAg
ICAgICAgKHJlc29sdmVOYW1lc0luVHlwZXMpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL1Jlc29sdmVPdmVybG9hZEltcGwuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUmVzb2x2ZVR5cGVEZWZzLmpzOgorICAgICAgICAocmVzb2x2ZVR5cGVEZWZzSW5U
eXBlcyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanM6Cisg
ICAgICAgIChSZXdyaXRlci5wcm90b3R5cGUudmlzaXRUeXBlUmVmKToKKyAgICAgICAgKFJld3Jp
dGVyLnByb3RvdHlwZS52aXNpdFZlY3RvclR5cGUpOgorICAgICAgICAoUmV3cml0ZXIucHJvdG90
eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChSZXdyaXRlcik6CisgICAgICAgICogV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbDoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9TdGFuZGFyZExpYnJhcnkuanM6CisgICAgICAgIChvcGVyYXRvci5ib29sKToK
KyAgICAgICAgKGJvb2wub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIub3BlcmF0b3IpOgorICAg
ICAgICAodXNob3J0Lm9wZXJhdG9yKToKKyAgICAgICAgKGNoYXIub3BlcmF0b3IpOgorICAgICAg
ICAoc2hvcnQub3BlcmF0b3IpOgorICAgICAgICAodWludC5vcGVyYXRvcik6CisgICAgICAgIChp
bnQub3BlcmF0b3IpOgorICAgICAgICAoaGFsZi5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdC5v
cGVyYXRvcik6CisgICAgICAgICh1Y2hhcjIub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIzLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVjaGFyNC5vcGVyYXRvcik6CisgICAgICAgICh1c2hvcnQyLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVzaG9ydDMub3BlcmF0b3IpOgorICAgICAgICAodXNob3J0NC5v
cGVyYXRvcik6CisgICAgICAgICh1aW50Mi5vcGVyYXRvcik6CisgICAgICAgICh1aW50My5vcGVy
YXRvcik6CisgICAgICAgICh1aW50NC5vcGVyYXRvcik6CisgICAgICAgIChjaGFyMi5vcGVyYXRv
cik6CisgICAgICAgIChjaGFyMy5vcGVyYXRvcik6CisgICAgICAgIChjaGFyNC5vcGVyYXRvcik6
CisgICAgICAgIChzaG9ydDIub3BlcmF0b3IpOgorICAgICAgICAoc2hvcnQzLm9wZXJhdG9yKToK
KyAgICAgICAgKHNob3J0NC5vcGVyYXRvcik6CisgICAgICAgIChpbnQyLm9wZXJhdG9yKToKKyAg
ICAgICAgKGludDMub3BlcmF0b3IpOgorICAgICAgICAoaW50NC5vcGVyYXRvcik6CisgICAgICAg
IChoYWxmMi5vcGVyYXRvcik6CisgICAgICAgIChoYWxmMy5vcGVyYXRvcik6CisgICAgICAgICho
YWxmNC5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdDIub3BlcmF0b3IpOgorICAgICAgICAoZmxv
YXQzLm9wZXJhdG9yKToKKyAgICAgICAgKGZsb2F0NC5vcGVyYXRvcik6CisgICAgICAgIChoYWxm
MngyLm9wZXJhdG9yKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1l
bnRDbG9uZXIuanM6CisgICAgICAgIChTdGF0ZW1lbnRDbG9uZXIucHJvdG90eXBlLnZpc2l0TmF0
aXZlVHlwZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURl
ZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzOgorICAgICAgICAoc3ludGhlc2l6ZURlZmF1bHRD
b25zdHJ1Y3Rvck9wZXJhdG9yLkZpbmRBbGxUeXBlcy5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBl
KToKKyAgICAgICAgKHN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5GaW5kQWxs
VHlwZXMucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChzeW50aGVzaXplRGVm
YXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuRmluZEFsbFR5cGVzKToKKyAgICAgICAgKHN5bnRoZXNp
emVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qczoKKyAgICAgICAgKHN5bnRoZXNp
emVTdHJ1Y3RBY2Nlc3NvcnMuY3JlYXRlVHlwZVJlZik6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVGVzdC5odG1sOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Rlc3QuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpzLgorICAgICAgICAoVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUpOgorICAgICAgICAoVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1
cmUucHJvdG90eXBlLmdldCB0eXBlKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29sdXRpb25G
YWlsdXJlLnByb3RvdHlwZS5nZXQgcmVhc29uKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVHlwZVJlZi5qczoKKyAgICAgICAgKFR5cGVSZWYud3JhcCk6CisgICAgICAg
IChUeXBlUmVmLnByb3RvdHlwZS5yZXNvbHZlKToKKyAgICAgICAgKFR5cGVSZWYucHJvdG90eXBl
LnRvU3RyaW5nKToKKyAgICAgICAgKFR5cGVSZWYpOgorICAgICAgICAoVHlwZVJlZi5pbnN0YW50
aWF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmlj
YXRpb25Db250ZXh0LmpzOgorICAgICAgICAoVW5pZmljYXRpb25Db250ZXh0LnByb3RvdHlwZS52
ZXJpZnkpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ZlY3RvclR5cGUuanM6
CisgICAgICAgIChWZWN0b3JUeXBlKToKKyAgICAgICAgKFZlY3RvclR5cGUucHJvdG90eXBlLmdl
dCBlbGVtZW50VHlwZSk6CisgICAgICAgIChWZWN0b3JUeXBlLnByb3RvdHlwZS5nZXQgbnVtRWxl
bWVudHMpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUuZ2V0IG51bUVsZW1lbnRzVmFs
dWUpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanM6CisgICAgICAgIChWaXNpdG9yLnBy
b3RvdHlwZS52aXNpdFR5cGVSZWYpOgorICAgICAgICAoVmlzaXRvci5wcm90b3R5cGUudmlzaXRO
YXRpdmVUeXBlKToKKyAgICAgICAgKFZpc2l0b3IucHJvdG90eXBlLnZpc2l0VmVjdG9yVHlwZSk6
CisgICAgICAgIChWaXNpdG9yLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5cGUpOgorICAgICAgICAo
VmlzaXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRtbDoK
KwogMjAxOC0wOC0yMiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbQXR0YWNobWVudCBTdXBwb3J0XSBTdXBwb3J0IGRyYWdnaW5nIGF0dGFjaG1lbnQg
ZWxlbWVudHMgb3V0IGFzIGZpbGVzIG9uIG1hY09TCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9BbGwuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9B
bGwuanMKaW5kZXggODE1MjUyNzNhZTY1YTE0ODY1OTY0YTEzZGE0NWNlOTRlZjEwNjg0YS4uZTE5
ZDIyZjBmNmFiYzFjMjk4NmY4ZmMwM2MzZTVkOGI3YmEyY2VlNyAxMDA2NDQKLS0tIGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0FsbC5qcwpAQCAtNDYsMTIgKzQ2LDExIEBAIGxvYWQoIkF1dG9XcmFwcGVyLmpz
Iik7CiBsb2FkKCJCbG9jay5qcyIpOwogbG9hZCgiQm9vbExpdGVyYWwuanMiKTsKIGxvYWQoIkJy
ZWFrLmpzIik7Citsb2FkKCJCdWlsdGluTWF0cml4R2V0dGVyLmpzIik7Citsb2FkKCJCdWlsdGlu
TWF0cml4U2V0dGVyLmpzIik7CiBsb2FkKCJCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzIik7
CiBsb2FkKCJCdWlsdGluVmVjdG9yR2V0dGVyLmpzIik7CiBsb2FkKCJCdWlsdGluVmVjdG9yU2V0
dGVyLmpzIik7Ci1sb2FkKCJCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuanMiKTsKLWxvYWQoIkJ1
aWx0aW5WZWN0b3JJbmRleFNldHRlci5qcyIpOwotbG9hZCgiQnVpbHRpblZlY3RvckVxdWFsaXR5
T3BlcmF0b3IuanMiKTsKIGxvYWQoIkNhbGxFeHByZXNzaW9uLmpzIik7CiBsb2FkKCJDYWxsRnVu
Y3Rpb24uanMiKTsKIGxvYWQoIkNoZWNrLmpzIik7CkBAIC02MCw2ICs1OSw3IEBAIGxvYWQoIkNo
ZWNrTG9vcHMuanMiKTsKIGxvYWQoIkNoZWNrUmVjdXJzaW9uLmpzIik7CiBsb2FkKCJDaGVja1Jl
Y3Vyc2l2ZVR5cGVzLmpzIik7CiBsb2FkKCJDaGVja1JldHVybnMuanMiKTsKK2xvYWQoIkNoZWNr
VHlwZXNXaXRoQXJndW1lbnRzLmpzIik7CiBsb2FkKCJDaGVja1VucmVhY2hhYmxlQ29kZS5qcyIp
OwogbG9hZCgiQ2hlY2tXcmFwcGVkLmpzIik7CiBsb2FkKCJDaGVja2VyLmpzIik7CkBAIC0xMTIs
NiArMTEyLDcgQEAgbG9hZCgiTG9naWNhbE5vdC5qcyIpOwogbG9hZCgiTG9vcENoZWNrZXIuanMi
KTsKIGxvYWQoIk1ha2VBcnJheVJlZkV4cHJlc3Npb24uanMiKTsKIGxvYWQoIk1ha2VQdHJFeHBy
ZXNzaW9uLmpzIik7Citsb2FkKCJNYXRyaXhUeXBlLmpzIik7CiBsb2FkKCJOYW1lQ29udGV4dC5q
cyIpOwogbG9hZCgiTmFtZUZpbmRlci5qcyIpOwogbG9hZCgiTmFtZVJlc29sdmVyLmpzIik7CkBA
IC0xMTksOSArMTIwLDggQEAgbG9hZCgiTmF0aXZlRnVuYy5qcyIpOwogbG9hZCgiTm9ybWFsVXNl
UHJvcGVydHlSZXNvbHZlci5qcyIpOwogbG9hZCgiTnVsbExpdGVyYWwuanMiKTsKIGxvYWQoIk51
bGxUeXBlLmpzIik7Ci1sb2FkKCJPcGVyYXRvckFuZGVySW5kZXguanMiKTsKK2xvYWQoIk9wZXJh
dG9yQW5kZXJJbmRleGVyLmpzIik7CiBsb2FkKCJPcGVyYXRvckFycmF5UmVmTGVuZ3RoLmpzIik7
Ci1sb2FkKCJPcGVyYXRvckJvb2wuanMiKTsKIGxvYWQoIk9yaWdpbktpbmQuanMiKTsKIGxvYWQo
Ik92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiKTsKIGxvYWQoIlBhcnNlLmpzIik7CkBAIC0x
MzMsNyArMTMzLDYgQEAgbG9hZCgiUHRyVHlwZS5qcyIpOwogbG9hZCgiUmVhZE1vZGlmeVdyaXRl
RXhwcmVzc2lvbi5qcyIpOwogbG9hZCgiUmVjdXJzaW9uQ2hlY2tlci5qcyIpOwogbG9hZCgiUmVj
dXJzaXZlVHlwZUNoZWNrZXIuanMiKTsKLWxvYWQoIlJlbW92ZVR5cGVBcmd1bWVudHMuanMiKTsK
IGxvYWQoIlJlc29sdmVOYW1lcy5qcyIpOwogbG9hZCgiUmVzb2x2ZU92ZXJsb2FkSW1wbC5qcyIp
OwogbG9hZCgiUmVzb2x2ZVByb3BlcnRpZXMuanMiKTsKQEAgLTE1MCwxMyArMTQ5LDEzIEBAIGxv
YWQoIlN3aXRjaFN0YXRlbWVudC5qcyIpOwogbG9hZCgiU3ludGhlc2l6ZUFycmF5T3BlcmF0b3JM
ZW5ndGguanMiKTsKIGxvYWQoIlN5bnRoZXNpemVFbnVtRnVuY3Rpb25zLmpzIik7CiBsb2FkKCJT
eW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzIik7Ci1sb2FkKCJTeW50aGVzaXplT3BlcmF0b3JC
b29sLmpzIik7CiBsb2FkKCJTeW50aGVzaXplQ29weUNvbnN0cnVjdG9yT3BlcmF0b3IuanMiKTsK
IGxvYWQoIlN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyIpOwogbG9hZCgi
VHJhcFN0YXRlbWVudC5qcyIpOwogbG9hZCgiVHlwZURlZi5qcyIpOwogbG9hZCgiVHlwZURlZlJl
c29sdmVyLmpzIik7CiBsb2FkKCJUeXBlUmVmLmpzIik7Citsb2FkKCJUeXBlT3ZlcmxvYWRSZXNv
bHV0aW9uRmFpbHVyZS5qcyIpOwogbG9hZCgiVHlwZWRWYWx1ZS5qcyIpOwogbG9hZCgiVWludExp
dGVyYWwuanMiKTsKIGxvYWQoIlVpbnRMaXRlcmFsVHlwZS5qcyIpOwpAQCAtMTcwLDQgKzE2OSw0
IEBAIGxvYWQoIldTeW50YXhFcnJvci5qcyIpOwogbG9hZCgiV1RyYXBFcnJvci5qcyIpOwogbG9h
ZCgiV1R5cGVFcnJvci5qcyIpOwogbG9hZCgiV2hpbGVMb29wLmpzIik7Ci1sb2FkKCJXcmFwQ2hl
Y2tlci5qcyIpOwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xvYWQoIldyYXBDaGVja2Vy
LmpzIik7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGlu
TWF0cml4R2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpbk1h
dHJpeEdldHRlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NmEzMzM5NDZjYmY0ZTVkYjdhNDhkYjg1ODU4ODE3
ZmY4YzY3ZDZlCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvQnVpbHRpbk1hdHJpeEdldHRlci5qcwpAQCAtMCwwICsxLDczIEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFO
RCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworY2xhc3MgQnVp
bHRpbk1hdHJpeEdldHRlciB7CisgICAgY29uc3RydWN0b3IoYmFzZVR5cGVOYW1lLCBoZWlnaHQs
IHdpZHRoKQorICAgIHsKKyAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1l
OworICAgICAgICB0aGlzLl9oZWlnaHQgPSBoZWlnaHQ7CisgICAgICAgIHRoaXMuX3dpZHRoID0g
d2lkdGg7CisgICAgfQorCisgICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jh
c2VUeXBlTmFtZTsgfQorICAgIGdldCBoZWlnaHQoKSB7IHJldHVybiB0aGlzLl9oZWlnaHQ7IH0K
KyAgICBnZXQgd2lkdGgoKSB7IHJldHVybiB0aGlzLl93aWR0aDsgfQorCisgICAgdG9TdHJpbmco
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGBuYXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3Ro
aXMud2lkdGh9IG9wZXJhdG9yW10oJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuaGVpZ2h0fXgk
e3RoaXMud2lkdGh9LHVpbnQpYDsKKyAgICB9CisKKyAgICBzdGF0aWMgZnVuY3Rpb25zKCkKKyAg
ICB7CisgICAgICAgIGlmICghdGhpcy5fZnVuY3Rpb25zKSB7CisgICAgICAgICAgICB0aGlzLl9m
dW5jdGlvbnMgPSBbXTsKKworICAgICAgICAgICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgWyJoYWxm
IiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCBoZWlnaHQgb2YgWzIsIDMs
IDRdKSB7CisgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHdpZHRoIG9mIFsyLCAzLCA0XSkK
KyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGlu
TWF0cml4R2V0dGVyKHR5cGVOYW1lLCBoZWlnaHQsIHdpZHRoKSk7CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIHJldHVybiB0aGlzLl9mdW5jdGlv
bnM7CisgICAgfQorCisgICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQorICAgIHsK
KyAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbWF0LCBpbmRleF0pID0+IHsKKyAgICAg
ICAgICAgIGNvbnN0IGluZGV4VmFsdWUgPSBpbmRleC5sb2FkVmFsdWUoKTsKKyAgICAgICAgICAg
IGlmIChpbmRleFZhbHVlID49IDAgJiYgaW5kZXhWYWx1ZSA8IHRoaXMuaGVpZ2h0KSB7CisgICAg
ICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gbmV3IEVQdHIobmV3IEVCdWZmZXIodGhpcy53aWR0
aCksIDApOworICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy53aWR0aDsg
aSsrKQorICAgICAgICAgICAgICAgICAgICByZXN1bHQuc2V0KG9mZnNldCsrLCBtYXQuZ2V0KGlu
ZGV4VmFsdWUgKiB0aGlzLndpZHRoICsgaSkpOworICAgICAgICAgICAgICAgIHJldHVybiByZXN1
bHQ7CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBF
cnJvcigiW0J1aWx0aW4gbWF0cml4IGdldHRlcl0iLCAiT3V0LW9mLWJvdW5kcyBpbmRleCB3aGVu
IGluZGV4aW5nIGludG8gYSBtYXRyaXgiKTsKKyAgICAgICAgfTsKKyAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbkRhdGEgPSB0aGlzOworICAgIH0KK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5NYXRyaXhTZXR0ZXIuanMgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluTWF0cml4U2V0dGVyLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY3Yjg1
NzQ5Y2UxZjJkN2QxYWYyNmIxY2RlOGY3OGYzZjg0YjU1MzgKLS0tIC9kZXYvbnVsbAorKysgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluTWF0cml4U2V0dGVyLmpzCkBAIC0w
LDAgKzEsNzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8K
KyJ1c2Ugc3RyaWN0IjsKKworY2xhc3MgQnVpbHRpbk1hdHJpeFNldHRlciB7CisgICAgY29uc3Ry
dWN0b3IoYmFzZVR5cGVOYW1lLCBoZWlnaHQsIHdpZHRoKQorICAgIHsKKyAgICAgICAgdGhpcy5f
YmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1lOworICAgICAgICB0aGlzLl9oZWlnaHQgPSBoZWln
aHQ7CisgICAgICAgIHRoaXMuX3dpZHRoID0gd2lkdGg7CisgICAgfQorCisgICAgZ2V0IGJhc2VU
eXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQorICAgIGdldCBoZWlnaHQo
KSB7IHJldHVybiB0aGlzLl9oZWlnaHQ7IH0KKyAgICBnZXQgd2lkdGgoKSB7IHJldHVybiB0aGlz
Ll93aWR0aDsgfQorCisgICAgdG9TdHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGBuYXRp
dmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuaGVpZ2h0fXgke3RoaXMud2lkdGh9IG9wZXJh
dG9yW109KCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLmhlaWdodH14JHt0aGlzLndpZHRofSx1
aW50LCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLndpZHRofSlgOworICAgIH0KKworICAgIHN0
YXRpYyBmdW5jdGlvbnMoKQorICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLl9mdW5jdGlvbnMpIHsK
KyAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucyA9IFtdOworCisgICAgICAgICAgICBmb3IgKGxl
dCB0eXBlTmFtZSBvZiBbImhhbGYiLCAiZmxvYXQiXSkgeworICAgICAgICAgICAgICAgIGZvciAo
bGV0IGhlaWdodCBvZiBbMiwgMywgNF0pIHsKKyAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQg
d2lkdGggb2YgWzIsIDMsIDRdKQorICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZnVuY3Rp
b25zLnB1c2gobmV3IEJ1aWx0aW5NYXRyaXhTZXR0ZXIodHlwZU5hbWUsIGhlaWdodCwgd2lkdGgp
KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAg
cmV0dXJuIHRoaXMuX2Z1bmN0aW9uczsKKyAgICB9CisKKyAgICBpbnN0YW50aWF0ZUltcGxlbWVu
dGF0aW9uKGZ1bmMpCisgICAgeworICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtiYXNl
LCBpbmRleCwgdmFsdWVdKSA9PiB7CisgICAgICAgICAgICBjb25zdCBpbmRleFZhbHVlID0gaW5k
ZXgubG9hZFZhbHVlKCk7CisgICAgICAgICAgICBpZiAoaW5kZXhWYWx1ZSA+PSAwICYmIGluZGV4
VmFsdWUgPCB0aGlzLmhlaWdodCkgeworICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSBuZXcg
RVB0cihuZXcgRUJ1ZmZlcih0aGlzLndpZHRoICogdGhpcy5oZWlnaHQpLCAwKTsKKyAgICAgICAg
ICAgICAgICByZXN1bHQuY29weUZyb20oYmFzZSwgdGhpcy53aWR0aCAqIHRoaXMuaGVpZ2h0KTsK
KyAgICAgICAgICAgICAgICByZXN1bHQucGx1cyhpbmRleFZhbHVlICogdGhpcy53aWR0aCkuY29w
eUZyb20odmFsdWUsIHRoaXMud2lkdGgpOworICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7
CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBFcnJv
cigiW0J1aWx0aW4gbWF0cml4IHNldHRlcl0iLCAiT3V0LW9mLWJvdW5kcyBpbmRleCB3aGVuIGlu
ZGV4aW5nIGludG8gYSBtYXRyaXgiKTsKKyAgICAgICAgfTsKKyAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbkRhdGEgPSB0aGlzOworICAgIH0KK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuanMgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzCmluZGV4IDI3
MDRiNDNhMDZjMmZhZWQ5ZGZhNzNkZWFkMzNiYjBjNWM5NTU5ODUuLjc0OGRmMGM5NGMzMmQwN2Ji
YzAwYTVlNzVjYTlhNzdlMzY2N2E4ZTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuanMKKysrIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcwpAQCAtODEsNCAr
ODEsNCBAQCBjbGFzcyBCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzIHsKICAgICAgICAgfTsKICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwogICAgIH0KLX0KXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9CdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVyYXRvci5qcyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmpzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMTgzZDM1Njg2MTk0MWJjMjc2ZTRkM2M2N2M1ZTQ3ZWNh
ZmU0NzA5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9y
LmpzCisrKyAvZGV2L251bGwKQEAgLTEsNjYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
Ci0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgotICovCi0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIEJ1aWx0aW5WZWN0
b3JFcXVhbGl0eU9wZXJhdG9yIHsKLSAgICBjb25zdHJ1Y3RvcihiYXNlVHlwZU5hbWUsIHNpemUp
Ci0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5hbWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAg
ICAgIHRoaXMuX3NpemUgPSBzaXplOwotICAgIH0KLQotICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7
IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KLSAgICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRo
aXMuX3NpemU7IH0KLQotICAgIHRvU3RyaW5nKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0
aXZlIGJvb2wgb3BlcmF0b3I9PSgke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSwke3Ro
aXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSlgOwotICAgIH0KLQotICAgIHN0YXRpYyBmdW5j
dGlvbnMoKQotICAgIHsKLSAgICAgICAgaWYgKCF0aGlzLl9mdW5jdGlvbnMpIHsKLSAgICAgICAg
ICAgIHRoaXMuX2Z1bmN0aW9ucyA9IFtdOwotCi0gICAgICAgICAgICBmb3IgKGxldCB0eXBlTmFt
ZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMpIHsKLSAgICAgICAgICAgICAgICBmb3IgKGxldCBzaXpl
IG9mIFZlY3RvckVsZW1lbnRTaXplcykKLSAgICAgICAgICAgICAgICAgICAgdGhpcy5fZnVuY3Rp
b25zLnB1c2gobmV3IEJ1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yKHR5cGVOYW1lLCBzaXpl
KSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIHRoaXMuX2Z1bmN0
aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCi0gICAg
ewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtyZWYxLCByZWYyXSwgbm9kZSkgPT4g
ewotICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnNpemU7IGkrKykgewotICAg
ICAgICAgICAgICAgIGlmIChyZWYxLmdldChpKSAhPSByZWYyLmdldChpKSkKLSAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIEVQdHIuYm94KGZhbHNlKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIHJldHVybiBFUHRyLmJveCh0cnVlKTsKLSAgICAgICAgfTsKLSAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwotICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVj
dG9yR2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3Rv
ckdldHRlci5qcwppbmRleCBjMjUzZjc2MzBlZTlkYzQ3Y2QxZTE5NDViYzg3ZjQyZWFhM2NjYjI4
Li40MDg3MmI0ZjhlMmJiM2E4ZTRmZmIyNjI3NWQ4ZDgzZmU3MjE4MmY3IDEwMDY0NAotLS0gYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yR2V0dGVyLmpzCisrKyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JHZXR0ZXIuanMKQEAg
LTYyLDkgKzYyLDkgQEAgY2xhc3MgQnVpbHRpblZlY3RvckdldHRlciB7CiAKICAgICBpbnN0YW50
aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCiAgICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFt2ZWNdLCBub2RlKSA9PiB7CisgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZlY10pID0+IHsKICAgICAgICAgICAgIHJldHVybiBFUHRyLmJveCh2ZWMuZ2V0KHRoaXMuaW5k
ZXgpKTsKICAgICAgICAgfTsKICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlz
OwogICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCit9CmRpZmYgLS1naXQgYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuanMg
Yi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIu
anMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY3MjYyZmM5Y2UyNzMwZjA4N2Q2MTQ1
NTg3NmIzMzVmZTAyNGFjM2EuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckluZGV4
R2V0dGVyLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNjYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIEJ1aWx0
aW5WZWN0b3JJbmRleEdldHRlciB7Ci0gICAgY29uc3RydWN0b3IoYmFzZVR5cGVOYW1lLCBzaXpl
KQotICAgIHsKLSAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1lOwotICAg
ICAgICB0aGlzLl9zaXplID0gc2l6ZTsKLSAgICB9Ci0KLSAgICBnZXQgYmFzZVR5cGVOYW1lKCkg
eyByZXR1cm4gdGhpcy5fYmFzZVR5cGVOYW1lOyB9Ci0gICAgZ2V0IHNpemUoKSB7IHJldHVybiB0
aGlzLl9zaXplOyB9Ci0KLSAgICB0b1N0cmluZygpCi0gICAgewotICAgICAgICByZXR1cm4gYG5h
dGl2ZSAke3RoaXMuYmFzZVR5cGVOYW1lfSBvcGVyYXRvcltdKCR7dGhpcy5iYXNlVHlwZU5hbWV9
JHt0aGlzLnNpemV9LHVpbnQpYDsKLSAgICB9Ci0KLSAgICBzdGF0aWMgZnVuY3Rpb25zKCkKLSAg
ICB7Ci0gICAgICAgIGlmICghdGhpcy5fYWxsSW5kZXhHZXR0ZXJzKSB7Ci0gICAgICAgICAgICB0
aGlzLl9hbGxJbmRleEdldHRlcnMgPSBbXTsKLQotICAgICAgICAgICAgZm9yIChsZXQgdHlwZU5h
bWUgb2YgVmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0gICAgICAgICAgICAgICAgZm9yIChsZXQgc2l6
ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpCi0gICAgICAgICAgICAgICAgICAgIHRoaXMuX2FsbElu
ZGV4R2V0dGVycy5wdXNoKG5ldyBCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIodHlwZU5hbWUsIHNp
emUpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdGhpcy5fYWxs
SW5kZXhHZXR0ZXJzOwotICAgIH0KLQotICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykKLSAgICB7Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZlYywgaW5kZXhdLCBu
b2RlKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCBpbmRleFZhbHVlID0gaW5kZXgubG9hZFZhbHVl
KCk7Ci0gICAgICAgICAgICBpZiAoaW5kZXhWYWx1ZSA+PSAwICYmIGluZGV4VmFsdWUgPCB0aGlz
LnNpemUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIEVQdHIuYm94KHZlYy5nZXQoaW5kZXgubG9h
ZFZhbHVlKCkpKTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICB0aHJvdyBuZXcg
RXJyb3IoYCR7aW5kZXhWYWx1ZX0gb3V0IG9mIGJvdW5kcyBmb3IgdmVjdG9yIG9mIHNpemUgJHt0
aGlzLnNpemV9YCk7Ci0gICAgICAgIH07Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRh
ID0gdGhpczsKLSAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckluZGV4U2V0dGVy
LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckluZGV4U2V0
dGVyLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZmU1ZDY3OGFiNzA1ZmU0MGI3
ZDY4ZTk2OTNkZDhhZmM0YWRlZTk0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JJ
bmRleFNldHRlci5qcworKysgL2Rldi9udWxsCkBAIC0xLDcxICswLDAgQEAKLS8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycg
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAot
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJpY3QiOwotCi1jbGFzcyBC
dWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwg
c2l6ZSkKLSAgICB7Ci0gICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJhc2VUeXBlTmFtZTsK
LSAgICAgICAgdGhpcy5fc2l6ZSA9IHNpemU7Ci0gICAgfQotCi0gICAgZ2V0IGJhc2VUeXBlTmFt
ZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQotICAgIGdldCBzaXplKCkgeyByZXR1
cm4gdGhpcy5fc2l6ZTsgfQotICAgIGdldCBlbGVtZW50TmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Vs
ZW1lbnROYW1lOyB9Ci0gICAgZ2V0IGluZGV4KCkgeyByZXR1cm4gdGhpcy5faW5kZXg7IH0KLQot
ICAgIHRvU3RyaW5nKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNl
VHlwZU5hbWV9JHt0aGlzLnNpemV9IG9wZXJhdG9yW109KCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0
aGlzLnNpemV9LHVpbnQsJHt0aGlzLmJhc2VUeXBlTmFtZX0pYDsKLSAgICB9Ci0KLSAgICBzdGF0
aWMgZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fZnVuY3Rpb25zKSB7Ci0g
ICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKLQotICAgICAgICAgICAgZm9yIChsZXQg
dHlwZU5hbWUgb2YgVmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0gICAgICAgICAgICAgICAgZm9yIChs
ZXQgc2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpCi0gICAgICAgICAgICAgICAgICAgIHRoaXMu
X2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIodHlwZU5hbWUsIHNp
emUpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdGhpcy5fZnVu
Y3Rpb25zOwotICAgIH0KLQotICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykKLSAg
ICB7Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2Jhc2UsIGluZGV4LCB2YWx1ZV0s
IG5vZGUpID0+IHsKLSAgICAgICAgICAgIGNvbnN0IGluZGV4VmFsdWUgPSBpbmRleC5sb2FkVmFs
dWUoKTsKLSAgICAgICAgICAgIGlmIChpbmRleFZhbHVlID49IDAgJiYgaW5kZXhWYWx1ZSA8IHRo
aXMuc2l6ZSkgewotICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSBuZXcgRVB0cihuZXcgRUJ1
ZmZlcih0aGlzLnNpemUpLCAwKTsKLSAgICAgICAgICAgICAgICByZXN1bHQuY29weUZyb20oYmFz
ZSwgdGhpcy5zaXplKTsKLSAgICAgICAgICAgICAgICByZXN1bHQucGx1cyhpbmRleFZhbHVlKS5j
b3B5RnJvbSh2YWx1ZSwgMSk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICAg
ICAgICAgIH0gZWxzZQotICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtpbmRleFZh
bHVlfSBvdXQgb2YgYm91bmRzIGZvciB2ZWN0b3Igb2Ygc2l6ZSAke3RoaXMuc2l6ZX1gKTsKLSAg
ICAgICAgfTsKLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwotICAgIH0K
LX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yU2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvclNldHRlci5qcwppbmRleCBhMmQ3NjNiNzUwOTk5
N2IyNDEwYzI0YjgwMTMxNGMzNGEzYzQ4N2EwLi42NmZmYWM2ZjZhOWIxZTVmMDk0NzJlODM3OTRl
MTM2OGQyMWI5ODQxIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9C
dWlsdGluVmVjdG9yU2V0dGVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L0J1aWx0aW5WZWN0b3JTZXR0ZXIuanMKQEAgLTQ3LDcgKzQ3LDcgQEAgY2xhc3MgQnVpbHRpblZl
Y3RvclNldHRlciB7CiAgICAgewogICAgICAgICBpZiAoIXRoaXMuX2Z1bmN0aW9ucykgewogICAg
ICAgICAgICAgdGhpcy5fZnVuY3Rpb25zID0gW107Ci0gICAgICAgIAorCiAgICAgICAgICAgICBj
b25zdCBlbGVtZW50cyA9IFsgIngiLCAieSIsICJ6IiwgInciIF07CiAKICAgICAgICAgICAgIGZv
ciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewpAQCAtNzAsNCArNzAsNCBA
QCBjbGFzcyBCdWlsdGluVmVjdG9yU2V0dGVyIHsKICAgICAgICAgfTsKICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwogICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DYWxs
RXhwcmVzc2lvbi5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NhbGxFeHByZXNz
aW9uLmpzCmluZGV4IGIyNTM5OGYwYjFiNmVhZGUxYjc5YWM5MGU2YTc2MjUyNWY4MTliZDcuLjVm
YmRkNTA1Zjc5ZDRiMzI2ZTA5M2UwZmI3NmNkMzc1ZDBhMmM1YmEgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NhbGxFeHByZXNzaW9uLmpzCisrKyBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NhbGxFeHByZXNzaW9uLmpzCkBAIC01MiwyMCArNTIsMjIg
QEAgY2xhc3MgQ2FsbEV4cHJlc3Npb24gZXh0ZW5kcyBFeHByZXNzaW9uIHsKIAogICAgIHJlc29s
dmUocG9zc2libGVPdmVybG9hZHMsIHByb2dyYW0pCiAgICAgewotICAgICAgICBpZiAoIXBvc3Np
YmxlT3ZlcmxvYWRzKQotICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IodGhpcy5vcmln
aW4ub3JpZ2luU3RyaW5nLCAiRGlkIG5vdCBmaW5kIGFueSBmdW5jdGlvbnMgbmFtZWQgIiArIHRo
aXMubmFtZSk7Ci0KICAgICAgICAgbGV0IGZhaWx1cmVzID0gW107Ci0gICAgICAgIGxldCBvdmVy
bG9hZCA9IHJlc29sdmVPdmVybG9hZEltcGwocG9zc2libGVPdmVybG9hZHMsIHRoaXMuYXJndW1l
bnRUeXBlcywgdGhpcy5yZXR1cm5UeXBlKTsKKyAgICAgICAgbGV0IG92ZXJsb2FkOworICAgICAg
ICBpZiAocG9zc2libGVPdmVybG9hZHMpCisgICAgICAgICAgICBvdmVybG9hZCA9IHJlc29sdmVP
dmVybG9hZEltcGwocG9zc2libGVPdmVybG9hZHMsIHRoaXMuYXJndW1lbnRUeXBlcywgdGhpcy5y
ZXR1cm5UeXBlKTsKIAotICAgICAgICBpZiAoIW92ZXJsb2FkLmZ1bmMpIHsKKyAgICAgICAgaWYg
KCFvdmVybG9hZCB8fCAhb3ZlcmxvYWQuZnVuYykgeworICAgICAgICAgICAgaWYgKCFvdmVybG9h
ZCkKKyAgICAgICAgICAgICAgICBvdmVybG9hZCA9IHt9OwogICAgICAgICAgICAgY29uc3QgZnVu
YyA9IHRoaXMuX3Jlc29sdmVCeUluc3RhbnRpYXRpb24ocHJvZ3JhbSk7CiAgICAgICAgICAgICBp
ZiAoZnVuYykKICAgICAgICAgICAgICAgICBvdmVybG9hZC5mdW5jID0gZnVuYzsKICAgICAgICAg
fQogCi0KICAgICAgICAgaWYgKCFvdmVybG9hZC5mdW5jKSB7CisgICAgICAgICAgICBpZiAoIW92
ZXJsb2FkLmZhaWx1cmVzKQorICAgICAgICAgICAgICAgIG92ZXJsb2FkLmZhaWx1cmVzID0gW107
CiAgICAgICAgICAgICBmYWlsdXJlcy5wdXNoKC4uLm92ZXJsb2FkLmZhaWx1cmVzKTsKICAgICAg
ICAgICAgIGxldCBtZXNzYWdlID0gIkRpZCBub3QgZmluZCBmdW5jdGlvbiBuYW1lZCAiICsgdGhp
cy5uYW1lICsgIiBmb3IgY2FsbCB3aXRoICI7CiAgICAgICAgICAgICBtZXNzYWdlICs9ICJhcmd1
bWVudCB0eXBlcyAoIiArIHRoaXMuYXJndW1lbnRUeXBlcyArICIpIjsKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrVHlwZXNXaXRoQXJndW1lbnRzLmpzIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMmY2OTE0MmEzNTE3ZDI5NDkwMDUzMGMwY2YwNjZjOWJmZDIyNzdhZgotLS0g
L2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrVHlwZXNX
aXRoQXJndW1lbnRzLmpzCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQor
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4gCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworZnVuY3Rpb24gY2hlY2tUeXBl
c1dpdGhBcmd1bWVudHMocHJvZ3JhbSkKK3sKKyAgICBjbGFzcyBUeXBlV2l0aEFyZ3VtZW50c0No
ZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKKyAgICAgICAgdmlzaXRUeXBlUmVmKG5vZGUpCisgICAg
ICAgIHsKKyAgICAgICAgICAgIGlmICgobm9kZS5uYW1lID09ICJ2ZWN0b3IiICYmIG5vZGUudHlw
ZUFyZ3VtZW50cy5sZW5ndGggIT0gMikKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09
ICJtYXRyaXgiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMykKKyAgICAgICAgICAg
ICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJlMUQiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5s
ZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJSV1RleHR1cmUx
RCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8
IChub2RlLm5hbWUgPT0gIlRleHR1cmUxREFycmF5IiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVu
Z3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiUldUZXh0dXJlMURB
cnJheSIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAg
IHx8IChub2RlLm5hbWUgPT0gIlRleHR1cmUyRCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0
aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlJXVGV4dHVyZTJEIiAm
JiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5v
ZGUubmFtZSA9PSAiVGV4dHVyZTJEQXJyYXkiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGgg
IT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJSV1RleHR1cmUyREFycmF5
IiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwg
KG5vZGUubmFtZSA9PSAiVGV4dHVyZTNEIiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9
IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiUldUZXh0dXJlM0QiICYmIG5v
ZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5u
YW1lID09ICJUZXh0dXJlQ3ViZSIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKSkK
KyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEJ1aWx0aW4gdHlwZSAke25vZGUubmFt
ZX0gc2hvdWxkIGFsd2F5cyBoYXZlIHR5cGUgYXJndW1lbnRzLmApOworICAgICAgICB9CisgICAg
fQorICAgIHByb2dyYW0udmlzaXQobmV3IFR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlcigpKTsKK30K
KwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qcyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrZXIuanMKaW5kZXggMWExNGM4NjZh
Y2VkNDExMmIxODBmNjkxNTZjMDZkMmI2NjRkODdlMi4uMDAxODhkNzBlYmIxYTZiYzM0NTBmNDYz
NjJkMWY5NmFlMzg3Y2JhMiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvQ2hlY2tlci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DaGVja2Vy
LmpzCkBAIC00MSw4ICs0MSwxMyBAQCBjbGFzcyBDaGVja2VyIGV4dGVuZHMgVmlzaXRvciB7CiAg
ICAgICAgICAgICBzdGF0ZW1lbnQudmlzaXQodGhpcyk7CiAgICAgICAgIH0KICAgICAgICAgCi0g
ICAgICAgIGZvciAobGV0IHR5cGUgb2Ygbm9kZS50eXBlcy52YWx1ZXMoKSkKLSAgICAgICAgICAg
IGRvU3RhdGVtZW50KHR5cGUpOworICAgICAgICBmb3IgKGxldCB0eXBlIG9mIG5vZGUudHlwZXMu
dmFsdWVzKCkpIHsKKyAgICAgICAgICAgIGlmICh0eXBlIGluc3RhbmNlb2YgQXJyYXkpIHsKKyAg
ICAgICAgICAgICAgICBmb3IgKGxldCBjb25zdGl0dWVudFR5cGUgb2YgdHlwZSkKKyAgICAgICAg
ICAgICAgICAgICAgZG9TdGF0ZW1lbnQoY29uc3RpdHVlbnRUeXBlKTsKKyAgICAgICAgICAgIH0g
ZWxzZQorICAgICAgICAgICAgICAgIGRvU3RhdGVtZW50KHR5cGUpOworICAgICAgICB9CiAgICAg
ICAgIGZvciAobGV0IGZ1bmNzIG9mIG5vZGUuZnVuY3Rpb25zLnZhbHVlcygpKSB7CiAgICAgICAg
ICAgICBmb3IgKGxldCBmdW5jIG9mIGZ1bmNzKSB7CiAgICAgICAgICAgICAgICAgdGhpcy52aXNp
dEZ1bmMoZnVuYyk7CkBAIC0yNDcsNiArMjUyLDEwIEBAIGNsYXNzIENoZWNrZXIgZXh0ZW5kcyBW
aXNpdG9yIHsKICAgICB7CiAgICAgICAgIGlmICghbm9kZS50eXBlKQogICAgICAgICAgICAgdGhy
b3cgbmV3IEVycm9yKCJUeXBlIHJlZmVyZW5jZSB3aXRob3V0IGEgdHlwZSBpbiBjaGVja2VyOiAi
ICsgbm9kZSArICIgYXQgIiArIG5vZGUub3JpZ2luKTsKKyAgICAgICAgLy8gQWxsIHRoZSBzdHJ1
Y3RzIHdpbGwgYmUgdmlzaXRlZCBieSB2aXNpdFByb2dyYW0oKSBpdGVyYXRpbmcgdGhyb3VnaCBl
YWNoIHRvcC1sZXZlbCB0eXBlLgorICAgICAgICAvLyBXZSBkb24ndCB3YW50IHRvIHJlY3Vyc2Ug
aGVyZSBiZWNhdXNlIHRoZSBjb250ZW50cyBvZiBzdHJ1Y3RzIGNhbiByZWZlciB0byB0aGVtc2Vs
dmVzIChlLmcuIGEgbGlua2VkIGxpc3QpLAorICAgICAgICAvLyBhbmQgdGhpcyB3b3VsZCBjYW4g
YW4gaW5maW5pdGUgbG9vcC4KKyAgICAgICAgLy8gVHlwZWRlZnMgY2FuJ3QgcmVmZXIgdG8gdGhl
bXNlbHZlcyBiZWNhdXNlIHdlIGNoZWNrIHRoYXQgaW4gVHlwZURlZlJlc29sdmVyLgogICAgICAg
ICBpZiAoIShub2RlLnR5cGUgaW5zdGFuY2VvZiBTdHJ1Y3RUeXBlKSkKICAgICAgICAgICAgIG5v
ZGUudHlwZS52aXNpdCh0aGlzKTsKICAgICB9CkBAIC0yNTQsNiArMjYzLDcgQEAgY2xhc3MgQ2hl
Y2tlciBleHRlbmRzIFZpc2l0b3IgewogICAgIHZpc2l0VmVjdG9yVHlwZShub2RlKQogICAgIHsK
ICAgICAgICAgbm9kZS5lbGVtZW50VHlwZS52aXNpdCh0aGlzKTsKKyAgICAgICAgbm9kZS5udW1F
bGVtZW50cy52aXNpdCh0aGlzKTsKIAogICAgICAgICBsZXQgaXNLbm93bkFsbG93ZWRWZWN0b3JF
bGVtZW50VHlwZSA9IGZhbHNlOwogICAgICAgICBmb3IgKGxldCB2ZWN0b3JFbGVtZW50VHlwZU5h
bWUgb2YgVmVjdG9yRWxlbWVudFR5cGVzKSB7CkBAIC0yNjgsNiArMjc4LDMzIEBAIGNsYXNzIENo
ZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKIAogICAgICAgICBpZiAoIWlzS25vd25BbGxvd2VkVmVj
dG9yRWxlbWVudFR5cGUpCiAgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcihgJHtub2Rl
LmVsZW1lbnRUeXBlfSBpcyBub3QgYSBwZXJtaXR0ZWQgdmVjdG9yIGVsZW1lbnQgdHlwZS5gKTsK
KyAgICAgICAgaWYgKG5vZGUubnVtRWxlbWVudHNWYWx1ZSAhPSAyICYmIG5vZGUubnVtRWxlbWVu
dHNWYWx1ZSAhPSAzICYmIG5vZGUubnVtRWxlbWVudHNWYWx1ZSAhPSA0KQorICAgICAgICAgICAg
dGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7bm9kZS50b1N0cmluZygpfTogJHtub2RlLm51bUVsZW1l
bnRzVmFsdWV9IGlzIG5vdCAyLCAzLCBvciA0LmApOworICAgIH0KKworICAgIHZpc2l0TWF0cml4
VHlwZShub2RlKQorICAgIHsKKyAgICAgICAgbm9kZS5lbGVtZW50VHlwZS52aXNpdCh0aGlzKTsK
KyAgICAgICAgbm9kZS5udW1Sb3dzLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bUNvbHVt
bnMudmlzaXQodGhpcyk7CisKKyAgICAgICAgbGV0IGlzS25vd25BbGxvd2VkVmVjdG9yRWxlbWVu
dFR5cGUgPSBmYWxzZTsKKyAgICAgICAgZm9yIChsZXQgZWxlbWVudFR5cGVOYW1lIG9mIFsiaGFs
ZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICBjb25zdCBlbGVtZW50VHlwZSA9IHRoaXMuX3By
b2dyYW0uZ2xvYmFsTmFtZUNvbnRleHQuZ2V0KFR5cGUsIGVsZW1lbnRUeXBlTmFtZSk7CisgICAg
ICAgICAgICBpZiAoIWVsZW1lbnRUeXBlKQorICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHlw
ZUVycm9yKGAke2VsZW1lbnRUeXBlTmFtZX0gaXMgbm90IGEga25vd24gbmF0aXZlIHR5cGUgaW4g
dGhlIHN0YW5kYXJkIGxpYnJhcnkgb3IgaW50cmluc2ljcy5gKTsKKyAgICAgICAgICAgIGlmIChl
bGVtZW50VHlwZS5lcXVhbHMobm9kZS5lbGVtZW50VHlwZSkpIHsKKyAgICAgICAgICAgICAgICBp
c0tub3duQWxsb3dlZFZlY3RvckVsZW1lbnRUeXBlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGlmICghaXNLbm93bkFs
bG93ZWRWZWN0b3JFbGVtZW50VHlwZSkKKyAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9y
KGAke25vZGUuZWxlbWVudFR5cGV9IGlzIG5vdCBhIHBlcm1pdHRlZCB2ZWN0b3IgZWxlbWVudCB0
eXBlLmApOworICAgICAgICBpZiAobm9kZS5udW1Sb3dzVmFsdWUgIT0gMiAmJiBub2RlLm51bVJv
d3NWYWx1ZSAhPSAzICYmIG5vZGUubnVtUm93c1ZhbHVlICE9IDQpCisgICAgICAgICAgICB0aHJv
dyBuZXcgV1R5cGVFcnJvcihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUubnVtUm93c1ZhbHVl
fSBpcyBub3QgMiwgMywgb3IgNC5gKTsKKyAgICAgICAgaWYgKG5vZGUubnVtQ29sdW1uc1ZhbHVl
ICE9IDIgJiYgbm9kZS5udW1Db2x1bW5zVmFsdWUgIT0gMyAmJiBub2RlLm51bUNvbHVtbnNWYWx1
ZSAhPSA0KQorICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7bm9kZS50b1N0cmlu
ZygpfTogJHtub2RlLm51bUNvbHVtbnNWYWx1ZX0gaXMgbm90IDIsIDMsIG9yIDQuYCk7CiAgICAg
fQogICAgIAogICAgIHZpc2l0QXJyYXlUeXBlKG5vZGUpCmRpZmYgLS1naXQgYS9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9GbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5qcyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVy
LmpzCmluZGV4IDE5NzBmOGVkOTMyY2QzNTMwYTQ4ZGMzMWFmOGM5YzQyNDBkZGU4ZDAuLmUwZTE2
MWZmMTBjY2QzYzA5OTJiOWE5MjY0OWY0ZTNhMDBiYTExMTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzCisr
KyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdh
dGhlcmVyLmpzCkBAIC03NCw1ICs3NCwxNyBAQCBjbGFzcyBGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRH
YXRoZXJlciBleHRlbmRzIFZpc2l0b3IgewogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0KICAg
ICB9CisKKyAgICB2aXNpdE1hdHJpeFR5cGUobm9kZSkKKyAgICB7CisgICAgICAgIGNvbnN0IGZp
ZWxkTmFtZXMgPSBbICJyb3cwIiwgInJvdzEiLCAicm93MiIsICJyb3czIiBdOworICAgICAgICBm
b3IgKGxldCBpID0gMDsgaSA8IG5vZGUubnVtUm93c1ZhbHVlOyBpKyspIHsKKyAgICAgICAgICAg
IHRoaXMuX3Jlc3VsdC5wdXNoKHsKKyAgICAgICAgICAgICAgICBuYW1lOiB0aGlzLl9uYW1lLmpv
aW4oIi4iKSArICIuIiArIGZpZWxkTmFtZXNbaV0sCisgICAgICAgICAgICAgICAgb2Zmc2V0OiB0
aGlzLl9vZmZzZXQgKyBpICogbm9kZS5lbGVtZW50VHlwZS5zaXplICogbm9kZS5udW1Db2x1bW5z
VmFsdWUsCisgICAgICAgICAgICAgICAgdHlwZTogbm9kZS5lbGVtZW50VHlwZS5uYW1lICsgbm9k
ZS5udW1Db2x1bW5zVmFsdWUudG9TdHJpbmcoKQorICAgICAgICAgICAgfSk7CisgICAgICAgIH0K
KyAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0lu
ZmVyVHlwZXNGb3JDYWxsLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJU
eXBlc0ZvckNhbGwuanMKaW5kZXggNWYzMmVkMWM0OTBhN2RmODk0MWU5MTljMTMwY2Y2NWVhYThi
NmE0ZC4uYmNmZWI5ODZjYWZmNDlmMDI4N2E4MzY3OGJmMTE1NjI4NDdmMDM4OSAxMDA2NDQKLS0t
IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJUeXBlc0ZvckNhbGwuanMKKysr
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJUeXBlc0ZvckNhbGwuanMKQEAg
LTM2LDEyICszNiw4IEBAIGZ1bmN0aW9uIGluZmVyVHlwZXNGb3JDYWxsKGZ1bmMsIGFyZ3VtZW50
VHlwZXMsIHJldHVyblR5cGUpCiAgICAgICAgIGlmICghYXJndW1lbnRUeXBlc1tpXS51bmlmeSh1
bmlmaWNhdGlvbkNvbnRleHQsIGZ1bmMucGFyYW1ldGVyc1tpXS50eXBlKSkKICAgICAgICAgICAg
IHJldHVybiB7ZmFpbHVyZTogbmV3IE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUoZnVuYywgIkFy
Z3VtZW50ICMiICsgKGkgKyAxKSArICIgIiArIChmdW5jLnBhcmFtZXRlcnNbaV0ubmFtZSA/ICJm
b3IgcGFyYW1ldGVyICIgKyBmdW5jLnBhcmFtZXRlcnNbaV0ubmFtZSArICIgIiA6ICIiKSArICJk
b2VzIG5vdCBtYXRjaCAocGFzc2VkICIgKyBhcmd1bWVudFR5cGVzW2ldICsgIiwgcmVxdWlyZSAi
ICsgZnVuYy5wYXJhbWV0ZXJzW2ldLnR5cGUgKyAiKSIpfTsKICAgICB9Ci0gICAgaWYgKHJldHVy
blR5cGUgJiYgIXJldHVyblR5cGUudW5pZnkodW5pZmljYXRpb25Db250ZXh0LCBmdW5jLnJldHVy
blR5cGUpKSB7Ci0gICAgICAgIGlmIChmdW5jLnJldHVyblR5cGUudG9TdHJpbmcoKSA9PSAidmVj
dG9yIikgewotICAgICAgICAgICAgcmV0dXJuVHlwZS51bmlmeSh1bmlmaWNhdGlvbkNvbnRleHQs
IGZ1bmMucmV0dXJuVHlwZSkKLSAgICAgICAgfQorICAgIGlmIChyZXR1cm5UeXBlICYmICFyZXR1
cm5UeXBlLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgZnVuYy5yZXR1cm5UeXBlKSkKICAgICAg
ICAgcmV0dXJuIHtmYWlsdXJlOiBuZXcgT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZShmdW5jLCAi
UmV0dXJuIHR5cGUgIiArIGZ1bmMucmV0dXJuVHlwZSArICIgZG9lcyBub3QgbWF0Y2ggIiArIHJl
dHVyblR5cGUpfTsKLSAgICB9CiAgICAgbGV0IHZlcmlmaWNhdGlvblJlc3VsdCA9IHVuaWZpY2F0
aW9uQ29udGV4dC52ZXJpZnkoKTsKICAgICBpZiAoIXZlcmlmaWNhdGlvblJlc3VsdC5yZXN1bHQp
CiAgICAgICAgIHJldHVybiB7ZmFpbHVyZTogbmV3IE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUo
ZnVuYywgdmVyaWZpY2F0aW9uUmVzdWx0LnJlYXNvbil9OwpAQCAtNDksMyArNDUsMjEgQEAgZnVu
Y3Rpb24gaW5mZXJUeXBlc0ZvckNhbGwoZnVuYywgYXJndW1lbnRUeXBlcywgcmV0dXJuVHlwZSkK
ICAgICByZXR1cm4ge2Z1bmMsIHVuaWZpY2F0aW9uQ29udGV4dH07CiB9CiAKK2Z1bmN0aW9uIGlu
ZmVyVHlwZXNGb3JUeXBlQXJndW1lbnRzKHR5cGUsIHR5cGVBcmd1bWVudHMpCit7CisgICAgaWYg
KHR5cGVBcmd1bWVudHMubGVuZ3RoICE9IHR5cGUudHlwZUFyZ3VtZW50cy5sZW5ndGgpCisgICAg
ICAgIHJldHVybiB7ZmFpbHVyZTogbmV3IFR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKHR5
cGUsICJXcm9uZyBudW1iZXIgb2YgYXJndW1lbnRzIChwYXNzZWQgIiArIHR5cGVBcmd1bWVudHMu
bGVuZ3RoICsgIiwgcmVxdWlyZSAiICsgdHlwZS50eXBlQXJndW1lbnRzLmxlbmd0aCArICIpIil9
OworICAgIGxldCB1bmlmaWNhdGlvbkNvbnRleHQgPSBuZXcgVW5pZmljYXRpb25Db250ZXh0KCk7
CisKKyAgICBmb3IgKGxldCBpID0gMDsgaSA8IHR5cGVBcmd1bWVudHMubGVuZ3RoOyArK2kpIHsK
KyAgICAgICAgaWYgKCF0eXBlQXJndW1lbnRzW2ldKQorICAgICAgICAgICAgdGhyb3cgbmV3IEVy
cm9yKCJOdWxsIHR5cGUgYXJndW1lbnQgYXQgaSA9ICIgKyBpKTsKKyAgICAgICAgaWYgKCF0eXBl
QXJndW1lbnRzW2ldLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgdHlwZS50eXBlQXJndW1lbnRz
W2ldKSkKKyAgICAgICAgICAgIHJldHVybiB7ZmFpbHVyZTogbmV3IFR5cGVPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlKHR5cGUsICJBcmd1bWVudCAjIiArIChpICsgMSkgKyAiICIgKyAodHlwZS50
eXBlQXJndW1lbnRzW2ldLm5hbWUgPyAiZm9yIHBhcmFtZXRlciAiICsgdHlwZS50eXBlQXJndW1l
bnRzW2ldLm5hbWUgKyAiICIgOiAiIikgKyAiZG9lcyBub3QgbWF0Y2ggKHBhc3NlZCAiICsgdHlw
ZUFyZ3VtZW50c1tpXSArICIsIHJlcXVpcmUgIiArIHR5cGUudHlwZUFyZ3VtZW50c1tpXS50eXBl
ICsgIikiKX07CisgICAgfQorICAgIGxldCB2ZXJpZmljYXRpb25SZXN1bHQgPSB1bmlmaWNhdGlv
bkNvbnRleHQudmVyaWZ5KCk7CisgICAgaWYgKCF2ZXJpZmljYXRpb25SZXN1bHQucmVzdWx0KQor
ICAgICAgICByZXR1cm4ge2ZhaWx1cmU6IG5ldyBUeXBlT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVy
ZSh0eXBlLCB2ZXJpZmljYXRpb25SZXN1bHQucmVhc29uKX07CisKKyAgICByZXR1cm4ge3R5cGUs
IHVuaWZpY2F0aW9uQ29udGV4dH07Cit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
SW50cmluc2ljcy5qcwppbmRleCA1MGQ0MGMwYzBlNDdlMTEyYmM3NGNjZmNjYjcwNDk0MjcxMTZi
MGZiLi4yY2FhYjAwYmM5NGYwYjQ3MGU3NjQ2ZDA4YjIxNjZmOTliMDUyODU2IDEwMDY0NAotLS0g
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzCisrKyBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ludHJpbnNpY3MuanMKQEAgLTMzLDE1ICszMyw3IEBA
IGNsYXNzIEludHJpbnNpY3MgewogICAgICAgICAvLyB0byBjYXRjaCB0aGUgaW50cmluc2ljcyBt
dXN0IGJlIGJhc2VkIG9uIHRoZSB0eXBlIG5hbWVzIHRoYXQgU3RhbmRhcmRMaWJyYXJ5LmpzIHVz
ZXMuCiAgICAgICAgIC8vIEZvciBleGFtcGxlLCBpZiBhIG5hdGl2ZSBmdW5jdGlvbiBpcyBkZWNs
YXJlZCB1c2luZyAiaW50IiByYXRoZXIgdGhhbiAiaW50IiwgdGhlbiB3ZSBtdXN0CiAgICAgICAg
IC8vIHVzZSAiaW50IiBoZXJlLCBzaW5jZSB3ZSBkb24ndCB5ZXQga25vdyB0aGF0IHRoZXkgYXJl
IHRoZSBzYW1lIHR5cGUuCi0gICAgICAgIAotICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAg
ICAgICAgIm5hdGl2ZSB0eXBlZGVmIHZvaWQiLAotICAgICAgICAgICAgdHlwZSA9PiB7Ci0gICAg
ICAgICAgICAgICAgdGhpcy52b2lkID0gdHlwZTsKLSAgICAgICAgICAgICAgICB0eXBlLnNpemUg
PSAwOwotICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoKSA9PiB7
IH07Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgZnVuY3Rpb24gaXNCaXR3
aXNlRXF1aXZhbGVudChsZWZ0LCByaWdodCkKICAgICAgICAgewogICAgICAgICAgICAgbGV0IGRv
dWJsZUFycmF5ID0gbmV3IEZsb2F0NjRBcnJheSgxKTsKQEAgLTU2LDU4ICs0OCw4MyBAQCBjbGFz
cyBJbnRyaW5zaWNzIHsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB9CiAKKyAg
ICAgICAgZnVuY3Rpb24gY2FzdCh0eXBlZEFycmF5Q29uc3RydWN0b3IsIG51bWJlcikKKyAgICAg
ICAgeworICAgICAgICAgICAgdmFyIGFycmF5ID0gbmV3IHR5cGVkQXJyYXlDb25zdHJ1Y3Rvcigx
KTsKKyAgICAgICAgICAgIGFycmF5WzBdID0gbnVtYmVyOworICAgICAgICAgICAgcmV0dXJuIGFy
cmF5WzBdOworICAgICAgICB9CisKKyAgICAgICAgZnVuY3Rpb24gYml0d2lzZUNhc3QodHlwZWRB
cnJheUNvbnN0cnVjdG9yMSwgdHlwZWRBcnJheUNvbnN0cnVjdG9yMiwgdmFsdWUpCisgICAgICAg
IHsKKyAgICAgICAgICAgIGxldCB0eXBlZEFycmF5MSA9IG5ldyB0eXBlZEFycmF5Q29uc3RydWN0
b3IxKDEpOworICAgICAgICAgICAgbGV0IHR5cGVkQXJyYXkyID0gbmV3IHR5cGVkQXJyYXlDb25z
dHJ1Y3RvcjIodHlwZWRBcnJheTEuYnVmZmVyKTsKKyAgICAgICAgICAgIHR5cGVkQXJyYXkxWzBd
ID0gdmFsdWU7CisgICAgICAgICAgICByZXR1cm4gdHlwZWRBcnJheTJbMF07CisgICAgICAgIH0K
KworICAgICAgICBmdW5jdGlvbiBjYXN0VG9IYWxmKG51bWJlcikKKyAgICAgICAgeworICAgICAg
ICAgICAgLy8gRklYTUU6IE1ha2UgdGhpcyBtYXRoIG9iZXkgSUVFRSA3NTQuCisgICAgICAgICAg
ICBpZiAoTnVtYmVyLmlzTmFOKG51bWJlcikpCisgICAgICAgICAgICAgICByZXR1cm4gbnVtYmVy
CisgICAgICAgICAgICBpZiAobnVtYmVyID4gNjU1MDQpCisgICAgICAgICAgICAgICAgcmV0dXJu
IE51bWJlci5QT1NJVElWRV9JTkZJTklUWTsKKyAgICAgICAgICAgIGlmIChudW1iZXIgPCAtNjU1
MDQpCisgICAgICAgICAgICAgICAgcmV0dXJuIE51bWJlci5ORUdBVElWRV9JTkZJTklUWTsKKyAg
ICAgICAgICAgIGlmIChudW1iZXIgPiAwICYmIG51bWJlciA8IE1hdGgucG93KDIsIC0yNCkpCisg
ICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICBpZiAobnVtYmVyIDwgMCAmJiBu
dW1iZXIgPiAtTWF0aC5wb3coMiwgLTI0KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTA7Cisg
ICAgICAgICAgICBsZXQgZG91YmxlQXJyYXkgPSBuZXcgRmxvYXQ2NEFycmF5KDEpOworICAgICAg
ICAgICAgbGV0IHVpbnRBcnJheSA9IG5ldyBVaW50OEFycmF5KGRvdWJsZUFycmF5LmJ1ZmZlcik7
CisgICAgICAgICAgICBkb3VibGVBcnJheVswXSA9IG51bWJlcjsKKyAgICAgICAgICAgIGxldCBz
aWduID0gdWludEFycmF5WzddICYgMHg4MDsKKyAgICAgICAgICAgIGxldCBleHBvbmVudCA9ICgo
dWludEFycmF5WzddICYgMHg3ZikgPDwgNCkgfCAoKHVpbnRBcnJheVs2XSAmIDB4ZjApID4+PiA0
KTsKKyAgICAgICAgICAgIGxldCBzaWduaWZpY2FuZCA9ICgodWludEFycmF5WzZdICYgMHgwZikg
PDwgNikgfCAoKHVpbnRBcnJheVs1XSAmIDB4ZmMpID4+PiAyKTsKKworICAgICAgICAgICAgaWYg
KChleHBvbmVudCAtIDEwMjMpIDwgLTE0KSB7CisgICAgICAgICAgICAgICAgZXhwb25lbnQgPSAw
OworICAgICAgICAgICAgICAgIHNpZ25pZmljYW5kID0gKE1hdGguYWJzKG51bWJlcikgKiBNYXRo
LnBvdygyLCAyNCkpID4+PiAwOworICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IE1hdGgucG93
KDIsIC0xNCkgKiBzaWduaWZpY2FuZCAvIDEwMjQ7CisgICAgICAgICAgICAgICAgaWYgKHNpZ24g
IT0gMCkKKyAgICAgICAgICAgICAgICAgICAgdmFsdWUgKj0gLTE7CisgICAgICAgICAgICAgICAg
cmV0dXJuIHZhbHVlOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBkb3VibGVBcnJheVsw
XSA9IDA7CisKKyAgICAgICAgICAgIHVpbnRBcnJheVs3XSB8PSBzaWduOworICAgICAgICAgICAg
dWludEFycmF5WzddIHw9IChleHBvbmVudCA+Pj4gNCk7CisgICAgICAgICAgICB1aW50QXJyYXlb
Nl0gfD0gKChleHBvbmVudCA8PCA0KSAmIDB4ZjApOworICAgICAgICAgICAgdWludEFycmF5WzZd
IHw9IChzaWduaWZpY2FuZCA+Pj4gNik7CisgICAgICAgICAgICB1aW50QXJyYXlbNV0gfD0gKChz
aWduaWZpY2FuZCA8PCAyKSAmIDB4ZmMpOworCisgICAgICAgICAgICByZXR1cm4gZG91YmxlQXJy
YXlbMF07CisgICAgICAgIH0KKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAg
Im5hdGl2ZSB0eXBlZGVmIGludCIsCisgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgdm9pZCIs
CiAgICAgICAgICAgICB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0aGlzLmludCA9IHR5cGU7
Ci0gICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7Ci0gICAgICAgICAgICAg
ICAgdHlwZS5pc0ludCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRy
dWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc1NpZ25lZCA9IHRydWU7Ci0gICAgICAgICAgICAg
ICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBpc0JpdHdpc2VFcXVpdmFsZW50KHZhbHVl
IHwgMCwgdmFsdWUpOwotICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7Ci0gICAgICAgICAg
ICAgICAgdHlwZS5kZWZhdWx0VmFsdWUgPSAwOwotICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRl
TGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwg
dmFsdWUgfCAwLCB0eXBlKTsKLSAgICAgICAgICAgICAgICB0eXBlLnN1Y2Nlc3NvclZhbHVlID0g
dmFsdWUgPT4gKHZhbHVlICsgMSkgfCAwOwotICAgICAgICAgICAgICAgIHR5cGUudmFsdWVzRXF1
YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKLSAgICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVm
YXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7Ci0g
ICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUgPT4g
dmFsdWUgfCAwOwotICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVy
YWwgPSB2YWx1ZSA9PiB2YWx1ZSB8IDA7Ci0gICAgICAgICAgICAgICAgdHlwZS5hbGxWYWx1ZXMg
PSBmdW5jdGlvbiooKSB7IAotICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8
PSAweGZmZmZmZmZmOyArK2kpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9
IGkgfCAwOwotICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiB2YWx1ZSwgbmFt
ZTogdmFsdWV9OwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfTsKKyAg
ICAgICAgICAgICAgICB0aGlzLnZvaWQgPSB0eXBlOworICAgICAgICAgICAgICAgIHR5cGUuc2l6
ZSA9IDA7CisgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9ICgpID0+
IHsgfTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIHR5cGVkZWYgdWludCIsCisgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYg
Ym9vbCIsCiAgICAgICAgICAgICB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0aGlzLnVpbnQg
PSB0eXBlOworICAgICAgICAgICAgICAgIHRoaXMuYm9vbCA9IHR5cGU7CiAgICAgICAgICAgICAg
ICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc0ludCA9
IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7Ci0gICAgICAgICAg
ICAgICAgdHlwZS5pc1NpZ25lZCA9IGZhbHNlOwotICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVw
cmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudCh2YWx1ZSA+Pj4gMCwgdmFsdWUp
OwogICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7Ci0gICAgICAgICAgICAgICAgdHlwZS5k
ZWZhdWx0VmFsdWUgPSAwOwotICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRlTGl0ZXJhbCA9IChv
cmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwgdmFsdWUgPj4+IDAs
IHR5cGUpOwotICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiAo
dmFsdWUgKyAxKSA+Pj4gMDsKLSAgICAgICAgICAgICAgICB0eXBlLnZhbHVlc0VxdWFsID0gKGEs
IGIpID0+IGEgPT09IGI7Ci0gICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1
ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOwotICAgICAgICAg
ICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlID4+
PiAwOwotICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2
YWx1ZSA9PiB2YWx1ZSA+Pj4gMDsKLSAgICAgICAgICAgICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1
bmN0aW9uKigpIHsgCi0gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDB4
ZmZmZmZmZmY7ICsraSkKLSAgICAgICAgICAgICAgICAgICAgICAgIHlpZWxkIHt2YWx1ZTogaSwg
bmFtZTogaX07Ci0gICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICAgICB0eXBlLnBvcHVs
YXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwg
ZmFsc2UpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAg
ICAgICAgICJuYXRpdmUgdHlwZWRlZiB1Y2hhciIsCiAgICAgICAgICAgICB0eXBlID0+IHsKICAg
ICAgICAgICAgICAgICB0aGlzLnVjaGFyID0gdHlwZTsKKyAgICAgICAgICAgICAgICB0eXBlLmlz
UHJpbWl0aXZlID0gdHJ1ZTsKICAgICAgICAgICAgICAgICB0eXBlLmlzSW50ID0gdHJ1ZTsKICAg
ICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKICAgICAgICAgICAgICAgICB0eXBl
LmlzU2lnbmVkID0gZmFsc2U7CkBAIC0xMjYsNDE5ICsxNDMsNzkzIEBAIGNsYXNzIEludHJpbnNp
Y3MgewogICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICB9KTsKIAorCisgICAgICAgICAg
ICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiB1c2hvcnQiLAor
ICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLnVzaG9ydCA9IHR5
cGU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOworICAgICAgICAg
ICAgICAgICB0eXBlLmlzSW50ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc051bWJl
ciA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNTaWduZWQgPSBmYWxzZTsKKyAgICAg
ICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBpc0JpdHdpc2VFcXVpdmFs
ZW50KHZhbHVlICYgMHhmZmZmLCB2YWx1ZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9
IDE7CisgICAgICAgICAgICAgICAgIHR5cGUuZGVmYXVsdFZhbHVlID0gMDsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0gKG9yaWdpbiwgdmFsdWUpID0+IEludExpdGVyYWwu
d2l0aFR5cGUob3JpZ2luLCB2YWx1ZSAmIDB4ZmZmZiwgdHlwZSk7CisgICAgICAgICAgICAgICAg
IHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiAodmFsdWUgKyAxKSAmIDB4ZmZmZjsKKyAg
ICAgICAgICAgICAgICAgdHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09PSBiOworICAg
ICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0
KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0
VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlICYgMHhmZmZmOworICAgICAgICAg
ICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbVVpbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWUg
JiAweGZmZmY7CisgICAgICAgICAgICAgICAgIHR5cGUuYWxsVmFsdWVzID0gZnVuY3Rpb24qKCkg
eworICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPD0gMHhmZmZmOyArK2kp
CisgICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiBpLCBuYW1lOiBpfTsKKyAg
ICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICB9KTsKKwogICAgICAgICB0aGlzLl9tYXAu
c2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGZsb2F0IiwKLSAgICAgICAgICAgIHR5
cGUgPT4gewotICAgICAgICAgICAgICAgIHRoaXMuZmxvYXQgPSB0eXBlOwotICAgICAgICAgICAg
ICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOwotICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9
IDE7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc0Zsb2F0aW5nID0gdHJ1ZTsKLSAgICAgICAgICAg
ICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJl
c2VudCA9IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQoTWF0aC5mcm91bmQodmFsdWUpLCB2
YWx1ZSk7Ci0gICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZm
ZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOwotICAgICAgICAgICAgICAgIHR5
cGUuZm9ybWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOwotICAgICAgICAg
ICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZTsK
LSAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUZsb2F0TGl0ZXJhbCA9IHZhbHVl
ID0+IE1hdGguZnJvdW5kKHZhbHVlKTsKLSAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICJu
YXRpdmUgdHlwZWRlZiB1aW50IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAg
ICAgICAgdGhpcy51aW50ID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1pdGl2
ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOworICAgICAgICAg
ICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1Np
Z25lZCA9IGZhbHNlOworICAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2VudCA9IHZhbHVl
ID0+IGlzQml0d2lzZUVxdWl2YWxlbnQodmFsdWUgPj4+IDAsIHZhbHVlKTsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5zaXplID0gMTsKKyAgICAgICAgICAgICAgICAgdHlwZS5kZWZhdWx0VmFsdWUg
PSAwOworICAgICAgICAgICAgICAgICB0eXBlLmNyZWF0ZUxpdGVyYWwgPSAob3JpZ2luLCB2YWx1
ZSkgPT4gSW50TGl0ZXJhbC53aXRoVHlwZShvcmlnaW4sIHZhbHVlID4+PiAwLCB0eXBlKTsKKyAg
ICAgICAgICAgICAgICAgdHlwZS5zdWNjZXNzb3JWYWx1ZSA9IHZhbHVlID0+ICh2YWx1ZSArIDEp
ID4+PiAwOworICAgICAgICAgICAgICAgICB0eXBlLnZhbHVlc0VxdWFsID0gKGEsIGIpID0+IGEg
PT09IGI7CisgICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVm
ZmVyLCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCAwKTsKKyAgICAgICAgICAgICAgICAg
dHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWUgPj4+IDA7Cisg
ICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9
PiB2YWx1ZSA+Pj4gMDsKKyAgICAgICAgICAgICAgICAgdHlwZS5hbGxWYWx1ZXMgPSBmdW5jdGlv
biooKSB7CisgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSAweGZmZmZm
ZmZmOyArK2kpCisgICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiBpLCBuYW1l
OiBpfTsKKyAgICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0
aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGJvb2wiLAotICAgICAg
ICAgICAgdHlwZSA9PiB7Ci0gICAgICAgICAgICAgICAgdGhpcy5ib29sID0gdHlwZTsKLSAgICAg
ICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBl
LnNpemUgPSAxOwotICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAo
YnVmZmVyLCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCBmYWxzZSk7Ci0gICAgICAgICAg
ICB9KTsKKyAgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgY2hhciIsCisgICAgICAgICAgICAg
dHlwZSA9PiB7CisgICAgICAgICAgICAgICAgIHRoaXMuY2hhciA9IHR5cGU7CisgICAgICAgICAg
ICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlz
SW50ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7CisgICAg
ICAgICAgICAgICAgIHR5cGUuaXNTaWduZWQgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBl
LmNhblJlcHJlc2VudCA9IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQoY2FzdChJbnQ4QXJy
YXksIHZhbHVlKSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOworICAg
ICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7CisgICAgICAgICAgICAgICAgIHR5
cGUuY3JlYXRlTGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBl
KG9yaWdpbiwgY2FzdChJbnQ4QXJyYXksIHZhbHVlKSwgdHlwZSk7CisgICAgICAgICAgICAgICAg
IHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiBjYXN0KEludDhBcnJheSwgdmFsdWUgKyAx
KTsKKyAgICAgICAgICAgICAgICAgdHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09PSBi
OworICAgICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwg
b2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUu
Zm9ybWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IGNhc3QoSW50OEFycmF5LCB2YWx1
ZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2
YWx1ZSA9PiBjYXN0KEludDhBcnJheSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLmFs
bFZhbHVlcyA9IGZ1bmN0aW9uKigpIHsKKyAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkg
PSAwOyBpIDw9IDB4ZmY7ICsraSkgeworICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1
ZSA9IGNhc3QoSW50OEFycmF5LCBpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICB5aWVsZCB7
dmFsdWU6IHZhbHVlLCBuYW1lOiB2YWx1ZX07CisgICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNl
dCgKKyAgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgc2hvcnQiLAorICAgICAgICAgICAgIHR5
cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLnNob3J0ID0gdHlwZTsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJ
bnQgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAg
ICAgICAgICAgICAgdHlwZS5pc1NpZ25lZCA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUu
Y2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudChjYXN0KEludDE2QXJy
YXksIHZhbHVlKSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOworICAg
ICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7CisgICAgICAgICAgICAgICAgIHR5
cGUuY3JlYXRlTGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBl
KG9yaWdpbiwgY2FzdChJbnQxNkFycmF5LCB2YWx1ZSksIHR5cGUpOworICAgICAgICAgICAgICAg
ICB0eXBlLnN1Y2Nlc3NvclZhbHVlID0gdmFsdWUgPT4gY2FzdChJbnQxNkFycmF5LCB2YWx1ZSAr
IDEpOworICAgICAgICAgICAgICAgICB0eXBlLnZhbHVlc0VxdWFsID0gKGEsIGIpID0+IGEgPT09
IGI7CisgICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVy
LCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCAwKTsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUgPT4gY2FzdChJbnQxNkFycmF5LCB2
YWx1ZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwg
PSB2YWx1ZSA9PiBjYXN0KEludDE2QXJyYXksIHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5hbGxWYWx1ZXMgPSBmdW5jdGlvbiooKSB7CisgICAgICAgICAgICAgICAgICAgICBmb3IgKGxl
dCBpID0gMDsgaSA8PSAweGZmZmY7ICsraSkgeworICAgICAgICAgICAgICAgICAgICAgICAgIGxl
dCB2YWx1ZSA9IGNhc3QoSW50MTZBcnJheSwgaSk7CisgICAgICAgICAgICAgICAgICAgICAgICAg
eWllbGQge3ZhbHVlOiB2YWx1ZSwgbmFtZTogdmFsdWV9OworICAgICAgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMu
X21hcC5zZXQoCisgICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGludCIsCisgICAgICAgICAg
ICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgIHRoaXMuaW50ID0gdHlwZTsKKyAgICAgICAg
ICAgICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUu
aXNJbnQgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAg
ICAgICAgICAgICAgICAgdHlwZS5pc1NpZ25lZCA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5
cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudCh2YWx1ZSB8IDAs
IHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5kZWZhdWx0VmFsdWUgPSAwOworICAgICAgICAgICAgICAgICB0eXBlLmNyZWF0ZUxp
dGVyYWwgPSAob3JpZ2luLCB2YWx1ZSkgPT4gSW50TGl0ZXJhbC53aXRoVHlwZShvcmlnaW4sIHZh
bHVlIHwgMCwgdHlwZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2
YWx1ZSA9PiAodmFsdWUgKyAxKSB8IDA7CisgICAgICAgICAgICAgICAgIHR5cGUudmFsdWVzRXF1
YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKKyAgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURl
ZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOwor
ICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9
PiB2YWx1ZSB8IDA7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExp
dGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSB8IDA7CisgICAgICAgICAgICAgICAgIHR5cGUuYWxsVmFs
dWVzID0gZnVuY3Rpb24qKCkgeworICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7
IGkgPD0gMHhmZmZmZmZmZjsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZh
bHVlID0gaSB8IDA7CisgICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiB2YWx1
ZSwgbmFtZTogdmFsdWV9OworICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ICB9OworICAgICAgICAgICAgIH0pOworCisgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAg
ICAgICAgICJuYXRpdmUgdHlwZWRlZiBoYWxmIiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAg
ICAgICAgICAgICAgICAgdGhpcy5oYWxmID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5p
c1ByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7CisgICAg
ICAgICAgICAgICAgIHR5cGUuaXNGbG9hdGluZyA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5
cGUuaXNOdW1iZXIgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2VudCA9
IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQoY2FzdFRvSGFsZih2YWx1ZSksIHZhbHVlKTsK
KyAgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9m
ZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOworICAgICAgICAgICAgICAgICB0eXBlLmZv
cm1hdFZhbHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZTsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOworICAg
ICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUZsb2F0TGl0ZXJhbCA9IHZhbHVlID0+
IGNhc3RUb0hhbGYodmFsdWUpOworICAgICAgICAgICAgIH0pOworCisgICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBmbG9hdCIsCisgICAgICAgICAg
ICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgIHRoaXMuZmxvYXQgPSB0eXBlOworICAgICAg
ICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5zaXplID0gMTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc0Zsb2F0aW5nID0gdHJ1ZTsKKyAg
ICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5
cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudChNYXRoLmZyb3Vu
ZCh2YWx1ZSksIHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRW
YWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOworICAgICAg
ICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1
ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZh
bHVlID0+IHZhbHVlOworICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUZsb2F0
TGl0ZXJhbCA9IHZhbHVlID0+IE1hdGguZnJvdW5kKHZhbHVlKTsKKyAgICAgICAgICAgICB9KTsK
KworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBh
dG9taWNfaW50IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAgdGhp
cy5hdG9taWNfaW50ID0gdHlwZTsKKyAgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBhdG9taWNfdWludCIsCisgICAg
ICAgICAgICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgIHRoaXMuYXRvbWljX3VpbnQgPSB0
eXBlOworICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIGZvciAobGV0IHZlY3RvclR5cGUgb2Yg
VmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0gICAgICAgICAgICBmb3IgKGxldCB2ZWN0b3JTaXplIG9m
IFZlY3RvckVsZW1lbnRTaXplcykKLSAgICAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGBuYXRp
dmUgdHlwZWRlZiB2ZWN0b3I8JHt2ZWN0b3JUeXBlfSwgJHt2ZWN0b3JTaXplfT5gLCB0eXBlID0+
IHt9KTsKKyAgICAgICAgICAgIGZvciAobGV0IHZlY3RvclNpemUgb2YgVmVjdG9yRWxlbWVudFNp
emVzKSB7CisgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYgdmVj
dG9yPCR7dmVjdG9yVHlwZX0sICR7dmVjdG9yU2l6ZX0+YCwgdHlwZSA9PiB7CisgICAgICAgICAg
ICAgICAgICAgIHRoaXNbYHZlY3Rvcjwke3ZlY3RvclR5cGV9LCAke3ZlY3RvclNpemV9PmBdID0g
dHlwZTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQotICAg
ICAgICAKKworICAgICAgICBmb3IgKGxldCB0eXBlIG9mIFsiaGFsZiIsICJmbG9hdCJdKSB7Cisg
ICAgICAgICAgICBmb3IgKGxldCBoZWlnaHQgPSAyOyBoZWlnaHQgPD0gNDsgKytoZWlnaHQpIHsK
KyAgICAgICAgICAgICAgICBmb3IgKGxldCB3aWR0aCA9IDI7IHdpZHRoIDw9IDQ7ICsrd2lkdGgp
IHsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYgbWF0
cml4PCR7dHlwZX0sICR7aGVpZ2h0fSwgJHt3aWR0aH0+YCwgdHlwZSA9PiB7CisgICAgICAgICAg
ICAgICAgICAgICAgICB0aGlzW2BtYXRyaXg8JHt0eXBlfSwgJHtoZWlnaHR9LCAke3dpZHRofT5g
XSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIG9wZXJhdG9yIGludCh1aW50KSIsCi0gICAgICAgICAgICBmdW5jID0+IHsK
LSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIu
Ym94KHZhbHVlLmxvYWRWYWx1ZSgpIHwgMCk7CisgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYg
c2FtcGxlciIsCisgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICB0aGlzLnNh
bXBsZXIgPSB0eXBlOworICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBGaWd1cmUgb3V0IHdoYXQg
dG8gcHV0IGhlcmUuCiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKKyAgICAgICAgZm9yIChs
ZXQgdGV4dHVyZVR5cGUgb2YgWyJUZXh0dXJlMUQiLCAiUldUZXh0dXJlMUQiLCAiVGV4dHVyZTFE
QXJyYXkiLCAiUldUZXh0dXJlMURBcnJheSIsICJUZXh0dXJlMkQiLCAiUldUZXh0dXJlMkQiLCAi
VGV4dHVyZTJEQXJyYXkiLCAiUldUZXh0dXJlMkRBcnJheSIsICJUZXh0dXJlM0QiLCAiUldUZXh0
dXJlM0QiLCAiVGV4dHVyZUN1YmUiXSkgeworICAgICAgICAgICAgZm9yIChsZXQgdHlwZUFyZ3Vt
ZW50IG9mIFsiYm9vbCIsICJ1Y2hhciIsICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNob3J0
IiwgImludCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgICAgICAgICBgbmF0aXZlIHR5cGVkZWYgJHt0ZXh0dXJlVHlwZX08
JHt0eXBlQXJndW1lbnR9PmAsCisgICAgICAgICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAg
ICAgICAgICAgICAgICAgICAgdGhpc1tgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1lbnR9PmBd
ID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgZm9yIChs
ZXQgaSA9IDI7IGkgPD0gNDsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgIHRoaXMuX21hcC5z
ZXQoCisgICAgICAgICAgICAgICAgICAgICAgICBgbmF0aXZlIHR5cGVkZWYgJHt0ZXh0dXJlVHlw
ZX08JHt0eXBlQXJndW1lbnR9JHtpfT5gLAorICAgICAgICAgICAgICAgICAgICAgICAgdHlwZSA9
PiB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpc1tgJHt0ZXh0dXJlVHlwZX08JHt0
eXBlQXJndW1lbnR9JHtpfT5gXSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsK
KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBm
b3IgKGxldCB0ZXh0dXJlVHlwZSBvZiBbIlRleHR1cmVEZXB0aDJEIiwgIlJXVGV4dHVyZURlcHRo
MkQiLCAiVGV4dHVyZURlcHRoMkRBcnJheSIsICJSV1RleHR1cmVEZXB0aDJEQXJyYXkiLCAiVGV4
dHVyZURlcHRoQ3ViZSJdKSB7CisgICAgICAgICAgICBmb3IgKGxldCB0eXBlQXJndW1lbnQgb2Yg
WyJmbG9hdCIsICJoYWxmIl0pIHsKKyAgICAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAg
ICAgICAgICAgICAgICAgICBgbmF0aXZlIHR5cGVkZWYgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJn
dW1lbnR9PmAsCisgICAgICAgICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAg
ICAgICAgICAgdGhpc1tgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1lbnR9PmBdID0gdHlwZTsK
KyAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAg
ICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidXNob3J0IiwgInVpbnQiLCAiY2hhciIs
ICJzaG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgdWNoYXIoJHtwcmltaXRp
dmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRW
YWx1ZSgpICYgMHhmZik7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKworICAgICAg
ICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAidWludCIsICJjaGFyIiwgInNo
b3J0IiwgImludCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5z
ZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciB1c2hvcnQoJHtwcmltaXRpdmVU
eXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1
ZSgpICYgMHhmZmZmKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAg
IGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAiY2hhciIsICJz
aG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgdWludCgke3ByaW1pdGl2ZVR5
cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVl
KCkgPj4+IDApOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9y
IChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIsICJ1aW50IiwgInNob3J0
IiwgImludCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQo
CisgICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBjaGFyKCR7cHJpbWl0aXZlVHlwZX0p
YCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChjYXN0KEludDhBcnJheSwgdmFs
dWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAg
ICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAidWludCIs
ICJjaGFyIiwgImludCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21h
cC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBzaG9ydCgke3ByaW1pdGl2
ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goY2FzdChJbnQxNkFy
cmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9
CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIs
ICJ1aW50IiwgImNoYXIiLCAic2hvcnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAg
ICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgaW50KCR7
cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChjYXN0
KEludDMyQXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgfSk7Cisg
ICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAi
dXNob3J0IiwgInVpbnQiLCAiY2hhciIsICJzaG9ydCIsICJpbnQiLCAiZmxvYXQiXSkgeworICAg
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9y
IGhhbGYoJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAg
ICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIu
Ym94KGNhc3RUb0hhbGYodmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9KTsK
KyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIs
ICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNob3J0IiwgImludCIsICJoYWxmIl0pIHsKKyAg
ICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRv
ciBmbG9hdCgke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7Cisg
ICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0
ci5ib3goTWF0aC5mcm91bmQodmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9
KTsKKyAgICAgICAgfQorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIG9wZXJhdG9yIGludCh1Y2hhcikiLAorICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBp
bnQoYXRvbWljX2ludClgLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFs
dWUoKSB8IDApOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkpOwogICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJh
dG9yIGludChmbG9hdCkiLAorICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciB1aW50KGF0b21p
Y191aW50KWAsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpIHwg
MCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBF
UHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgdWlu
dChpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KGJvb2wsYm9vbCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSA+Pj4gMCk7Cisg
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9Pgor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0Lmxv
YWRWYWx1ZSgpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKworICAgICAgICBmb3IgKGxl
dCBwcmltaXRpdmVUeXBlIG9mIFsidWludCIsICJpbnQiLCAiZmxvYXQiXSkgeworICAgICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I9
PSgke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBm
dW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVm
dCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2Fk
VmFsdWUoKSA9PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgfSk7CisKKyAg
ICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9w
ZXJhdG9yPCgke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVm
dC5sb2FkVmFsdWUoKSA8IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICB9KTsK
KworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJv
b2wgb3BlcmF0b3I8PSgke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAg
ICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAg
ICAgfSk7CisKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5h
dGl2ZSBib29sIG9wZXJhdG9yPigke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwK
KyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAg
ICAgICAgICB9KTsKKworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAg
ICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I+PSgke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlw
ZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVu
Yy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+PSByaWdodC5sb2FkVmFsdWUoKSk7Cisg
ICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1aW50KHVjaGFyKSIsCisgICAgICAgICAgICAi
bmF0aXZlIGludCBvcGVyYXRvci0oaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZh
bHVlLmxvYWRWYWx1ZSgpID4+PiAwKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KCgtdmFsdWUu
bG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAg
dGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCki
LAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgPj4+IDApOworICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3goTWF0aC5mcm91bmQoLXZhbHVlLmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAg
ICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJu
YXRpdmUgb3BlcmF0b3IgdWNoYXIoaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVy
YXRvcisoaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFs
dWUoKSAmIDB4ZmYpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZh
bHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAg
ICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRv
ciB1Y2hhcih1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvci0oaW50LGlu
dCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSAmIDB4ZmYp
OworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkg
PT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSByaWdo
dC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAg
ICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hhcihmbG9h
dCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3IqKGludCxpbnQpIiwKICAgICAg
ICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgJiAweGZmKTsKKyAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICogcmlnaHQubG9hZFZhbHVl
KCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFw
LnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGludCBvcGVyYXRvci8oaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9
PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBF
UHRyLmJveChNYXRoLmZyb3VuZCh2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkgfCAw
KTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciBmbG9hdCh1aW50KSIsCisgICAgICAgICAgICAi
bmF0aXZlIHVpbnQgb3BlcmF0b3IrKHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7
Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRy
LmJveChNYXRoLmZyb3VuZCh2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDAp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9yIGZsb2F0KHVjaGFyKSIsCisgICAgICAgICAgICAi
bmF0aXZlIHVpbnQgb3BlcmF0b3ItKHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7
Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRy
LmJveChNYXRoLmZyb3VuZCh2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDAp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcisoaW50LGludCkiLAorICAgICAgICAgICAg
Im5hdGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4g
ewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkg
PT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKyByaWdo
dC5sb2FkVmFsdWUoKSkgfCAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQu
bG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7
Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IHVpbnQgb3BlcmF0b3IrKHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9w
ZXJhdG9yLyh1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkg
Pj4+IDApOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAv
IHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgb3BlcmF0
b3IrKGZsb2F0LGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAg
ICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2Fk
VmFsdWUoKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21h
cC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvci0oaW50LGludCkiLAorICAg
ICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsZmxvYXQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZh
bHVlKCkgLSByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0
ci5ib3goTWF0aC5mcm91bmQobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7
CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAg
ICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvci0odWludCx1aW50KSIsCisgICAgICAgICAg
ICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yKihmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVu
YyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmln
aHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAt
IHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkpOwogICAg
ICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAg
Im5hdGl2ZSBmbG9hdCBvcGVyYXRvci8oZmxvYXQsZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMg
PT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQobGVmdC5sb2Fk
VmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIu
Ym94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkpOwog
ICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAg
ICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvciooaW50LGludCkiLAorICAgICAgICAgICAgIm5h
dGl2ZSBpbnQgb3BlcmF0b3ImKGludCxpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4gewot
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKiBy
aWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKLSAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgJiByaWdodC5sb2FkVmFsdWUoKSkg
fCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LHVpbnQpIiwKKyAgICAg
ICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yfChpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5j
ID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdo
dF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICog
cmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
KGxlZnQubG9hZFZhbHVlKCkgfCByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAg
IH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSBmbG9hdCBvcGVyYXRvciooZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJuYXRpdmUg
aW50IG9wZXJhdG9yXihpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKiByaWdo
dC5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2Fk
VmFsdWUoKSBeIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBv
cGVyYXRvci8oaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3J+KGlu
dCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJv
eCgobGVmdC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOworICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goKH52YWx1
ZS5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAg
ICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yLyh1aW50
LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yPDwoaW50LHVpbnQpIiwK
ICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxl
ZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOworICAgICAgICAgICAg
ICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSA8PCByaWdodC5sb2FkVmFsdWUoKSkg
fCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3ImKGludCxpbnQpIiwKKyAgICAgICAg
ICAgICJuYXRpdmUgaW50IG9wZXJhdG9yPj4oaW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMg
PT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSAmIHJp
Z2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9h
ZFZhbHVlKCkgPj4gcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKLSAg
ICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWlu
dCBvcGVyYXRvciYodWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICYgcmlnaHQubG9hZFZhbHVl
KCkpID4+PiAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKLSAgICAgICAgdGhpcy5fbWFw
LnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yfChpbnQsaW50KSIsCi0gICAg
ICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9h
ZFZhbHVlKCkgfCByaWdodC5sb2FkVmFsdWUoKSk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAg
CisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVy
YXRvcnwodWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAg
ICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIHwgcmlnaHQubG9hZFZhbHVlKCkpID4+
PiAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKLSAgICAgICAgdGhpcy5fbWFwLnNldCgK
LSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yXihpbnQsaW50KSIsCi0gICAgICAgICAg
ICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0
LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVl
KCkgXiByaWdodC5sb2FkVmFsdWUoKSk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcl4o
dWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIF4gcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsK
ICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAg
ICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3I8PChpbnQsdWludCkiLAorICAgICAgICAgICAg
Im5hdGl2ZSB1aW50IG9wZXJhdG9yfih1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0g
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPDwgcmlnaHQubG9h
ZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4gRVB0ci5ib3goKH52YWx1ZS5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCiAgICAgICAgICAgICAibmF0
aXZlIHVpbnQgb3BlcmF0b3I8PCh1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewog
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
ICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgPDwgcmlnaHQu
bG9hZFZhbHVlKCkpID4+PiAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAg
ICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3I+PihpbnQs
dWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCx1aW50KSIs
CiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxl
ZnQubG9hZFZhbHVlKCkgPj4gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgICAg
ICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSA+Pj4gcmlnaHQubG9hZFZhbHVlKCkpID4+PiAw
KTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCx1aW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGZsb2F0IGNvcyhmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0g
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9Pgot
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID4+PiByaWdodC5s
b2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmNv
cyh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAg
ICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3J+KGlu
dCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBzaW4oZmxvYXQpIiwKICAgICAgICAgICAg
IGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4gRVB0ci5ib3gofnZhbHVlLmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIu
Ym94KE1hdGguZnJvdW5kKE1hdGguc2luKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAg
ICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAi
bmF0aXZlIHVpbnQgb3BlcmF0b3J+KHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQg
dGFuKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KCh+dmFsdWUubG9hZFZhbHVl
KCkpID4+PiAwKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1
ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgudGFu
KHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAg
ICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yLyhm
bG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhY29zKGZsb2F0KSIsCiAg
ICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGgu
ZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkpOworICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5hY29zKHZhbHVlLmxvYWRWYWx1ZSgpKSkp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I9PShpbnQsaW50KSIsCisgICAgICAgICAg
ICAibmF0aXZlIGZsb2F0IGFzaW4oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAg
ICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA9PSByaWdodC5sb2Fk
VmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVd
KSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmFzaW4o
dmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KHVp
bnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhdGFuKGZsb2F0KSIsCiAgICAg
ICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9h
ZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
TWF0aC5mcm91bmQoTWF0aC5hdGFuKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIGJvb2wgb3BlcmF0b3I9PShib29sLGJvb2wpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxv
YXQgY29zaChmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguY29zaCh2YWx1ZS5sb2FkVmFs
dWUoKSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAu
c2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPT0oZmxvYXQsZmxvYXQpIiwK
KyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgc2luaChmbG9hdCkiLAogICAgICAgICAgICAgZnVu
YyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmln
aHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09
IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5k
KE1hdGguc2luaCh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAg
ICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9w
ZXJhdG9yPChpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHRhbmgoZmxvYXQp
IiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50
YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
bGVmdC5sb2FkVmFsdWUoKSA8IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQ
dHIuYm94KE1hdGguZnJvdW5kKE1hdGgudGFuaCh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAg
ICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAg
ICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPCh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRp
dmUgZmxvYXQgY2VpbChmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpIDwgcmlnaHQubG9hZFZhbHVlKCkp
OworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAg
ICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5jZWlsKHZhbHVlLmxv
YWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8KGZsb2F0LGZsb2F0
KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGV4cChmbG9hdCkiLAogICAgICAgICAgICAg
ZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwg
cmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgp
IDwgcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91
bmQoTWF0aC5leHAodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBv
cGVyYXRvcjw9KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgZmxvb3IoZmxv
YXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAg
ICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmZsb29yKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwog
ICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAg
ICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8PSh1aW50LHVpbnQpIiwKKyAgICAgICAgICAg
ICJuYXRpdmUgZmxvYXQgbG9nKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAg
ICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPD0gcmlnaHQubG9hZFZh
bHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkg
PT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5sb2codmFs
dWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAg
dGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcjw9KGZsb2F0
LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHJvdW5kKGZsb2F0KSIsCiAgICAg
ICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9h
ZFZhbHVlKCkgPD0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
TWF0aC5mcm91bmQoTWF0aC5yb3VuZCh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAg
IH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSBib29sIG9wZXJhdG9yPihpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0
IHNxcnQoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguc3FydCh2YWx1ZS5sb2FkVmFsdWUo
KSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPih1aW50LHVpbnQpIiwKKyAgICAg
ICAgICAgICJuYXRpdmUgZmxvYXQgdHJ1bmMoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4g
ewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkg
PT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0
LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgu
dHJ1bmModmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRv
cj4oZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgZGR4KGZsb2F0KSIs
CiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxl
ZnQubG9hZFZhbHVlKCkgPiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVu
Yy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgwKTsKICAgICAgICAgICAg
IH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSBib29sIG9wZXJhdG9yPj0oaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9h
dCBkZHkoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgw
KTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPj0odWludCx1aW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGZsb2F0IHBvdyhmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9
PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRd
KSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID49IHJp
Z2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91
bmQoTWF0aC5wb3cobGVmdC5sb2FkVmFsdWUoKSwgcmlnaHQubG9hZFZhbHVlKCkpKSk7CiAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgCisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAg
ICAgICJuYXRpdmUgYm9vbCBpc2Zpbml0ZShmbG9hdCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7
CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveChOdW1iZXIuaXNGaW5pdGUodmFsdWUubG9hZFZhbHVl
KCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAg
ICAgICAibmF0aXZlIGJvb2wgaXNpbmYoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4gewor
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAg
ICAgICAgICAgICAgICAgRVB0ci5ib3goKHZhbHVlLmxvYWRWYWx1ZSgpID09IE51bWJlci5QT1NJ
VElWRV9JTkZJTklUWSkgfHwgKHZhbHVlLmxvYWRWYWx1ZSgpID09IE51bWJlci5ORUdBVElWRV9J
TkZJTklUWSkpOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAg
ICAgICAgICAgICJuYXRpdmUgYm9vbCBpc25hbihmbG9hdCkiLAorICAgICAgICAgICAgZnVuYyA9
PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9Pgor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChOdW1iZXIuaXNOYU4odmFsdWUubG9hZFZhbHVl
KCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhp
cy4KICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVy
YXRvcj49KGZsb2F0LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGJvb2wgaXNub3JtYWwo
aGFsZikiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChp
c05hTih2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgLy8g
RklYTUU6IEltcGxlbWVudCB0aGlzLgorICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAg
ICAgIm5hdGl2ZSBib29sIGlzbm9ybWFsKGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsK
KyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAg
ICAgICAgICAgICAgICAgIEVQdHIuYm94KGlzTmFOKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAg
ICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2
ZSBmbG9hdCBhdGFuMihmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID49IHJpZ2h0LmxvYWRW
YWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5h
dGFuMihsZWZ0LmxvYWRWYWx1ZSgpLCByaWdodC5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAg
IH0pOwogCi0gICAgICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5cGVOYW1lIG9mIGFsbFZlY3Rv
clR5cGVOYW1lcygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYg
JHtuYXRpdmVWZWN0b3JUeXBlTmFtZX1gLCB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0eXBl
LmlzUHJpbWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAg
ICJuYXRpdmUgaW50IGFzaW50KGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KEZsb2F0MzJBcnJheSwgSW50MzJBcnJheSwg
dmFsdWUubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwogCi0gICAgICAgIGZvciAobGV0
IHN3aXp6bGUgb2YgU3dpenpsZU9wLmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFw
LnNldChzd2l6emxlLnRvU3RyaW5nKCksIGZ1bmMgPT4gc3dpenpsZS5pbnN0YW50aWF0ZUltcGxl
bWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJu
YXRpdmUgdWludCBhc3VpbnQoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goYml0d2lzZUNhc3QoRmxvYXQzMkFycmF5LCBVaW50MzJBcnJheSwg
dmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21h
cC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGFzZmxvYXQoaW50KSIsCisgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KEludDMy
QXJyYXksIEZsb2F0MzJBcnJheSwgdmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0p
OwogCi0gICAgICAgIGZvciAobGV0IGJvb2xPcCBvZiBPcGVyYXRvckJvb2wuZnVuY3Rpb25zKCkp
Ci0gICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGJvb2xPcC50b1N0cmluZygpLCBmdW5jID0+IGJv
b2xPcC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgdGhpcy5fbWFw
LnNldCgKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgYXNmbG9hdCh1aW50KSIsCisgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KFVpbnQz
MkFycmF5LCBGbG9hdDMyQXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICB9
KTsKIAotICAgICAgICBmb3IgKGxldCBhbmRlckluZGV4IG9mIE9wZXJhdG9yQW5kZXJJbmRleGVy
LmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChhbmRlckluZGV4LnRvU3Ry
aW5nKCksIGZ1bmMgPT4gYW5kZXJJbmRleC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMp
KTsKKyAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGlzLgorICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBmMTZ0b2YzMih1aW50KSIsCisgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KDApOworICAgICAgICAgICAg
fSk7CiAKLSAgICAgICAgZm9yIChsZXQgY2FzdCBvZiBCdWlsdGluVmVjdG9yQ29uc3RydWN0b3Jz
LmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChjYXN0LnRvU3RyaW5nKCks
IGZ1bmMgPT4gY2FzdC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAg
Ly8gRklYTUU6IEltcGxlbWVudCB0aGlzLgorICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAg
ICAgICAgIm5hdGl2ZSB1aW50IGYzMnRvZjE2KGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+
IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+Cisg
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KDApOworICAgICAgICAgICAgfSk7CiAKLSAgICAg
ICAgZm9yIChsZXQgZ2V0dGVyIG9mIEJ1aWx0aW5WZWN0b3JJbmRleEdldHRlci5mdW5jdGlvbnMo
KSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZ2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMgPT4g
Z2V0dGVyLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSB2b2lkIEFsbE1lbW9yeUJhcnJpZXJXaXRoR3Jv
dXBTeW5jKCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IGZ1bmN0aW9uKCkge307CisgICAgICAgICAgICB9KTsKIAotICAgICAg
ICBmb3IgKGxldCBzZXR0ZXIgb2YgQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmZ1bmN0aW9ucygp
KQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwgZnVuYyA9PiBz
ZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisgICAgICAgIHRoaXMuX21h
cC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIHZvaWQgRGV2aWNlTWVtb3J5QmFycmllcldpdGhH
cm91cFN5bmMoKSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gZnVuY3Rpb24oKSB7fTsKKyAgICAgICAgICAgIH0pOwogCi0gICAg
ICAgIGZvciAobGV0IGVxdWFsaXR5T3BlcmF0b3Igb2YgQnVpbHRpblZlY3RvckVxdWFsaXR5T3Bl
cmF0b3IuZnVuY3Rpb25zKCkpCi0gICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGVxdWFsaXR5T3Bl
cmF0b3IudG9TdHJpbmcoKSwgZnVuYyA9PiBlcXVhbGl0eU9wZXJhdG9yLmluc3RhbnRpYXRlSW1w
bGVtZW50YXRpb24oZnVuYykpOworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAg
Im5hdGl2ZSB2b2lkIEdyb3VwTWVtb3J5QmFycmllcldpdGhHcm91cFN5bmMoKSIsCisgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gZnVu
Y3Rpb24oKSB7fTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIGZvciAobGV0IG5hdGl2ZVZl
Y3RvclR5cGVOYW1lIG9mIGFsbFZlY3RvclR5cGVOYW1lcygpKSB7CisgICAgICAgICAgICB0aGlz
Ll9tYXAuc2V0KGBuYXRpdmUgdHlwZWRlZiAke25hdGl2ZVZlY3RvclR5cGVOYW1lfWAsIHR5cGUg
PT4geworICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOworICAgICAgICAg
ICAgfSk7CisgICAgICAgIH0KIAogICAgICAgICBmb3IgKGxldCBnZXR0ZXIgb2YgQnVpbHRpblZl
Y3RvckdldHRlci5mdW5jdGlvbnMoKSkKICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZ2V0dGVy
LnRvU3RyaW5nKCksIGZ1bmMgPT4gZ2V0dGVyLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykpOwogCiAgICAgICAgIGZvciAobGV0IHNldHRlciBvZiBCdWlsdGluVmVjdG9yU2V0dGVyLmZ1
bmN0aW9ucygpKQogICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwg
ZnVuYyA9PiBzZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisKKyAgICAg
ICAgZm9yIChsZXQgZ2V0dGVyIG9mIEJ1aWx0aW5NYXRyaXhHZXR0ZXIuZnVuY3Rpb25zKCkpCisg
ICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGdldHRlci50b1N0cmluZygpLCBmdW5jID0+IGdldHRl
ci5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKworICAgICAgICBmb3IgKGxldCBz
ZXR0ZXIgb2YgQnVpbHRpbk1hdHJpeFNldHRlci5mdW5jdGlvbnMoKSkKKyAgICAgICAgICAgIHRo
aXMuX21hcC5zZXQoc2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMgPT4gc2V0dGVyLmluc3RhbnRpYXRl
SW1wbGVtZW50YXRpb24oZnVuYykpOworCisgICAgICAgIGZvciAobGV0IHR5cGUgb2YgWyJoYWxm
IiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAg
ICAgYG5hdGl2ZSAke3R5cGV9IG9wZXJhdG9yW10oJHt0eXBlfTJ4MilgLAorICAgICAgICAgICAg
ICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2Fk
VmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOworICAgICAgICAgICAgICAgIH0pOwor
ICAgICAgICB9CisKKyAgICAgICAgZm9yIChsZXQgc3dpenpsZSBvZiBTd2l6emxlT3AuZnVuY3Rp
b25zKCkpCisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KHN3aXp6bGUudG9TdHJpbmcoKSwgZnVu
YyA9PiBzd2l6emxlLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworCisgICAgICAg
IGZvciAobGV0IGNhc3Qgb2YgQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5mdW5jdGlvbnMoKSkK
KyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoY2FzdC50b1N0cmluZygpLCBmdW5jID0+IGNhc3Qu
aW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CiAgICAgfQotICAgIAorCiAgICAgYWRk
KHRoaW5nKQogICAgIHsKICAgICAgICAgbGV0IGludHJpbnNpYyA9IHRoaXMuX21hcC5nZXQodGhp
bmcudG9TdHJpbmcoKSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9NYXRyaXhUeXBlLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4VHlw
ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lMTY5N2MzMTA2ZDYxNzg4NzNkNDNkNWFhZmYxZTY3ODI0NTE0ZjI2
Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4
VHlwZS5qcwpAQCAtMCwwICsxLDYyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
CisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworY2xhc3MgTWF0cml4VHlwZSBleHRlbmRzIE5h
dGl2ZVR5cGUgeworICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cykK
KyAgICB7CisgICAgICAgIHN1cGVyKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CisgICAg
fQorCisgICAgZ2V0IGVsZW1lbnRUeXBlKCkgeyByZXR1cm4gdGhpcy50eXBlQXJndW1lbnRzWzBd
OyB9CisgICAgZ2V0IG51bVJvd3MoKSB7IHJldHVybiB0aGlzLnR5cGVBcmd1bWVudHNbMV07IH0K
KyAgICBnZXQgbnVtQ29sdW1ucygpIHsgcmV0dXJuIHRoaXMudHlwZUFyZ3VtZW50c1syXTsgfQor
ICAgIGdldCBudW1Sb3dzVmFsdWUoKSB7IHJldHVybiB0aGlzLm51bVJvd3MudmFsdWU7IH0KKyAg
ICBnZXQgbnVtQ29sdW1uc1ZhbHVlKCkgeyByZXR1cm4gdGhpcy5udW1Db2x1bW5zLnZhbHVlOyB9
CisgICAgZ2V0IHNpemUoKSB7IHJldHVybiB0aGlzLmVsZW1lbnRUeXBlLnNpemUgKiB0aGlzLm51
bVJvd3NWYWx1ZSAqIHRoaXMubnVtQ29sdW1uc1ZhbHVlOyB9CisKKyAgICB1bmlmeUltcGwodW5p
ZmljYXRpb25Db250ZXh0LCBvdGhlcikKKyAgICB7CisgICAgICAgIGlmICghKG90aGVyIGluc3Rh
bmNlb2YgTWF0cml4VHlwZSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAg
aWYgKHRoaXMubnVtUm93c1ZhbHVlICE9PSBvdGhlci5udW1Sb3dzVmFsdWUgfHwgdGhpcy5udW1D
b2x1bW5zVmFsdWUgIT09IG90aGVyLm51bUNvbHVtbnNWYWx1ZSkKKyAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKKworICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50VHlwZS51bmlmeSh1bmlmaWNh
dGlvbkNvbnRleHQsIG90aGVyLmVsZW1lbnRUeXBlKTsKKyAgICB9CisKKyAgICBwb3B1bGF0ZURl
ZmF1bHRWYWx1ZShidWZmZXIsIG9mZnNldCkKKyAgICB7CisgICAgICAgIGZvciAobGV0IGkgPSAw
OyBpIDwgdGhpcy5udW1Sb3dzVmFsdWUgKiB0aGlzLnJ1bkNvbHVtbnNWYWx1ZTsgKytpKQorICAg
ICAgICAgICAgdGhpcy5lbGVtZW50VHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZShidWZmZXIsIG9m
ZnNldCArIGkgKiB0aGlzLmVsZW1lbnRUeXBlLnNpemUpOworICAgIH0KKworICAgIHRvU3RyaW5n
KCkKKyAgICB7CisgICAgICAgIHJldHVybiBgbmF0aXZlIHR5cGVkZWYgbWF0cml4PCR7dGhpcy5l
bGVtZW50VHlwZX0sICR7dGhpcy5udW1Sb3dzVmFsdWV9LCAke3RoaXMubnVtQ29sdW1uc1ZhbHVl
fT5gOworICAgIH0KK30KKwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTmFtZUNvbnRleHQuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29u
dGV4dC5qcwppbmRleCAxYmFiM2ZjNTYwMjYwMTA3N2IzZmE4ODVhNjA1NGFiODYwYjBhMTkzLi5j
ODk5NjhjNzc5NjA3YjdjYWJjYzZhNWY5NjliNGFiOTEzZTcyNjNlIDEwMDY0NAotLS0gYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5qcworKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5qcwpAQCAtNjksMTEgKzY5LDMzIEBAIGNs
YXNzIE5hbWVDb250ZXh0IHsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogCisgICAg
ICAgIGlmICh0aGluZy5raW5kID09IFR5cGUpIHsKKyAgICAgICAgICAgIHRoaXMuX3NldC5hZGQo
dGhpbmcpOworICAgICAgICAgICAgaWYgKHRoaW5nLnR5cGVBcmd1bWVudHMgJiYgdGhpbmcudHlw
ZUFyZ3VtZW50cy5sZW5ndGggIT0gMCkgeworICAgICAgICAgICAgICAgIGxldCBhcnJheSA9IHRo
aXMuX21hcC5nZXQodGhpbmcubmFtZSk7CisgICAgICAgICAgICAgICAgaWYgKCFhcnJheSkgewor
ICAgICAgICAgICAgICAgICAgICBhcnJheSA9IFtdOworICAgICAgICAgICAgICAgICAgICBhcnJh
eS5raW5kID0gVHlwZTsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldCh0aGluZy5u
YW1lLCBhcnJheSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGlmIChhcnJh
eS5raW5kICE9IFR5cGUpCisgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9y
KHRoaW5nLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJDYW5ub3QgcmV1c2UgdHlwZSBuYW1lIGZvciBm
dW5jdGlvbjogIiArIHRoaW5nLm5hbWUpOworICAgICAgICAgICAgICAgIGFycmF5LnB1c2godGhp
bmcpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICAgICAgaWYgKHRoaXMuX21hcC5oYXModGhpbmcubmFtZSkpCisgICAgICAgICAgICAg
ICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRoaW5nLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJE
dXBsaWNhdGUgbmFtZTogIiArIHRoaW5nLm5hbWUpOworICAgICAgICAgICAgICAgIHRoaXMuX21h
cC5zZXQodGhpbmcubmFtZSwgdGhpbmcpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICB9CisgICAgICAgIAogICAgICAgICBpZiAodGhpcy5fbWFwLmhhcyh0aGlu
Zy5uYW1lKSkKICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRoaW5nLm9yaWdpbi5v
cmlnaW5TdHJpbmcsICJEdXBsaWNhdGUgbmFtZTogIiArIHRoaW5nLm5hbWUpOwogCiAgICAgICAg
IHRoaXMuX3NldC5hZGQodGhpbmcpOwogICAgICAgICB0aGlzLl9tYXAuc2V0KHRoaW5nLm5hbWUs
IHRoaW5nKTsKKwogICAgIH0KICAgICAKICAgICBnZXQoa2luZCwgbmFtZSkKQEAgLTEwMiw2ICsx
MjQsMTAgQEAgY2xhc3MgTmFtZUNvbnRleHQgewogICAgICAgICAgICAgZm9yIChsZXQgZnVuYyBv
ZiB0aGluZykKICAgICAgICAgICAgICAgICB5aWVsZCBmdW5jOwogICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9IGVsc2UgaWYgKHRoaW5nLmtpbmQgPT09IFR5cGUgJiYgKHRoaW5nIGluc3Rh
bmNlb2YgQXJyYXkpKSB7CisgICAgICAgICAgICBmb3IgKGxldCB0eXBlIG9mIHRoaW5nKQorICAg
ICAgICAgICAgICAgIHlpZWxkIHR5cGU7CisgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0K
ICAgICAgICAgeWllbGQgdGhpbmc7CiAgICAgfQpAQCAtMTYzLDggKzE4OSw4IEBAIGNsYXNzIE5h
bWVDb250ZXh0IHsKICAgICB7CiAgICAgICAgIGZvciAobGV0IHZhbHVlIG9mIHRoaXMuX21hcC52
YWx1ZXMoKSkgewogICAgICAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQXJyYXkpIHsKLSAg
ICAgICAgICAgICAgICBmb3IgKGxldCBmdW5jIG9mIHZhbHVlKQotICAgICAgICAgICAgICAgICAg
ICB5aWVsZCBmdW5jOworICAgICAgICAgICAgICAgIGZvciAobGV0IHRoaW5nIG9mIHZhbHVlKQor
ICAgICAgICAgICAgICAgICAgICB5aWVsZCB0aGluZzsKICAgICAgICAgICAgICAgICBjb250aW51
ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHlpZWxkIHZhbHVlOwpkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZVJlc29sdmVyLmpzIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZVJlc29sdmVyLmpzCmluZGV4IGY2MTVhMmZiNGU4N2Rj
MWRlYjdiMDFiNTcyZmI3YWY2MjZhYmQwOTUuLjlhMDk5ZjQ4NWU2ZTkyN2UxNjQzN2JiZjgyNjQx
ZjYxZTQ1MjVjZjEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05h
bWVSZXNvbHZlci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVz
b2x2ZXIuanMKQEAgLTEyMCwxMiArMTIwLDE5IEBAIGNsYXNzIE5hbWVSZXNvbHZlciBleHRlbmRz
IFZpc2l0b3IgewogICAgIAogICAgIHZpc2l0VHlwZVJlZihub2RlKQogICAgIHsKKyAgICAgICAg
c3VwZXIudmlzaXRUeXBlUmVmKG5vZGUpOwogICAgICAgICBsZXQgdHlwZSA9IG5vZGUudHlwZTsK
ICAgICAgICAgaWYgKCF0eXBlKSB7CiAgICAgICAgICAgICB0eXBlID0gdGhpcy5fbmFtZUNvbnRl
eHQuZ2V0KFR5cGUsIG5vZGUubmFtZSk7CiAgICAgICAgICAgICBpZiAoIXR5cGUpCiAgICAgICAg
ICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3Iobm9kZS5vcmlnaW4ub3JpZ2luU3RyaW5nLCAi
Q291bGQgbm90IGZpbmQgdHlwZSBuYW1lZCAiICsgbm9kZS5uYW1lKTsKLSAgICAgICAgICAgIG5v
ZGUudHlwZSA9IHR5cGU7CisgICAgICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9mIEFycmF5KSB7
CisgICAgICAgICAgICAgICAgLy8gVHlwZSB1bmlmaWNhdGlvbiByZXF1aXJlcyB0aGUgLnR5cGUg
dmFsdWUgdG8gYmUgc2V0IGFscmVhZHksIHNvIHdlIGNhbiBlYWdlcmx5IHNldCBpdCBub3cuCisg
ICAgICAgICAgICAgICAgZm9yIChsZXQgb3ZlcmxvYWQgb2YgdHlwZSkKKyAgICAgICAgICAgICAg
ICAgICAgTm9kZS52aXNpdChvdmVybG9hZCwgdGhpcyk7CisgICAgICAgICAgICAgICAgbm9kZS5y
ZXNvbHZlKHR5cGUpOworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgbm9kZS50
eXBlID0gdHlwZTsKICAgICAgICAgfQogICAgIH0KICAgICAKQEAgLTIwOCw5ICsyMTUsNCBAQCBj
bGFzcyBOYW1lUmVzb2x2ZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgCiAgICAgICAgIHN1
cGVyLnZpc2l0Q2FsbEV4cHJlc3Npb24obm9kZSk7CiAgICAgfQotCi0gICAgdmlzaXRWZWN0b3JU
eXBlKG5vZGUpCi0gICAgewotICAgICAgICBub2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOwot
ICAgIH0KIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hdGl2
ZVR5cGUuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpzCmlu
ZGV4IGUyZDg1MWNiY2NiYTNhOTcyMzRjN2JkMzkyOTA3ODI5Y2E5ZTA1ZjIuLmIzNjhhMmU4YjI0
ZjU0OGVhYjg4YTI4MjRiNDk1YmUyM2M4N2NiODUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL05hdGl2ZVR5cGUuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvTmF0aXZlVHlwZS5qcwpAQCAtMjUsMTEgKzI1LDE0IEBACiAidXNlIHN0cmljdCI7
CiAKIGNsYXNzIE5hdGl2ZVR5cGUgZXh0ZW5kcyBUeXBlIHsKLSAgICBjb25zdHJ1Y3Rvcihvcmln
aW4sIG5hbWUpCisgICAgY29uc3RydWN0b3Iob3JpZ2luLCBuYW1lLCB0eXBlQXJndW1lbnRzKQog
ICAgIHsKKyAgICAgICAgaWYgKCEodHlwZUFyZ3VtZW50cyBpbnN0YW5jZW9mIEFycmF5KSkKKyAg
ICAgICAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBwYXJhbWV0ZXJzIG5vdCBhcnJheTogIiAr
IHR5cGVBcmd1bWVudHMpOwogICAgICAgICBzdXBlcigpOwogICAgICAgICB0aGlzLl9vcmlnaW4g
PSBvcmlnaW47CiAgICAgICAgIHRoaXMuX25hbWUgPSBuYW1lOworICAgICAgICB0aGlzLl90eXBl
QXJndW1lbnRzID0gdHlwZUFyZ3VtZW50czsKICAgICAgICAgdGhpcy5faXNOdW1iZXIgPSBmYWxz
ZTsKICAgICAgICAgdGhpcy5faXNJbnQgPSBmYWxzZTsKICAgICAgICAgdGhpcy5faXNGbG9hdGlu
ZyA9IGZhbHNlOwpAQCAtMzgsNiArNDEsNyBAQCBjbGFzcyBOYXRpdmVUeXBlIGV4dGVuZHMgVHlw
ZSB7CiAgICAgCiAgICAgZ2V0IG9yaWdpbigpIHsgcmV0dXJuIHRoaXMuX29yaWdpbjsgfQogICAg
IGdldCBuYW1lKCkgeyByZXR1cm4gdGhpcy5fbmFtZTsgfQorICAgIGdldCB0eXBlQXJndW1lbnRz
KCkgeyByZXR1cm4gdGhpcy5fdHlwZUFyZ3VtZW50czsgfQogICAgIGdldCBpc05hdGl2ZSgpIHsg
cmV0dXJuIHRydWU7IH0KICAgICAKICAgICAvLyBXZSBsZXQgSW50cmluc2ljcy5qcyBzZXQgdGhl
c2UgYXMgaXQgbGlrZXMuCkBAIC01MiwxOSArNTYsMjAgQEAgY2xhc3MgTmF0aXZlVHlwZSBleHRl
bmRzIFR5cGUgewogICAgIAogICAgIHRvU3RyaW5nKCkKICAgICB7Ci0gICAgICAgIHJldHVybiBg
bmF0aXZlIHR5cGVkZWYgJHt0aGlzLm5hbWV9YDsKKyAgICAgICAgbGV0IHJlc3VsdCA9IGBuYXRp
dmUgdHlwZWRlZiAke3RoaXMubmFtZX1gOworICAgICAgICBpZiAodGhpcy50eXBlQXJndW1lbnRz
Lmxlbmd0aCkKKyAgICAgICAgICAgIHJlc3VsdCArPSAiPCIgKyB0aGlzLnR5cGVBcmd1bWVudHMu
am9pbigiLCIpICsgIj4iOworICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KICAgICAKICAg
ICBzdGF0aWMgY3JlYXRlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cykKICAgICB7Ci0gICAg
ICAgIC8vIEZJWE1FOiBGb3IgbmF0aXZlIHR5cGVzIGxpa2UgVGV4dHVyZTFEIHRoaXMgc2hvdWxk
IHJlc29sdmUgdGhlIHR5cGUgdG8gc29tZXRoaW5nIGNvbmNyZXRlIGJ5IGNoYW5naW5nIHRoZSB0
eXBlIG5hbWUuCi0gICAgICAgIGlmICh0eXBlQXJndW1lbnRzLmxlbmd0aCkKLSAgICAgICAgICAg
IHRocm93IG5ldyBXVHlwZUVycm9yKG9yaWdpbi5vcmlnaW5TdHJpbmcsIGAke25hbWV9PCR7dHlw
ZUFyZ3VtZW50cy5qb2luKCIsIil9PjogU3VwcG9ydCBmb3IgbmF0aXZlIHR5cGVzIHdpdGggdHlw
ZSBhcmd1bWVudHMgaXMgY3VycmVudGx5IHVuaW1wbGVtZW50ZWQuYCk7CisgICAgICAgIGlmIChu
YW1lID09ICJ2ZWN0b3IiKQorICAgICAgICAgICAgcmV0dXJuIG5ldyBWZWN0b3JUeXBlKG9yaWdp
biwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CisgICAgICAgIGlmIChuYW1lID09ICJtYXRyaXgiKQor
ICAgICAgICAgICAgcmV0dXJuIG5ldyBNYXRyaXhUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3Vt
ZW50cyk7CiAKLSAgICAgICAgaWYgKGFsbFZlY3RvclR5cGVOYW1lcygpLmluZGV4T2YobmFtZSkg
PiAtMSkKLSAgICAgICAgICAgIHJldHVybiBuZXcgVmVjdG9yVHlwZShvcmlnaW4sIG5hbWUpOwot
Ci0gICAgICAgIHJldHVybiBuZXcgTmF0aXZlVHlwZShvcmlnaW4sIG5hbWUpOworICAgICAgICBy
ZXR1cm4gbmV3IE5hdGl2ZVR5cGUob3JpZ2luLCBuYW1lLCB0eXBlQXJndW1lbnRzKTsKICAgICB9
CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9y
QW5kZXJJbmRleC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5k
ZXJJbmRleC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjcwMzcxZmI5MGYyYTFm
ZDE1YzJkZGY2YzRhMzk2YzBmMjM5Y2ViZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFu
ZGVySW5kZXguanMKKysrIC9kZXYvbnVsbApAQCAtMSw3MSArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsKLQotY2xhc3MgT3Bl
cmF0b3JBbmRlckluZGV4ZXIgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwgYWRkcmVz
c1NwYWNlKQotICAgIHsKLSAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1l
OwotICAgICAgICB0aGlzLl9hZGRyZXNzU3BhY2UgPSBhZGRyZXNzU3BhY2U7Ci0gICAgfQotCi0g
ICAgZ2V0IGFkZHJlc3NTcGFjZSgpIHsgcmV0dXJuIHRoaXMuX2FkZHJlc3NTcGFjZTsgfQotICAg
IGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KLQotICAg
IHRvU3RyaW5nKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlw
ZU5hbWV9KiAke3RoaXMuYWRkcmVzc1NwYWNlfSBvcGVyYXRvciZbXSgke3RoaXMuYmFzZVR5cGVO
YW1lfVtdICR7dGhpcy5hZGRyZXNzU3BhY2V9LHVpbnQpYDsKLSAgICB9Ci0KLSAgICBzdGF0aWMg
ZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fZnVuY3Rpb25zKSB7Ci0gICAg
ICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKLQotICAgICAgICAgICAgY29uc3QgdHlwZU5h
bWVzID0gWyAidWludCIsICJpbnQiLCAiZmxvYXQiLCAiYm9vbCIgXS5jb25jYXQoYWxsVmVjdG9y
VHlwZU5hbWVzKCkpOwotICAgICAgICAgICAgY29uc3QgYWRkcmVzc1NwYWNlcyA9IFsgInRocmVh
ZCIsICJ0aHJlYWRncm91cCIsICJkZXZpY2UiLCAiY29uc3RhbnQiIF07Ci0KLSAgICAgICAgICAg
IGZvciAobGV0IGFkZHJlc3NTcGFjZSBvZiBhZGRyZXNzU3BhY2VzKSB7Ci0gICAgICAgICAgICAg
ICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgdHlwZU5hbWVzKQotICAgICAgICAgICAgICAgICAgICB0
aGlzLl9mdW5jdGlvbnMucHVzaChuZXcgT3BlcmF0b3JBbmRlckluZGV4ZXIodHlwZU5hbWUsIGFk
ZHJlc3NTcGFjZSkpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIHJldHVybiB0
aGlzLl9mdW5jdGlvbnM7Ci0gICAgfQotCi0gICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihm
dW5jKQotICAgIHsKLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbcmVmLCBpbmRleF0s
IG5vZGUpID0+IHsKLSAgICAgICAgICAgIHJlZiA9IHJlZi5sb2FkVmFsdWUoKTsKLSAgICAgICAg
ICAgIGlmICghcmVmKQotICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHJhcEVycm9yKG5vZGUu
b3JpZ2luLm9yaWdpblN0cmluZywgIk51bGwgZGVyZWZlcmVuY2UiKTsKLSAgICAgICAgICAgIGlu
ZGV4ID0gaW5kZXgubG9hZFZhbHVlKCk7Ci0gICAgICAgICAgICBpZiAoaW5kZXggPiByZWYubGVu
Z3RoKQotICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHJhcEVycm9yKG5vZGUub3JpZ2luLm9y
aWdpblN0cmluZywgIkFycmF5IGluZGV4ICIgKyBpbmRleCArICIgaXMgb3V0IG9mIGJvdW5kcyBv
ZiAiICsgcmVmKTsKLSAgICAgICAgICAgIHJldHVybiBFUHRyLmJveChyZWYucHRyLnBsdXMoaW5k
ZXggKiBub2RlLmFyZ3VtZW50VHlwZXNbMF0uZWxlbWVudFR5cGUuc2l6ZSkpOwotICAgICAgICB9
OwotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7Ci0gICAgfQotfQpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRleGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDEyZjA2NzgwZjdh
ZDkzMjJkNmM3YmU0NzkwY2Q0NDYxODFmODliNAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRleGVyLmpzCkBAIC0wLDAgKzEs
NTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IK
KyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworInVzZSBz
dHJpY3QiOworCitjbGFzcyBPcGVyYXRvckFuZGVySW5kZXhlciB7CisgICAgY29uc3RydWN0b3Io
YmFzZVR5cGVOYW1lLCBhZGRyZXNzU3BhY2UpCisgICAgeworICAgICAgICB0aGlzLl9iYXNlVHlw
ZU5hbWUgPSBiYXNlVHlwZU5hbWU7CisgICAgICAgIHRoaXMuX2FkZHJlc3NTcGFjZSA9IGFkZHJl
c3NTcGFjZTsKKyAgICB9CisKKyAgICBnZXQgYWRkcmVzc1NwYWNlKCkgeyByZXR1cm4gdGhpcy5f
YWRkcmVzc1NwYWNlOyB9CisgICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jh
c2VUeXBlTmFtZTsgfQorCisgICAgdG9TdHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGBu
YXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0qICR7dGhpcy5hZGRyZXNzU3BhY2V9IG9wZXJhdG9y
JltdKCR7dGhpcy5iYXNlVHlwZU5hbWV9W10gJHt0aGlzLmFkZHJlc3NTcGFjZX0sdWludClgOwor
ICAgIH0KKworICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykKKyAgICB7CisgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3JlZiwgaW5kZXhdLCBub2RlKSA9PiB7CisgICAg
ICAgICAgICByZWYgPSByZWYubG9hZFZhbHVlKCk7CisgICAgICAgICAgICBpZiAoIXJlZikKKyAg
ICAgICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBFcnJvcihub2RlLm9yaWdpbi5vcmlnaW5TdHJp
bmcsICJOdWxsIGRlcmVmZXJlbmNlIik7CisgICAgICAgICAgICBpbmRleCA9IGluZGV4LmxvYWRW
YWx1ZSgpOworICAgICAgICAgICAgaWYgKGluZGV4ID4gcmVmLmxlbmd0aCkKKyAgICAgICAgICAg
ICAgICB0aHJvdyBuZXcgV1RyYXBFcnJvcihub2RlLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJBcnJh
eSBpbmRleCAiICsgaW5kZXggKyAiIGlzIG91dCBvZiBib3VuZHMgb2YgIiArIHJlZik7CisgICAg
ICAgICAgICByZXR1cm4gRVB0ci5ib3gocmVmLnB0ci5wbHVzKGluZGV4ICogbm9kZS5hcmd1bWVu
dFR5cGVzWzBdLmVsZW1lbnRUeXBlLnNpemUpKTsKKyAgICAgICAgfTsKKyAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOworICAgIH0KK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQm9vbC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL09wZXJhdG9yQm9vbC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggNThiYjBlMDliODBiZWUxMDcwODliMWM5ZDIwMGNiYzY4YTVjYjlkMy4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9PcGVyYXRvckJvb2wuanMKKysrIC9kZXYvbnVsbApAQCAtMSw2OCArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
YGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICog
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsK
LQotY2xhc3MgT3BlcmF0b3JCb29sIHsKLSAgICBjb25zdHJ1Y3RvcihiYXNlVHlwZU5hbWUpCi0g
ICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5hbWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAgfQot
Ci0gICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQot
Ci0gICAgdG9TdHJpbmcoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGBuYXRpdmUgb3BlcmF0b3Ig
Ym9vbCgke3RoaXMuYmFzZVR5cGVOYW1lfSlgOwotICAgIH0KLQotICAgIHN0YXRpYyBmdW5jdGlv
bnMoKQotICAgIHsKLSAgICAgICAgLy8gRklYTUU6IFRoZXNlIG9wZXJhdG9ycyBzaG91bGQgYmUg
aW4gdGhlIHN0YW5kYXJkIGxpYnJhcnkgd2hlcmUgcG9zc2libGUuCi0gICAgICAgIGlmICghT3Bl
cmF0b3JCb29sLl9mdW5jdGlvbnMpIHsKLSAgICAgICAgICAgIE9wZXJhdG9yQm9vbC5fZnVuY3Rp
b25zID0gW107Ci0KLSAgICAgICAgICAgIC8vIGJvb2wgaXMgbm90IGluY2x1ZGVkIGJlY2F1c2Ug
dGhpcyBpcyBnZW5lcmF0ZWQgYnkgdGhlIGNvcHkgY29uc3RydWN0b3IuCi0gICAgICAgICAgICAv
LyBGSVhNRTogSW5jbHVkZSBhbGwgbmF0aXZlIHR5cGVzLgotICAgICAgICAgICAgY29uc3QgdHlw
ZU5hbWVzID0gWyAidWNoYXIiLCAidWludCIsICJpbnQiLCAiZmxvYXQiIF0uY29uY2F0KGFsbFZl
Y3RvclR5cGVOYW1lcygpKTsKLQotICAgICAgICAgICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgdHlw
ZU5hbWVzKQotICAgICAgICAgICAgICAgIE9wZXJhdG9yQm9vbC5fZnVuY3Rpb25zLnB1c2gobmV3
IE9wZXJhdG9yQm9vbCh0eXBlTmFtZSkpOwotICAgICAgICB9Ci0gICAgICAgIHJldHVybiBPcGVy
YXRvckJvb2wuX2Z1bmN0aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUltcGxlbWVudGF0
aW9uKGZ1bmMpCi0gICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtyZWZdLCBu
b2RlKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCBzaXplID0gbm9kZS5hcmd1bWVudFR5cGVzWzBd
LnNpemU7Ci0gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpemU7ICsraSkgewotICAg
ICAgICAgICAgICAgIGlmICghIXJlZi5nZXQoaSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVy
biBFUHRyLmJveCh0cnVlKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJldHVybiBFUHRy
LmJveChmYWxzZSk7Ci0gICAgICAgIH0KLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEg
PSB0aGlzOwotICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5qcwppbmRleCA3YjE2MTM5ZTk1YjgxZTJlOGRhODM1
NGJkOGMxNzliMTkwYmFlZmEwLi44MzQ1OTJkMzZmMzQ1N2RmYTg2YjU3NTFiYjcyNjI0NzJhM2Yw
YTJkIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpz
CisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ByZXBhcmUuanMKQEAgLTQwLDIw
ICs0MCwxOSBAQCBsZXQgcHJlcGFyZSA9ICgoKSA9PiB7CiAgICAgICAgIH0KICAgICAgICAgCiAg
ICAgICAgIGZvbGRDb25zdGV4cHJzKHByb2dyYW0pOwotICAgICAgICByZW1vdmVUeXBlQXJndW1l
bnRzKHByb2dyYW0pOwogCiAgICAgICAgIGxldCBuYW1lUmVzb2x2ZXIgPSBjcmVhdGVOYW1lUmVz
b2x2ZXIocHJvZ3JhbSk7CiAgICAgICAgIHJlc29sdmVOYW1lc0luVHlwZXMocHJvZ3JhbSwgbmFt
ZVJlc29sdmVyKTsKICAgICAgICAgcmVzb2x2ZVR5cGVEZWZzSW5UeXBlcyhwcm9ncmFtKTsKICAg
ICAgICAgY2hlY2tSZWN1cnNpdmVUeXBlcyhwcm9ncmFtKTsKICAgICAgICAgc3ludGhlc2l6ZVN0
cnVjdEFjY2Vzc29ycyhwcm9ncmFtKTsKLSAgICAgICAgc3ludGhlc2l6ZU9wZXJhdG9yQm9vbChw
cm9ncmFtKTsKICAgICAgICAgc3ludGhlc2l6ZUVudW1GdW5jdGlvbnMocHJvZ3JhbSk7CiAgICAg
ICAgIHN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoKHByb2dyYW0pOwogICAgICAgICBzeW50
aGVzaXplQ29weUNvbnN0cnVjdG9yT3BlcmF0b3IocHJvZ3JhbSk7CiAgICAgICAgIHN5bnRoZXNp
emVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcihwcm9ncmFtKTsKICAgICAgICAgcmVzb2x2ZU5h
bWVzSW5GdW5jdGlvbnMocHJvZ3JhbSwgbmFtZVJlc29sdmVyKTsKICAgICAgICAgcmVzb2x2ZVR5
cGVEZWZzSW5GdW5jdGlvbnMocHJvZ3JhbSk7CisgICAgICAgIGNoZWNrVHlwZXNXaXRoQXJndW1l
bnRzKHByb2dyYW0pOwogICAgICAgICAKICAgICAgICAgY2hlY2socHJvZ3JhbSk7CiAgICAgICAg
IGNoZWNrTGl0ZXJhbFR5cGVzKHByb2dyYW0pOwpAQCAtNjYsNiArNjUsNyBAQCBsZXQgcHJlcGFy
ZSA9ICgoKSA9PiB7CiAgICAgICAgIGNoZWNrTG9vcHMocHJvZ3JhbSk7CiAgICAgICAgIGNoZWNr
UmVjdXJzaW9uKHByb2dyYW0pOwogICAgICAgICBjaGVja1Byb2dyYW1XcmFwcGVkKHByb2dyYW0p
OworICAgICAgICBjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9ncmFtKTsKICAgICAgICAgZmlu
ZEhpZ2hab21iaWVzKHByb2dyYW0pOwogICAgICAgICBwcm9ncmFtLnZpc2l0KG5ldyBTdHJ1Y3RM
YXlvdXRCdWlsZGVyKCkpOwogICAgICAgICBpbmxpbmUocHJvZ3JhbSk7CmRpZmYgLS1naXQgYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvUHJvZ3JhbS5qcwppbmRleCAwNjYyNWQ5OGZjNDFlNzRjOTNkZWNlODBi
NzBjZTU1YzdhZjc0ZGQ1Li5hYzFkZWZiNGZiYWFhNmU4ZTEzNDI5NzM0Y2NmNDkxNTMzOWJhNTM5
IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzCisr
KyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Byb2dyYW0uanMKQEAgLTQ4LDE5ICs0
OCwyNSBAQCBjbGFzcyBQcm9ncmFtIGV4dGVuZHMgTm9kZSB7CiAgICAgICAgIGlmIChzdGF0ZW1l
bnQgaW5zdGFuY2VvZiBGdW5jKSB7CiAgICAgICAgICAgICBsZXQgYXJyYXkgPSB0aGlzLl9mdW5j
dGlvbnMuZ2V0KHN0YXRlbWVudC5uYW1lKTsKICAgICAgICAgICAgIGlmICghYXJyYXkpCi0gICAg
ICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zLnNldChzdGF0ZW1lbnQubmFtZSwgYXJyYXkgPSBb
XSk7CisgICAgICAgICAgICAgICAgdGhpcy5mdW5jdGlvbnMuc2V0KHN0YXRlbWVudC5uYW1lLCBh
cnJheSA9IFtdKTsKICAgICAgICAgICAgIGFycmF5LnB1c2goc3RhdGVtZW50KTsKLSAgICAgICAg
fSBlbHNlIGlmIChzdGF0ZW1lbnQgaW5zdGFuY2VvZiBUeXBlKQotICAgICAgICAgICAgdGhpcy5f
dHlwZXMuc2V0KHN0YXRlbWVudC5uYW1lLCBzdGF0ZW1lbnQpOwotICAgICAgICBlbHNlCisgICAg
ICAgIH0gZWxzZSBpZiAoc3RhdGVtZW50IGluc3RhbmNlb2YgVHlwZSkgeworICAgICAgICAgICAg
aWYgKHN0YXRlbWVudC5pc05hdGl2ZSAmJiBzdGF0ZW1lbnQudHlwZUFyZ3VtZW50cy5sZW5ndGgg
IT0gMCkgeworICAgICAgICAgICAgICAgIGxldCBhcnJheSA9IHRoaXMudHlwZXMuZ2V0KHN0YXRl
bWVudC5uYW1lKTsKKyAgICAgICAgICAgICAgICBpZiAoIWFycmF5KQorICAgICAgICAgICAgICAg
ICAgICB0aGlzLnR5cGVzLnNldChzdGF0ZW1lbnQubmFtZSwgYXJyYXkgPSBbXSk7CisgICAgICAg
ICAgICAgICAgYXJyYXkucHVzaChzdGF0ZW1lbnQpOworICAgICAgICAgICAgfSBlbHNlCisgICAg
ICAgICAgICAgICAgdGhpcy50eXBlcy5zZXQoc3RhdGVtZW50Lm5hbWUsIHN0YXRlbWVudCk7Cisg
ICAgICAgIH0gZWxzZQogICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTdGF0ZW1lbnQgaXMg
bm90IGEgZnVuY3Rpb24gb3IgdHlwZTogIiArIHN0YXRlbWVudCk7Ci0gICAgICAgIHRoaXMuX3Rv
cExldmVsU3RhdGVtZW50cy5wdXNoKHN0YXRlbWVudCk7Ci0gICAgICAgIHRoaXMuX2dsb2JhbE5h
bWVDb250ZXh0LmFkZChzdGF0ZW1lbnQpOworICAgICAgICB0aGlzLnRvcExldmVsU3RhdGVtZW50
cy5wdXNoKHN0YXRlbWVudCk7CisgICAgICAgIHRoaXMuZ2xvYmFsTmFtZUNvbnRleHQuYWRkKHN0
YXRlbWVudCk7CiAgICAgfQogICAgIAogICAgIHRvU3RyaW5nKCkKICAgICB7Ci0gICAgICAgIGlm
ICghdGhpcy5fdG9wTGV2ZWxTdGF0ZW1lbnRzLmxlbmd0aCkKKyAgICAgICAgaWYgKCF0aGlzLnRv
cExldmVsU3RhdGVtZW50cy5sZW5ndGgpCiAgICAgICAgICAgICByZXR1cm4gIiI7CiAgICAgICAg
IHJldHVybiB0aGlzLl90b3BMZXZlbFN0YXRlbWVudHMuam9pbigiOyIpICsgIjsiOwogICAgIH0K
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1JlbW92ZVR5cGVBcmd1
bWVudHMuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1l
bnRzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5M2RiOWU2NDdjOTIxYzk1NGU4
OTk4Y2UxNjc1ZGU3Y2I2MWYxNDJiLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1JlbW92ZVR5cGVBcmd1
bWVudHMuanMKKysrIC9kZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsKLQotZnVuY3Rpb24gcmVt
b3ZlVHlwZUFyZ3VtZW50cyhwcm9ncmFtKQotewotICAgIGNsYXNzIFJlbW92ZVR5cGVBcmd1bWVu
dHMgZXh0ZW5kcyBWaXNpdG9yIHsKLSAgICAgICAgc3RhdGljIHJlc29sdmVOYW1lQW5kQXJndW1l
bnRzKG5vZGUpCi0gICAgICAgIHsKLSAgICAgICAgICAgIGlmICghbm9kZS50eXBlQXJndW1lbnRz
KQotICAgICAgICAgICAgICAgIHJldHVybiBub2RlLm5hbWU7Ci0KLSAgICAgICAgICAgIHN3aXRj
aCAobm9kZS5uYW1lKSB7Ci0gICAgICAgICAgICBjYXNlICJ2ZWN0b3IiOgotICAgICAgICAgICAg
ICAgIGlmIChub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDIpCi0gICAgICAgICAgICAgICAg
ICAgIHRocm93IG5ldyBXU3ludGF4RXJyb3Iobm9kZS5vcmlnaW5TdHJpbmcsIGAke25vZGUubmFt
ZX0gc2hvdWxkIGhhdmUgMiB0eXBlIGFyZ3VtZW50cywgZ290ICR7bm9kZS50eXBlQXJndW1lbnRz
Lmxlbmd0aH0uYCk7Ci0KLSAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50VHlwZU5hbWUgPSBu
b2RlLnR5cGVBcmd1bWVudHNbMF0ubmFtZTsKLSAgICAgICAgICAgICAgICBjb25zdCBsZW5ndGhW
YWx1ZSA9IG5vZGUudHlwZUFyZ3VtZW50c1sxXS52YWx1ZTsKLQotICAgICAgICAgICAgICAgIGlm
IChWZWN0b3JFbGVtZW50VHlwZXMuaW5kZXhPZihlbGVtZW50VHlwZU5hbWUpIDwgMCkKLSAgICAg
ICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdTeW50YXhFcnJvcihub2RlLm9yaWdpblN0cmluZywg
YCR7ZWxlbWVudFR5cGVOYW1lfSBpcyBub3QgYSB2YWxpZCB2ZWN0b3IgZWxlbWVudCB0eXBlLmAp
OwotICAgICAgICAgICAgICAgIGlmIChWZWN0b3JFbGVtZW50U2l6ZXMuaW5kZXhPZihsZW5ndGhW
YWx1ZSkgPCAwKQotICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1N5bnRheEVycm9yKG5v
ZGUub3JpZ2luU3RyaW5nLCBgJHtsZW5ndGhWYWx1ZX0gaXMgbm90IGEgdmFsaWQgc2l6ZSBmb3Ig
dmVjdG9ycyB3aXRoIGVsZW1lbnQgdHlwZSAke2VsZW1lbnRUeXBlTmFtZX0uYCk7Ci0KLSAgICAg
ICAgICAgICAgICByZXR1cm4gYCR7ZWxlbWVudFR5cGVOYW1lfSR7bGVuZ3RoVmFsdWV9YDsKLSAg
ICAgICAgICAgIC8vIEZJWE1FOiBGdXJ0aGVyIGNhc2VzIGZvciBtYXRyaWNlcywgdGV4dHVyZXMs
IGV0Yy4KLSAgICAgICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICAgICAgaWYgKG5vZGUudHlw
ZUFyZ3VtZW50cy5sZW5ndGgpCi0gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBXU3ludGF4
RXJyb3IoYCR7bm9kZS5uYW1lfSR7YXJndW1lbnRzLmpvaW4oIiwgIil9IGlzIG5vdCBhIHBlcm1p
dHRlZCBnZW5lcmljIHR5cGUgb3IgZnVuY3Rpb25gKTsKLSAgICAgICAgICAgICAgICByZXR1cm4g
bm9kZS5uYW1lOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0KLSAgICAgICAgdmlzaXRUeXBl
UmVmKG5vZGUpCi0gICAgICAgIHsKLSAgICAgICAgICAgIG5vZGUuX25hbWUgPSBSZW1vdmVUeXBl
QXJndW1lbnRzLnJlc29sdmVOYW1lQW5kQXJndW1lbnRzKG5vZGUpOwotICAgICAgICAgICAgbm9k
ZS5fdHlwZUFyZ3VtZW50cyA9IG51bGw7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBwcm9ncmFt
LnZpc2l0KG5ldyBSZW1vdmVUeXBlQXJndW1lbnRzKCkpOwotfQpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU5hbWVzLmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU5hbWVzLmpzCmluZGV4IDJlNDAyYzhkNmMwYTM2MDk4NTYx
ZTAyNzVlZTUzZTc3OGZkMzg0YjguLmI4YjUzMzQyNDU5YWU4MzlhY2Y3ZjA3YzJiYmFlYTk2ZThh
NTRjZGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVO
YW1lcy5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXNvbHZlTmFtZXMu
anMKQEAgLTMxLDggKzMxLDEzIEBAIGZ1bmN0aW9uIGNyZWF0ZU5hbWVSZXNvbHZlcihwcm9ncmFt
KQogCiBmdW5jdGlvbiByZXNvbHZlTmFtZXNJblR5cGVzKHByb2dyYW0sIG5hbWVSZXNvbHZlcikK
IHsKLSAgICBmb3IgKGxldCB0eXBlIG9mIHByb2dyYW0udHlwZXMudmFsdWVzKCkpCi0gICAgICAg
IG5hbWVSZXNvbHZlci5kb1N0YXRlbWVudCh0eXBlKTsKKyAgICBmb3IgKGxldCB0eXBlIG9mIHBy
b2dyYW0udHlwZXMudmFsdWVzKCkpIHsKKyAgICAgICAgaWYgKHR5cGUgaW5zdGFuY2VvZiBBcnJh
eSkgeworICAgICAgICAgICAgZm9yIChsZXQgY29uc3RpdHVlbnRUeXBlIG9mIHR5cGUpCisgICAg
ICAgICAgICAgICAgbmFtZVJlc29sdmVyLmRvU3RhdGVtZW50KGNvbnN0aXR1ZW50VHlwZSk7Cisg
ICAgICAgIH0gZWxzZQorICAgICAgICAgICAgbmFtZVJlc29sdmVyLmRvU3RhdGVtZW50KHR5cGUp
OworICAgIH0KIH0KIAogZnVuY3Rpb24gcmVzb2x2ZU5hbWVzSW5GdW5jdGlvbnMocHJvZ3JhbSwg
bmFtZVJlc29sdmVyKQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UmVzb2x2ZU92ZXJsb2FkSW1wbC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jl
c29sdmVPdmVybG9hZEltcGwuanMKaW5kZXggZDBmMWUzNGQ2MTdlYTI3MjY2NDY3YzE2MTcwNzE1
NDY2NGE0NDlhZC4uN2EwOTdiY2E0NzBlY2I1NmE2ZWUzZGVmNTJhYWY1Zjc4YjUwNjUxMSAxMDA2
NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU92ZXJsb2FkSW1w
bC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXNvbHZlT3ZlcmxvYWRJ
bXBsLmpzCkBAIC0xMDAsMyArMTAwLDI4IEBAIGZ1bmN0aW9uIHJlc29sdmVPdmVybG9hZEltcGwo
ZnVuY3Rpb25zLCBhcmd1bWVudFR5cGVzLCByZXR1cm5UeXBlLCBhbGxvd0VudHJ5UG9pCiAgICAg
CiAgICAgcmV0dXJuIHtmYWlsdXJlczogYW1iaWd1aXR5TGlzdC5tYXAob3ZlcmxvYWQgPT4gbmV3
IE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUob3ZlcmxvYWQuZnVuYywgbWVzc2FnZSkpfTsKIH0K
KworZnVuY3Rpb24gcmVzb2x2ZVR5cGVPdmVybG9hZEltcGwodHlwZXMsIHR5cGVBcmd1bWVudHMp
Cit7CisgICAgaWYgKCF0eXBlcykKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJOdWxsIHR5cGVz
OyB0aGF0IHNob3VsZCBoYXZlIGJlZW4gY2F1Z2h0IGJ5IHRoZSBjYWxsZXIuIik7CisKKyAgICBs
ZXQgZmFpbHVyZXMgPSBbXTsKKyAgICBsZXQgc3VjY2Vzc2VzID0gW107CisgICAgZm9yIChsZXQg
dHlwZSBvZiB0eXBlcykgeworICAgICAgICBsZXQgb3ZlcmxvYWQgPSBpbmZlclR5cGVzRm9yVHlw
ZUFyZ3VtZW50cyh0eXBlLCB0eXBlQXJndW1lbnRzKTsKKyAgICAgICAgaWYgKG92ZXJsb2FkLmZh
aWx1cmUpCisgICAgICAgICAgICBmYWlsdXJlcy5wdXNoKG92ZXJsb2FkLmZhaWx1cmUpOworICAg
ICAgICBlbHNlCisgICAgICAgICAgICBzdWNjZXNzZXMucHVzaChvdmVybG9hZCk7CisgICAgfQor
ICAgIAorICAgIGlmICghc3VjY2Vzc2VzLmxlbmd0aCkKKyAgICAgICAgcmV0dXJuIHtmYWlsdXJl
czogZmFpbHVyZXN9OworICAgIAorICAgIGlmIChzdWNjZXNzZXMubGVuZ3RoID09IDEpCisgICAg
ICAgIHJldHVybiBzdWNjZXNzZXNbMF07CisgICAgCisgICAgbGV0IG1lc3NhZ2UgPSAiQW1iaWd1
b3VzIG92ZXJsb2FkIC0gdHlwZXMgbXV0dWFsbHkgYXBwbGljYWJsZSI7CisgICAgcmV0dXJuIHtm
YWlsdXJlczogc3VjY2Vzc2VzLm1hcChvdmVybG9hZCA9PiBuZXcgVHlwZU92ZXJsb2FkUmVzb2x1
dGlvbkZhaWx1cmUob3ZlcmxvYWQudHlwZSwgbWVzc2FnZSkpfTsKK30KZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVUeXBlRGVmcy5qcyBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVUeXBlRGVmcy5qcwppbmRleCA5MTQzZjhlMWUw
MGEwNDk4MTRiOTBhMzQ1YzVhZjQ1MTQ1OWQ4NTc0Li4wNTc0YmVjZDU1MzE1MDk0NzhhMmRlZmRj
MmZlN2M2OGU2MWMzZDM1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9SZXNvbHZlVHlwZURlZnMuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UmVzb2x2ZVR5cGVEZWZzLmpzCkBAIC0yNyw4ICsyNywxMyBAQAogZnVuY3Rpb24gcmVzb2x2ZVR5
cGVEZWZzSW5UeXBlcyhwcm9ncmFtKQogewogICAgIGxldCByZXNvbHZlciA9IG5ldyBUeXBlRGVm
UmVzb2x2ZXIoKTsKLSAgICBmb3IgKGxldCB0eXBlIG9mIHByb2dyYW0udHlwZXMudmFsdWVzKCkp
Ci0gICAgICAgIHR5cGUudmlzaXQocmVzb2x2ZXIpOworICAgIGZvciAobGV0IHR5cGUgb2YgcHJv
Z3JhbS50eXBlcy52YWx1ZXMoKSkgeworICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9mIEFycmF5
KSB7CisgICAgICAgICAgICBmb3IgKGxldCBjb25zdGl0dWVudFR5cGUgb2YgdHlwZSkKKyAgICAg
ICAgICAgICAgICBjb25zdGl0dWVudFR5cGUudmlzaXQocmVzb2x2ZXIpOworICAgICAgICB9IGVs
c2UKKyAgICAgICAgICAgIHR5cGUudmlzaXQocmVzb2x2ZXIpOworICAgIH0KIH0KIAogZnVuY3Rp
b24gcmVzb2x2ZVR5cGVEZWZzSW5GdW5jdGlvbnMocHJvZ3JhbSkKZGlmZiAtLWdpdCBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvUmV3cml0ZXIuanMKaW5kZXggZDU0N2QyMDNmMGRiZjhjYWJlZTQzNzc4MDNi
ZDViMDg0ZTk4MDdiYy4uYmQ4M2MzN2Q5YzQ3NzcxN2UzNTIzNzI4ZDE1ZGY0Mjc5MGRhMWIyZiAx
MDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanMKKysr
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanMKQEAgLTk3LDcgKzk3
LDcgQEAgY2xhc3MgUmV3cml0ZXIgewogICAgIAogICAgIHZpc2l0VHlwZVJlZihub2RlKQogICAg
IHsKLSAgICAgICAgbGV0IHJlc3VsdCA9IG5ldyBUeXBlUmVmKG5vZGUub3JpZ2luLCBub2RlLm5h
bWUpOworICAgICAgICBsZXQgcmVzdWx0ID0gbmV3IFR5cGVSZWYobm9kZS5vcmlnaW4sIG5vZGUu
bmFtZSwgbm9kZS50eXBlQXJndW1lbnRzLm1hcChhcmd1bWVudCA9PiBhcmd1bWVudC52aXNpdCh0
aGlzKSkpOwogICAgICAgICBpZiAobm9kZS50eXBlKQogICAgICAgICAgICAgcmVzdWx0LnR5cGUg
PSBOb2RlLnZpc2l0KG5vZGUudHlwZSwgdGhpcyk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CkBA
IC0zODIsOSArMzgyLDE0IEBAIGNsYXNzIFJld3JpdGVyIHsKIAogICAgIHZpc2l0VmVjdG9yVHlw
ZShub2RlKQogICAgIHsKLSAgICAgICAgY29uc3QgdmVjVHlwZSA9IG5ldyBWZWN0b3JUeXBlKG5v
ZGUub3JpZ2luLCBub2RlLm5hbWUpOwotICAgICAgICB2ZWNUeXBlLl9lbGVtZW50VHlwZSA9IG5v
ZGUuZWxlbWVudFR5cGUudmlzaXQodGhpcyk7CisgICAgICAgIGNvbnN0IHZlY1R5cGUgPSBuZXcg
VmVjdG9yVHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lLCBub2RlLnR5cGVBcmd1bWVudHMubWFw
KGFyZ3VtZW50ID0+IGFyZ3VtZW50LnZpc2l0KHRoaXMpKSk7CiAgICAgICAgIHJldHVybiB2ZWNU
eXBlOwogICAgIH0KKworICAgIHZpc2l0TWF0cml4VHlwZShub2RlKQorICAgIHsKKyAgICAgICAg
Y29uc3QgbWF0VHlwZSA9IG5ldyBNYXRyaXhUeXBlKG5vZGUub3JpZ2luLCBub2RlLm5hbWUsIG5v
ZGUudHlwZUFyZ3VtZW50cy5tYXAoYXJndW1lbnQgPT4gYXJndW1lbnQudmlzaXQodGhpcykpKTsK
KyAgICAgICAgcmV0dXJuIG1hdFR5cGU7CisgICAgfQogfQogCmRpZmYgLS1naXQgYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TUElSVi5odG1sIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvU1BJUlYuaHRtbAppbmRleCBjN2IzOTQwZjJiMTFiZDg5NjE0ZjE0YTliNTJjNDdh
NTYxNjZhYjE0Li4yNjA2ZDNmZGJhMjRhNDZmMTQ2ZmI1OWIwY2ZmY2I2Y2NiN2FiYjU3IDEwMDY0
NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TUElSVi5odG1sCisrKyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1NQSVJWLmh0bWwKQEAgLTI5LDEyICsyOSwxMSBA
QCB0ZCB7CiAgICAgPHNjcmlwdCBzcmM9IkJsb2NrLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iQm9vbExpdGVyYWwuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJCcmVhay5q
cyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9IkJ1aWx0aW5NYXRyaXhHZXR0ZXIuanMiPjwv
c2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJCdWlsdGluTWF0cml4U2V0dGVyLmpzIj48L3Njcmlw
dD4KICAgICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcyI+PC9zY3Jp
cHQ+CiAgICAgPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9yU2V0dGVyLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4R2V0dGVyLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQgc3JjPSJDYWxsRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlw
dCBzcmM9IkNhbGxGdW5jdGlvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNr
LmpzIj48L3NjcmlwdD4KQEAgLTQzLDYgKzQyLDcgQEAgdGQgewogICAgIDxzY3JpcHQgc3JjPSJD
aGVja1JlY3Vyc2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNrUmVjdXJz
aXZlVHlwZXMuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJDaGVja1JldHVybnMuanMi
Pjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJDaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcyI+
PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNrVW5yZWFjaGFibGVDb2RlLmpzIj48L3Nj
cmlwdD4KICAgICA8c2NyaXB0IHNyYz0iQ2hlY2tXcmFwcGVkLmpzIj48L3NjcmlwdD4KICAgICA8
c2NyaXB0IHNyYz0iQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CkBAIC05NSw2ICs5NSw3IEBAIHRkIHsK
ICAgICA8c2NyaXB0IHNyYz0iTG9vcENoZWNrZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQg
c3JjPSJNYWtlQXJyYXlSZWZFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNy
Yz0iTWFrZVB0ckV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJNYXRy
aXhUeXBlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTmFtZUNvbnRleHQuanMiPjwv
c2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJOYW1lRmluZGVyLmpzIj48L3NjcmlwdD4KICAgICA8
c2NyaXB0IHNyYz0iTmFtZVJlc29sdmVyLmpzIj48L3NjcmlwdD4KQEAgLTEwMiw5ICsxMDMsOCBA
QCB0ZCB7CiAgICAgPHNjcmlwdCBzcmM9Ik5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMiPjwv
c2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJOdWxsTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiAgICAg
PHNjcmlwdCBzcmM9Ik51bGxUeXBlLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iT3Bl
cmF0b3JBbmRlckluZGV4LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JB
bmRlckluZGV4ZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFycmF5
UmVmTGVuZ3RoLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JCb29sLmpz
Ij48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iT3JpZ2luS2luZC5qcyI+PC9zY3JpcHQ+CiAg
ICAgPHNjcmlwdCBzcmM9Ik92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQgc3JjPSJQYXJzZS5qcyI+PC9zY3JpcHQ+CkBAIC0xMTYsNyArMTE2LDYgQEAg
dGQgewogICAgIDxzY3JpcHQgc3JjPSJSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzIj48L3Nj
cmlwdD4KICAgICA8c2NyaXB0IHNyYz0iUmVjdXJzaW9uQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiAg
ICAgPHNjcmlwdCBzcmM9IlJlY3Vyc2l2ZVR5cGVDaGVja2VyLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iUmVtb3ZlVHlwZUFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlw
dCBzcmM9IlJlc29sdmVOYW1lcy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlJlc29s
dmVPdmVybG9hZEltcGwuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJSZXNvbHZlUHJv
cGVydGllcy5qcyI+PC9zY3JpcHQ+CkBAIC0xMzMsMTMgKzEzMiwxMyBAQCB0ZCB7CiAgICAgPHNj
cmlwdCBzcmM9IlN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KICAg
ICA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogICAg
IDxzY3JpcHQgc3JjPSJTeW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzIj48L3NjcmlwdD4KLSAg
ICA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiAgICAg
PHNjcmlwdCBzcmM9IlN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3Jp
cHQ+CiAgICAgPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRv
ci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlRyYXBTdGF0ZW1lbnQuanMiPjwvc2Ny
aXB0PgogICAgIDxzY3JpcHQgc3JjPSJUeXBlRGVmLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iVHlwZURlZlJlc29sdmVyLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlw
ZVJlZi5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9IlR5cGVPdmVybG9hZFJlc29sdXRp
b25GYWlsdXJlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlwZWRWYWx1ZS5qcyI+
PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlVpbnRMaXRlcmFsLmpzIj48L3NjcmlwdD4KICAg
ICA8c2NyaXB0IHNyYz0iVWludExpdGVyYWxUeXBlLmpzIj48L3NjcmlwdD4KZGlmZiAtLWdpdCBh
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFyeS5qcyBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFyeS5qcwppbmRleCAwNmIyNTFj
ZjBhMjQ4MTljYWI1MDY1ZWY1NDQ1ZTE0ODlkNWVhYWZjLi5mMTgzMTY3Y2NhMzQ1ZGQzZWI5NTM3
YjVjNmQyNDdiMWUzZGQyOTYzIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9TdGFuZGFyZExpYnJhcnkuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvU3RhbmRhcmRMaWJyYXJ5LmpzCkBAIC0zMyw1MiArMzMsNjQzIEBAIGxldCBzdGFuZGFyZExp
YnJhcnkgPSBgCiBuYXRpdmUgdHlwZWRlZiB2b2lkOwogbmF0aXZlIHR5cGVkZWYgYm9vbDsKIG5h
dGl2ZSB0eXBlZGVmIHVjaGFyOworbmF0aXZlIHR5cGVkZWYgdXNob3J0OwogbmF0aXZlIHR5cGVk
ZWYgdWludDsKK25hdGl2ZSB0eXBlZGVmIGNoYXI7CituYXRpdmUgdHlwZWRlZiBzaG9ydDsKIG5h
dGl2ZSB0eXBlZGVmIGludDsKK25hdGl2ZSB0eXBlZGVmIGhhbGY7CiBuYXRpdmUgdHlwZWRlZiBm
bG9hdDsKK25hdGl2ZSB0eXBlZGVmIGF0b21pY19pbnQ7CituYXRpdmUgdHlwZWRlZiBhdG9taWNf
dWludDsKIAotLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciB0aGVzZSB0eXBlcyB0byBJbnRyaW5z
aWNzLmpzCi0vLyBuYXRpdmUgdHlwZWRlZiB1c2hvcnQ7Ci0vLyBuYXRpdmUgdHlwZWRlZiBjaGFy
OwotLy8gbmF0aXZlIHR5cGVkZWYgc2hvcnQ7Ci0vLyBuYXRpdmUgdHlwZWRlZiBoYWxmOwotLy8g
bmF0aXZlIHR5cGVkZWYgYXRvbWljX2ludDsKLS8vIG5hdGl2ZSB0eXBlZGVmIGF0b21pY191aW50
OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGJvb2wsIDI+OwordHlwZWRlZiBib29sMiA9IHZlY3Rv
cjxib29sLCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjxib29sLCAzPjsKK3R5cGVkZWYgYm9v
bDMgPSB2ZWN0b3I8Ym9vbCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8Ym9vbCwgND47Cit0
eXBlZGVmIGJvb2w0ID0gdmVjdG9yPGJvb2wsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVj
aGFyLCAyPjsKK3R5cGVkZWYgdWNoYXIyID0gdmVjdG9yPHVjaGFyLCAyPjsKK25hdGl2ZSB0eXBl
ZGVmIHZlY3Rvcjx1Y2hhciwgMz47Cit0eXBlZGVmIHVjaGFyMyA9IHZlY3Rvcjx1Y2hhciwgMz47
CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8dWNoYXIsIDQ+OwordHlwZWRlZiB1Y2hhcjQgPSB2ZWN0
b3I8dWNoYXIsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVzaG9ydCwgMj47Cit0eXBlZGVm
IHVzaG9ydDIgPSB2ZWN0b3I8dXNob3J0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjx1c2hv
cnQsIDM+OwordHlwZWRlZiB1c2hvcnQzID0gdmVjdG9yPHVzaG9ydCwgMz47CituYXRpdmUgdHlw
ZWRlZiB2ZWN0b3I8dXNob3J0LCA0PjsKK3R5cGVkZWYgdXNob3J0NCA9IHZlY3Rvcjx1c2hvcnQs
IDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVpbnQsIDI+OwordHlwZWRlZiB1aW50MiA9IHZl
Y3Rvcjx1aW50LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjx1aW50LCAzPjsKK3R5cGVkZWYg
dWludDMgPSB2ZWN0b3I8dWludCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8dWludCwgND47
Cit0eXBlZGVmIHVpbnQ0ID0gdmVjdG9yPHVpbnQsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9y
PGNoYXIsIDI+OwordHlwZWRlZiBjaGFyMiA9IHZlY3RvcjxjaGFyLCAyPjsKK25hdGl2ZSB0eXBl
ZGVmIHZlY3RvcjxjaGFyLCAzPjsKK3R5cGVkZWYgY2hhcjMgPSB2ZWN0b3I8Y2hhciwgMz47Citu
YXRpdmUgdHlwZWRlZiB2ZWN0b3I8Y2hhciwgND47Cit0eXBlZGVmIGNoYXI0ID0gdmVjdG9yPGNo
YXIsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHNob3J0LCAyPjsKK3R5cGVkZWYgc2hvcnQy
ID0gdmVjdG9yPHNob3J0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxzaG9ydCwgMz47Cit0
eXBlZGVmIHNob3J0MyA9IHZlY3RvcjxzaG9ydCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8
c2hvcnQsIDQ+OwordHlwZWRlZiBzaG9ydDQgPSB2ZWN0b3I8c2hvcnQsIDQ+OworbmF0aXZlIHR5
cGVkZWYgdmVjdG9yPGludCwgMj47Cit0eXBlZGVmIGludDIgPSB2ZWN0b3I8aW50LCAyPjsKK25h
dGl2ZSB0eXBlZGVmIHZlY3RvcjxpbnQsIDM+OwordHlwZWRlZiBpbnQzID0gdmVjdG9yPGludCwg
Mz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8aW50LCA0PjsKK3R5cGVkZWYgaW50NCA9IHZlY3Rv
cjxpbnQsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGhhbGYsIDI+OwordHlwZWRlZiBoYWxm
MiA9IHZlY3RvcjxoYWxmLCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxoYWxmLCAzPjsKK3R5
cGVkZWYgaGFsZjMgPSB2ZWN0b3I8aGFsZiwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8aGFs
ZiwgND47Cit0eXBlZGVmIGhhbGY0ID0gdmVjdG9yPGhhbGYsIDQ+OworbmF0aXZlIHR5cGVkZWYg
dmVjdG9yPGZsb2F0LCAyPjsKK3R5cGVkZWYgZmxvYXQyID0gdmVjdG9yPGZsb2F0LCAyPjsKK25h
dGl2ZSB0eXBlZGVmIHZlY3RvcjxmbG9hdCwgMz47Cit0eXBlZGVmIGZsb2F0MyA9IHZlY3Rvcjxm
bG9hdCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8ZmxvYXQsIDQ+OwordHlwZWRlZiBmbG9h
dDQgPSB2ZWN0b3I8ZmxvYXQsIDQ+OwogCi1uYXRpdmUgb3BlcmF0b3IgaW50KHVpbnQpOwotbmF0
aXZlIG9wZXJhdG9yIGludCh1Y2hhcik7Ci1uYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKLW5h
dGl2ZSBvcGVyYXRvciB1aW50KGludCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWludCh1Y2hhcik7Ci1u
YXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWNoYXIoaW50KTsK
K25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCAyPjsKK3R5cGVkZWYgaGFsZjJ4MiA9IG1h
dHJpeDxoYWxmLCAyLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCAzPjsKK3R5
cGVkZWYgaGFsZjJ4MyA9IG1hdHJpeDxoYWxmLCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJp
eDxoYWxmLCAyLCA0PjsKK3R5cGVkZWYgaGFsZjJ4NCA9IG1hdHJpeDxoYWxmLCAyLCA0PjsKK25h
dGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCAyPjsKK3R5cGVkZWYgaGFsZjN4MiA9IG1hdHJp
eDxoYWxmLCAzLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCAzPjsKK3R5cGVk
ZWYgaGFsZjN4MyA9IG1hdHJpeDxoYWxmLCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxo
YWxmLCAzLCA0PjsKK3R5cGVkZWYgaGFsZjN4NCA9IG1hdHJpeDxoYWxmLCAzLCA0PjsKK25hdGl2
ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCAyPjsKK3R5cGVkZWYgaGFsZjR4MiA9IG1hdHJpeDxo
YWxmLCA0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCAzPjsKK3R5cGVkZWYg
aGFsZjR4MyA9IG1hdHJpeDxoYWxmLCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxm
LCA0LCA0PjsKK3R5cGVkZWYgaGFsZjR4NCA9IG1hdHJpeDxoYWxmLCA0LCA0PjsKK25hdGl2ZSB0
eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgMj47Cit0eXBlZGVmIGZsb2F0MngyID0gbWF0cml4PGZs
b2F0LCAyLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgMz47Cit0eXBlZGVm
IGZsb2F0MngzID0gbWF0cml4PGZsb2F0LCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxm
bG9hdCwgMiwgND47Cit0eXBlZGVmIGZsb2F0Mng0ID0gbWF0cml4PGZsb2F0LCAyLCA0PjsKK25h
dGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgMj47Cit0eXBlZGVmIGZsb2F0M3gyID0gbWF0
cml4PGZsb2F0LCAzLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgMz47Cit0
eXBlZGVmIGZsb2F0M3gzID0gbWF0cml4PGZsb2F0LCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1h
dHJpeDxmbG9hdCwgMywgND47Cit0eXBlZGVmIGZsb2F0M3g0ID0gbWF0cml4PGZsb2F0LCAzLCA0
PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgNCwgMj47Cit0eXBlZGVmIGZsb2F0NHgy
ID0gbWF0cml4PGZsb2F0LCA0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgNCwg
Mz47Cit0eXBlZGVmIGZsb2F0NHgzID0gbWF0cml4PGZsb2F0LCA0LCAzPjsKK25hdGl2ZSB0eXBl
ZGVmIG1hdHJpeDxmbG9hdCwgNCwgND47Cit0eXBlZGVmIGZsb2F0NHg0ID0gbWF0cml4PGZsb2F0
LCA0LCA0PjsKKworbmF0aXZlIHR5cGVkZWYgc2FtcGxlcjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUxRDxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxib29sMj47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMUQ8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGJvb2w0PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MUQ8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1Y2hhcjM+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTFEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1c2hvcnQ0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1
aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dWludDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTFEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxjaGFyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxRDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Y2hh
cjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8c2hvcnQyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxRDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHNo
b3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxpbnQzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxRDxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxoYWxmPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MUQ8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGhhbGY0PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUxRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8ZmxvYXQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTFEPGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxib29sPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGJv
b2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTFEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVjaGFyMj47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMUQ8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVzaG9ydD47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8dXNob3J0ND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTFEPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVpbnQzPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNo
YXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMUQ8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8Y2hhcjQ+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHNob3J0Mz47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MUQ8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGludDI+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMUQ8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxpbnQ0PjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aGFsZjM+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMUQ8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8
ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8ZmxvYXQyPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTFEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxmbG9h
dDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbD47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMURBcnJheTxib29sMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxi
b29sMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxib29sND47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMURBcnJheTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJh
eTx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWNoYXIzPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MURBcnJheTx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dXNob3J0Mj47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8
dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1aW50Mj47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMURBcnJheTx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJh
eTx1aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxREFycmF5PGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFy
cmF5PGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGNoYXI0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUx
REFycmF5PHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxzaG9ydDM+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxREFycmF5PGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxpbnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTFEQXJyYXk8aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxREFycmF5PGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGhhbGY0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxm
bG9hdDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8ZmxvYXQ0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUx
REFycmF5PGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Ym9vbDM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxib29sND47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUxREFycmF5PHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8
dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWNoYXIzPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEQXJyYXk8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dXNo
b3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydDM+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEQXJyYXk8dWludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVpbnQy
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWludDM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTx1aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFy
cmF5PGNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxjaGFyMj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEQXJyYXk8Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxzaG9y
dD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHNob3J0Mj47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxREFycmF5PHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUx
REFycmF5PHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGludD47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGludDI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMURBcnJheTxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aW50
ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGhhbGY+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFy
cmF5PGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aGFsZjQ+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUxREFycmF5PGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGZs
b2F0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGZsb2F0ND47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMkQ8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Ym9vbDI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUyRDxib29sND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWNoYXI+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEPHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWNoYXIz
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEPHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dXNob3J0Mj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8
dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWludD47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkQ8dWludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVpbnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8
Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxjaGFyND47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHNo
b3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUyRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGludD47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aW50
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMkQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aGFsZjI+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEPGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxoYWxmND47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTJEPGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8ZmxvYXQzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUyRDxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9v
bD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxib29sMj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUyRDxib29sMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxib29sND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUyRDx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWNoYXIzPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
RDx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dXNob3J0Mj47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyRDx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJE
PHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWludD47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUyRDx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1aW50
Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1aW50ND47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUyRDxjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGNoYXIyPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEPGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHNob3J0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxz
aG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8c2hvcnQ0PjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEPGludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxpbnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkQ8aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxoYWxmPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGhh
bGYzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGZsb2F0Mj47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMkQ8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2w+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEQXJyYXk8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Ym9vbDQ+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEQXJyYXk8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVj
aGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEQXJyYXk8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFy
cmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dXNob3J0Mz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyREFycmF5PHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWludDI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWludDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEQXJyYXk8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hh
cj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxjaGFyMj47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkRBcnJheTxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxj
aGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxzaG9ydD47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMkRBcnJheTxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJy
YXk8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHNob3J0ND47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxpbnQzPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxoYWxmMj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkRBcnJheTxoYWxmND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdD47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEQXJyYXk8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGZsb2F0
ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGJvb2w+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMkRBcnJheTxib29sMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFy
cmF5PGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8Ym9vbDQ+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyREFycmF5PHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVj
aGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVjaGFyND47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUyREFycmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1c2hv
cnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dXNob3J0ND47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MkRBcnJheTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVpbnQzPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dWludDQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkRBcnJheTxjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8
Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxjaGFyMz47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEQXJyYXk8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxzaG9ydDI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxzaG9ydDM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMkRBcnJheTxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTxpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxpbnQyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUyREFycmF5PGludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxoYWxmPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkRBcnJheTxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5
PGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkRBcnJheTxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxmbG9h
dDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGJvb2w+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTNEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxib29sMz47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlM0Q8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVjaGFy
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTNEPHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWNoYXI0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUzRDx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVz
aG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVzaG9ydDM+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTNEPHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVpbnQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUz
RDx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWludDQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTNEPGNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGNoYXIyPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8
Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUzRDxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHNob3J0Mz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUz
RDxpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGludDI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTNEPGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGludDQ+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTNEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGhhbGYy
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlM0Q8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGZsb2F0PjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUzRDxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGZsb2F0
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTNEPGJvb2w+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Ym9vbDI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
M0Q8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWNoYXI+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlM0Q8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVj
aGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlM0Q8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVzaG9y
dDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dXNob3J0Mz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUzRDx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWludDI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlM0Q8dWludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWludDQ+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUz
RDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxjaGFyMz47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUzRDxjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9y
dD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlM0Q8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHNob3J0ND47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlM0Q8aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxpbnQzPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTNEPGludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFs
Zj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUzRDxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxoYWxmND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUzRDxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8ZmxvYXQzPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3Vi
ZTxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGJvb2wyPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmVDdWJlPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGJvb2w0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmVDdWJlPHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1Y2hhcjM+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmVDdWJlPHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1c2hvcnQyPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZUN1YmU8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1aW50PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJl
PHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVpbnQ0PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmVDdWJlPGNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Y2hhcjI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZUN1YmU8Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVD
dWJlPHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxzaG9ydDQ+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZUN1YmU8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGlu
dDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aW50Mz47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlQ3ViZTxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGhhbGY+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1
YmU8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aGFsZjQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZUN1YmU8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Zmxv
YXQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGZsb2F0Mz47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlQ3ViZTxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoMkQ8Zmxv
YXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoMkQ8aGFsZj47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmVEZXB0aDJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZURlcHRo
MkQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlRGVwdGgyREFycmF5PGZsb2F0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVEZXB0aDJEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmVEZXB0aDJEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVw
dGgyREFycmF5PGhhbGY+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoQ3ViZTxmbG9hdD47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlRGVwdGhDdWJlPGhhbGY+OworCituYXRpdmUgb3BlcmF0
b3IgdWNoYXIodXNob3J0KTsKIG5hdGl2ZSBvcGVyYXRvciB1Y2hhcih1aW50KTsKK25hdGl2ZSBv
cGVyYXRvciB1Y2hhcihjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciB1Y2hhcihzaG9ydCk7CituYXRp
dmUgb3BlcmF0b3IgdWNoYXIoaW50KTsKK25hdGl2ZSBvcGVyYXRvciB1Y2hhcihoYWxmKTsKIG5h
dGl2ZSBvcGVyYXRvciB1Y2hhcihmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KTsK
LW5hdGl2ZSBvcGVyYXRvciBmbG9hdCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQodWNo
YXIpOworbmF0aXZlIG9wZXJhdG9yIHVzaG9ydCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hv
cnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRv
ciB1c2hvcnQoaW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQoaGFsZik7CituYXRpdmUgb3Bl
cmF0b3IgdXNob3J0KGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KHVjaGFyKTsKK25hdGl2
ZSBvcGVyYXRvciB1aW50KHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdWludChjaGFyKTsKK25h
dGl2ZSBvcGVyYXRvciB1aW50KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGludCk7Citu
YXRpdmUgb3BlcmF0b3IgdWludChoYWxmKTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGZsb2F0KTsK
K25hdGl2ZSBvcGVyYXRvciBjaGFyKHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKHVzaG9y
dCk7CituYXRpdmUgb3BlcmF0b3IgY2hhcih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKHNo
b3J0KTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKGludCk7CituYXRpdmUgb3BlcmF0b3IgY2hhciho
YWxmKTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciBzaG9y
dCh1Y2hhcik7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQodXNob3J0KTsKK25hdGl2ZSBvcGVyYXRv
ciBzaG9ydCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydChjaGFyKTsKK25hdGl2ZSBvcGVy
YXRvciBzaG9ydChpbnQpOworbmF0aXZlIG9wZXJhdG9yIHNob3J0KGhhbGYpOworbmF0aXZlIG9w
ZXJhdG9yIHNob3J0KGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodWNoYXIpOworbmF0aXZl
IG9wZXJhdG9yIGludCh1c2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGludCh1aW50KTsKK25hdGl2
ZSBvcGVyYXRvciBpbnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgaW50KHNob3J0KTsKK25hdGl2
ZSBvcGVyYXRvciBpbnQoaGFsZik7CituYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKK25hdGl2
ZSBvcGVyYXRvciBoYWxmKHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKHVzaG9ydCk7Citu
YXRpdmUgb3BlcmF0b3IgaGFsZih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKGNoYXIpOwor
bmF0aXZlIG9wZXJhdG9yIGhhbGYoc2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGhhbGYoaW50KTsK
K25hdGl2ZSBvcGVyYXRvciBoYWxmKGZsb2F0KTsKIG5hdGl2ZSBvcGVyYXRvciBmbG9hdCh1Y2hh
cik7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQodXNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBmbG9h
dCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBmbG9hdChjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBm
bG9hdChzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KTsKK25hdGl2ZSBvcGVyYXRv
ciBmbG9hdChoYWxmKTsKKworb3BlcmF0b3IgYm9vbCh1Y2hhciB4KSB7CisgICAgcmV0dXJuIHgg
IT0gMDsKK30KK29wZXJhdG9yIGJvb2wodXNob3J0IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOwor
fQorb3BlcmF0b3IgYm9vbCh1aW50IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0
b3IgYm9vbChjaGFyIHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChz
aG9ydCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woaW50IHgpIHsK
KyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChoYWxmIHgpIHsKKyAgICByZXR1
cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChmbG9hdCB4KSB7CisgICAgcmV0dXJuIHggIT0g
MDsKK30KKworbmF0aXZlIG9wZXJhdG9yIGludChhdG9taWNfaW50KTsKK25hdGl2ZSBvcGVyYXRv
ciB1aW50KGF0b21pY191aW50KTsKIAorbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShib29sLCBib29s
KTsKK2Jvb2wgb3BlcmF0b3ImKGJvb2wgYSwgYm9vbCBiKSB7CisgICAgcmV0dXJuIGEgJiYgYjsK
K30KK2Jvb2wgb3BlcmF0b3J8KGJvb2wgYSwgYm9vbCBiKSB7CisgICAgcmV0dXJuIGEgfHwgYjsK
K30KK2Jvb2wgb3BlcmF0b3JeKGJvb2wgYSwgYm9vbCBiKSB7CisgICAgaWYgKGEpCisgICAgICAg
IHJldHVybiAhYjsKKyAgICByZXR1cm4gYjsKK30KK2Jvb2wgb3BlcmF0b3J+KGJvb2wgdmFsdWUp
IHsKKyAgICByZXR1cm4gIXZhbHVlOworfQogbmF0aXZlIGludCBvcGVyYXRvcisoaW50LCBpbnQp
OwotbmF0aXZlIHVpbnQgb3BlcmF0b3IrKHVpbnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3IrKHVj
aGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgKyB1aW50KGIpKTsgfQotbmF0
aXZlIGZsb2F0IG9wZXJhdG9yKyhmbG9hdCwgZmxvYXQpOwotaW50IG9wZXJhdG9yKysoaW50IHZh
bHVlKSB7IHJldHVybiB2YWx1ZSArIDE7IH0KLXVpbnQgb3BlcmF0b3IrKyh1aW50IHZhbHVlKSB7
IHJldHVybiB2YWx1ZSArIDE7IH0KLXVjaGFyIG9wZXJhdG9yKysodWNoYXIgdmFsdWUpIHsgcmV0
dXJuIHZhbHVlICsgMTsgfQogbmF0aXZlIGludCBvcGVyYXRvci0oaW50LCBpbnQpOwotbmF0aXZl
IHVpbnQgb3BlcmF0b3ItKHVpbnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3ItKHVjaGFyIGEsIHVj
aGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgLSB1aW50KGIpKTsgfQotbmF0aXZlIGZsb2F0
IG9wZXJhdG9yLShmbG9hdCwgZmxvYXQpOwotaW50IG9wZXJhdG9yLS0oaW50IHZhbHVlKSB7IHJl
dHVybiB2YWx1ZSAtIDE7IH0KLXVpbnQgb3BlcmF0b3ItLSh1aW50IHZhbHVlKSB7IHJldHVybiB2
YWx1ZSAtIDE7IH0KLXVjaGFyIG9wZXJhdG9yLS0odWNoYXIgdmFsdWUpIHsgcmV0dXJuIHZhbHVl
IC0gMTsgfQogbmF0aXZlIGludCBvcGVyYXRvciooaW50LCBpbnQpOwotbmF0aXZlIHVpbnQgb3Bl
cmF0b3IqKHVpbnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyIGIpIHsg
cmV0dXJuIHVjaGFyKHVpbnQoYSkgKiB1aW50KGIpKTsgfQotbmF0aXZlIGZsb2F0IG9wZXJhdG9y
KihmbG9hdCwgZmxvYXQpOwogbmF0aXZlIGludCBvcGVyYXRvci8oaW50LCBpbnQpOworbmF0aXZl
IGJvb2wgb3BlcmF0b3I9PShpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjwoaW50LCBp
bnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8PShpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVy
YXRvcj4oaW50LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+PShpbnQsIGludCk7CituYXRp
dmUgdWludCBvcGVyYXRvcisodWludCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvci0odWlu
dCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvcioodWludCwgdWludCk7CiBuYXRpdmUgdWlu
dCBvcGVyYXRvci8odWludCwgdWludCk7Ci11Y2hhciBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIg
YikgeyByZXR1cm4gdWNoYXIodWludChhKSAvIHVpbnQoYikpOyB9CituYXRpdmUgYm9vbCBvcGVy
YXRvcj09KHVpbnQsIHVpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8KHVpbnQsIHVpbnQpOwor
bmF0aXZlIGJvb2wgb3BlcmF0b3I8PSh1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9y
Pih1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPj0odWludCwgdWludCk7CituYXRp
dmUgZmxvYXQgb3BlcmF0b3IrKGZsb2F0LCBmbG9hdCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3It
KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IqKGZsb2F0LCBmbG9hdCk7Citu
YXRpdmUgZmxvYXQgb3BlcmF0b3IvKGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRv
cj09KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjwoZmxvYXQsIGZsb2F0KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPD0oZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBib29sIG9wZXJh
dG9yPihmbG9hdCwgZmxvYXQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+PShmbG9hdCwgZmxvYXQp
OwogbmF0aXZlIGludCBvcGVyYXRvciYoaW50LCBpbnQpOwogbmF0aXZlIGludCBvcGVyYXRvcnwo
aW50LCBpbnQpOwogbmF0aXZlIGludCBvcGVyYXRvcl4oaW50LCBpbnQpOwpAQCAtOTEsMTEwICs2
ODIsMjc4NSBAQCBuYXRpdmUgdWludCBvcGVyYXRvcl4odWludCwgdWludCk7CiBuYXRpdmUgdWlu
dCBvcGVyYXRvcn4odWludCk7CiBuYXRpdmUgdWludCBvcGVyYXRvcjw8KHVpbnQsIHVpbnQpOwog
bmF0aXZlIHVpbnQgb3BlcmF0b3I+Pih1aW50LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yJih1Y2hh
ciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpICYgdWludChiKSk7IH0KLXVjaGFy
IG9wZXJhdG9yfCh1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpIHwgdWlu
dChiKSk7IH0KLXVjaGFyIG9wZXJhdG9yXih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hh
cih1aW50KGEpIF4gdWludChiKSk7IH0KLXVjaGFyIG9wZXJhdG9yfih1Y2hhciB2YWx1ZSkgeyBy
ZXR1cm4gdWNoYXIofnVpbnQodmFsdWUpKTsgfQotdWNoYXIgb3BlcmF0b3I8PCh1Y2hhciBhLCB1
aW50IGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgPDwgKGIgJiA3KSk7IH0KLXVjaGFyIG9wZXJh
dG9yPj4odWNoYXIgYSwgdWludCBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpID4+IChiICYgNykp
OyB9Ci1uYXRpdmUgZmxvYXQgb3BlcmF0b3IvKGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBv
cGVyYXRvcj09KGludCwgaW50KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPT0odWludCwgdWludCk7
Ci1ib29sIG9wZXJhdG9yPT0odWNoYXIgYSwgdWNoYXIgYikgeyByZXR1cm4gdWludChhKSA9PSB1
aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGJvb2wsIGJvb2wpOwotbmF0aXZlIGJv
b2wgb3BlcmF0b3I9PShmbG9hdCwgZmxvYXQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCwg
aW50KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPCh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I8
KHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVpbnQoYSkgPCB1aW50KGIpOyB9Ci1uYXRpdmUg
Ym9vbCBvcGVyYXRvcjwoZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPD0oaW50
LCBpbnQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8PSh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0
b3I8PSh1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1aW50KGEpIDw9IHVpbnQoYik7IH0KLW5h
dGl2ZSBib29sIG9wZXJhdG9yPD0oZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9y
PihpbnQsIGludCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj4odWludCwgdWludCk7Ci1ib29sIG9w
ZXJhdG9yPih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1aW50KGEpID4gdWludChiKTsgfQot
bmF0aXZlIGJvb2wgb3BlcmF0b3I+KGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRv
cj49KGludCwgaW50KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPj0odWludCwgdWludCk7Ci1ib29s
IG9wZXJhdG9yPj0odWNoYXIgYSwgdWNoYXIgYikgeyByZXR1cm4gdWludChhKSA+PSB1aW50KGIp
OyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj49KGZsb2F0LCBmbG9hdCk7Ci0KLWJvb2wgb3BlcmF0
b3ImKGJvb2wgYSwgYm9vbCBiKQotewotICAgIGlmIChhKQotICAgICAgICByZXR1cm4gYjsKLSAg
ICByZXR1cm4gZmFsc2U7Cit1Y2hhciBvcGVyYXRvcisodWNoYXIgYSwgdWNoYXIgYikgeworICAg
IHJldHVybiB1Y2hhcih1aW50KGEpICsgdWludChiKSk7CiB9Ci0KLWJvb2wgb3BlcmF0b3J8KGJv
b2wgYSwgYm9vbCBiKQotewotICAgIGlmIChhKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBp
ZiAoYikKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgcmV0dXJuIGZhbHNlOwordWNoYXIgb3Bl
cmF0b3ItKHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSAtIHVp
bnQoYikpOwogfQotCi1ib29sIG9wZXJhdG9yXihib29sIGEsIGJvb2wgYikKLXsKLSAgICBpZiAo
YSkKLSAgICAgICAgcmV0dXJuICFiOwotICAgIHJldHVybiBiOwordWNoYXIgb3BlcmF0b3IqKHVj
aGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSAqIHVpbnQoYikpOwog
fQotCi1ib29sIG9wZXJhdG9yfihib29sIHZhbHVlKQotewotICAgIHJldHVybiAhdmFsdWU7Cit1
Y2hhciBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50
KGEpIC8gdWludChiKSk7CiB9Ci0KLW5hdGl2ZSB0eXBlZGVmIHVjaGFyMjsKLW5hdGl2ZSB0eXBl
ZGVmIHVjaGFyMzsKLW5hdGl2ZSB0eXBlZGVmIHVjaGFyNDsKLQotbmF0aXZlIHR5cGVkZWYgdWlu
dDI7Ci1uYXRpdmUgdHlwZWRlZiB1aW50MzsKLW5hdGl2ZSB0eXBlZGVmIHVpbnQ0OwotCi1uYXRp
dmUgdHlwZWRlZiBpbnQyOwotbmF0aXZlIHR5cGVkZWYgaW50MzsKLW5hdGl2ZSB0eXBlZGVmIGlu
dDQ7Ci0KLW5hdGl2ZSB0eXBlZGVmIGZsb2F0MjsKLW5hdGl2ZSB0eXBlZGVmIGZsb2F0MzsKLW5h
dGl2ZSB0eXBlZGVmIGZsb2F0NDsKLWA7Ci0KLS8vIEZJWE1FOiBPbmNlIHRoZSBzdGFuZGFyZCBs
aWJyYXJ5IGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggYSBuZXcgdmVyc2lvbiwgdGhpcyBjb21tZW50
cyBzaG91bGQgYmUgcmVtb3ZlZC4KLS8vIFRoaXMgbGlzdCBpcyB1c2VkIHRvIHJlc3RyaWN0IHRo
ZSBhdmFpbGFiaWxpdHkgb2YgdmVjdG9yIHR5cGVzIGF2YWlsYWJsZSBpbiB0aGUgbGFuZ2F1Z2Uu
Ci0vLyBQZXJtaXNzaWJsZSB2ZWN0b3IgZWxlbWVudCB0eXBlcyBtdXN0IGFwcGVhciBpbiB0aGlz
IGxpc3QgYW5kIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5Ci1jb25zdCBWZWN0b3JFbGVtZW50VHlw
ZXMgPSBbIC8qImJvb2wiLCovICJ1Y2hhciIsIC8qImNoYXIiLCAidXNob3J0IiwgInNob3J0Iiwq
LyAidWludCIsICJpbnQiLCAvKiAiaGFsZiIsICovImZsb2F0IiBdOwotY29uc3QgVmVjdG9yRWxl
bWVudFNpemVzID0gWyAyLCAzLCA0IF07Ci0KLWZ1bmN0aW9uIGFsbFZlY3RvclR5cGVOYW1lcygp
Ci17Ci0gICAgY29uc3QgbmFtZXMgPSBbXTsKLSAgICBmb3IgKGxldCBlbGVtZW50VHlwZSBvZiBW
ZWN0b3JFbGVtZW50VHlwZXMpIHsKLSAgICAgICAgZm9yIChsZXQgc2l6ZSBvZiBWZWN0b3JFbGVt
ZW50U2l6ZXMpCi0gICAgICAgICAgICBuYW1lcy5wdXNoKGAke2VsZW1lbnRUeXBlfSR7c2l6ZX1g
KTsKLSAgICB9Ci0gICAgcmV0dXJuIG5hbWVzOwordWNoYXIgb3BlcmF0b3ImKHVjaGFyIGEsIHVj
aGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSAmIHVpbnQoYikpOwogfQordWNoYXIg
b3BlcmF0b3J8KHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSB8
IHVpbnQoYikpOworfQordWNoYXIgb3BlcmF0b3JeKHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICBy
ZXR1cm4gdWNoYXIodWludChhKSBeIHVpbnQoYikpOworfQordWNoYXIgb3BlcmF0b3J+KHVjaGFy
IGEpIHsKKyAgICByZXR1cm4gdWNoYXIofnVpbnQoYSkpOworfQorYm9vbCBvcGVyYXRvcj09KHVj
aGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWludChhKSA9PSB1aW50KGIpOworfQorYm9v
bCBvcGVyYXRvcjwodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEpIDwgdWlu
dChiKTsKK30KK2Jvb2wgb3BlcmF0b3I8PSh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJu
IHVpbnQoYSkgPD0gdWludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+KHVjaGFyIGEsIHVjaGFyIGIp
IHsKKyAgICByZXR1cm4gdWludChhKSA+IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0odWNo
YXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEpID49IHVpbnQoYik7Cit9Cit1c2hv
cnQgb3BlcmF0b3IrKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWlu
dChhKSArIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yLSh1c2hvcnQgYSwgdXNob3J0IGIp
IHsKKyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgLSB1aW50KGIpKTsKK30KK3VzaG9ydCBvcGVy
YXRvcioodXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpICog
dWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3IvKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAg
IHJldHVybiB1c2hvcnQodWludChhKSAvIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yJih1
c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgJiB1aW50KGIp
KTsKK30KK3VzaG9ydCBvcGVyYXRvcnwodXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJu
IHVzaG9ydCh1aW50KGEpIHwgdWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3JeKHVzaG9ydCBh
LCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWludChhKSBeIHVpbnQoYikpOworfQor
dXNob3J0IG9wZXJhdG9yfih1c2hvcnQgYSkgeworICAgIHJldHVybiB1c2hvcnQofnVpbnQoYSkp
OworfQorYm9vbCBvcGVyYXRvcj09KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1
aW50KGEpID09IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPCh1c2hvcnQgYSwgdXNob3J0IGIp
IHsKKyAgICByZXR1cm4gdWludChhKSA8IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPD0odXNo
b3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVpbnQoYSkgPD0gdWludChiKTsKK30KK2Jv
b2wgb3BlcmF0b3I+KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpID4g
dWludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+PSh1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICBy
ZXR1cm4gdWludChhKSA+PSB1aW50KGIpOworfQordWNoYXIgb3BlcmF0b3I8PCh1Y2hhciBhLCB1
aW50IGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSA8PCAoYiAmIDI1NSkpOworfQordXNo
b3J0IG9wZXJhdG9yPDwodXNob3J0IGEsIHVpbnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWlu
dChhKSA8PCAoYiAmIDY1NTM1KSk7Cit9Cit1Y2hhciBvcGVyYXRvcj4+KHVjaGFyIGEsIHVpbnQg
YikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpID4+IChiICYgMjU1KSk7Cit9Cit1c2hvcnQg
b3BlcmF0b3I+Pih1c2hvcnQgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEp
ID4+IChiICYgNjU1MzUpKTsKK30KK2NoYXIgb3BlcmF0b3IrKGNoYXIgYSwgY2hhciBiKSB7Cisg
ICAgcmV0dXJuIGNoYXIoaW50KGEpICsgaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3ItKGNoYXIg
YSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIC0gaW50KGIpKTsKK30KK2NoYXIg
b3BlcmF0b3IqKGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpICogaW50
KGIpKTsKK30KK2NoYXIgb3BlcmF0b3IvKGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNo
YXIoaW50KGEpIC8gaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3ImKGNoYXIgYSwgY2hhciBiKSB7
CisgICAgcmV0dXJuIGNoYXIoaW50KGEpICYgaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3J8KGNo
YXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIHwgaW50KGIpKTsKK30KK2No
YXIgb3BlcmF0b3JeKGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIF4g
aW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3J+KGNoYXIgYSkgeworICAgIHJldHVybiBjaGFyKH5p
bnQoYSkpOworfQorYm9vbCBvcGVyYXRvcj09KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJu
IGludChhKSA9PSBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPihjaGFyIGEsIGNoYXIgYikgewor
ICAgIHJldHVybiBpbnQoYSkgPiBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0oY2hhciBhLCBj
aGFyIGIpIHsKKyAgICByZXR1cm4gaW50KGEpID49IGludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I8
KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGludChhKSA8IGludChiKTsKK30KK2Jvb2wg
b3BlcmF0b3I8PShjaGFyIGEsIGNoYXIgYikgeworICAgIHJldHVybiBpbnQoYSkgPD0gaW50KGIp
OworfQorc2hvcnQgb3BlcmF0b3IrKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hv
cnQoaW50KGEpICsgaW50KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yLShzaG9ydCBhLCBzaG9ydCBi
KSB7CisgICAgcmV0dXJuIHNob3J0KGludChhKSAtIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRv
ciooc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgKiBpbnQoYikp
OworfQorc2hvcnQgb3BlcmF0b3IvKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hv
cnQoaW50KGEpIC8gaW50KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yJihzaG9ydCBhLCBzaG9ydCBi
KSB7CisgICAgcmV0dXJuIHNob3J0KGludChhKSAmIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRv
cnwoc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgfCBpbnQoYikp
OworfQorc2hvcnQgb3BlcmF0b3JeKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hv
cnQoaW50KGEpIF4gaW50KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yfihzaG9ydCBhKSB7CisgICAg
cmV0dXJuIHNob3J0KH5pbnQoYSkpOworfQorYm9vbCBvcGVyYXRvcj09KHNob3J0IGEsIHNob3J0
IGIpIHsKKyAgICByZXR1cm4gaW50KGEpID09IGludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+KHNo
b3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gaW50KGEpID4gaW50KGIpOworfQorYm9vbCBv
cGVyYXRvcj49KHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gaW50KGEpID49IGludChi
KTsKK30KK2Jvb2wgb3BlcmF0b3I8KHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gaW50
KGEpIDwgaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KHNob3J0IGEsIHNob3J0IGIpIHsKKyAg
ICByZXR1cm4gaW50KGEpIDw9IGludChiKTsKK30KK2NoYXIgb3BlcmF0b3I8PChjaGFyIGEsIHVp
bnQgYikgeworICAgIHJldHVybiBjaGFyKGludChhKSA8PCAoYiAmIDI1NSkpOworfQorc2hvcnQg
b3BlcmF0b3I8PChzaG9ydCBhLCB1aW50IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpIDw8
IChiICYgNjU1MzUpKTsKK30KK2NoYXIgb3BlcmF0b3I+PihjaGFyIGEsIHVpbnQgYikgeworICAg
IHJldHVybiBjaGFyKGludChhKSA+PiAoYiAmIDI1NSkpOworfQorc2hvcnQgb3BlcmF0b3I+Pihz
aG9ydCBhLCB1aW50IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpID4+IChiICYgNjU1MzUp
KTsKK30KK3VjaGFyIG9wZXJhdG9yKysodWNoYXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUg
KyAxOworfQordWNoYXIgb3BlcmF0b3ItLSh1Y2hhciB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1
ZSAtIDE7Cit9Cit1c2hvcnQgb3BlcmF0b3IrKyh1c2hvcnQgdmFsdWUpIHsKKyAgICByZXR1cm4g
dmFsdWUgKyAxOworfQordXNob3J0IG9wZXJhdG9yLS0odXNob3J0IHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK3VpbnQgb3BlcmF0b3IrKyh1aW50IHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlICsgMTsKK30KK3VpbnQgb3BlcmF0b3ItLSh1aW50IHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK2NoYXIgb3BlcmF0b3IrKyhjaGFyIHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlICsgMTsKK30KK2NoYXIgb3BlcmF0b3ItLShjaGFyIHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK3Nob3J0IG9wZXJhdG9yKysoc2hvcnQgdmFsdWUpIHsKKyAgICBy
ZXR1cm4gdmFsdWUgKyAxOworfQorc2hvcnQgb3BlcmF0b3ItLShzaG9ydCB2YWx1ZSkgeworICAg
IHJldHVybiB2YWx1ZSAtIDE7Cit9CitpbnQgb3BlcmF0b3IrKyhpbnQgdmFsdWUpIHsKKyAgICBy
ZXR1cm4gdmFsdWUgKyAxOworfQoraW50IG9wZXJhdG9yLS0oaW50IHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK2hhbGYgb3BlcmF0b3IrKyhoYWxmIHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlICsgMTsKK30KK2hhbGYgb3BlcmF0b3ItLShoYWxmIHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK2Zsb2F0IG9wZXJhdG9yKysoZmxvYXQgdmFsdWUpIHsKKyAgICBy
ZXR1cm4gdmFsdWUgKyAxOworfQorZmxvYXQgb3BlcmF0b3ItLShmbG9hdCB2YWx1ZSkgeworICAg
IHJldHVybiB2YWx1ZSAtIDE7Cit9CitoYWxmIG9wZXJhdG9yKyhoYWxmIGEsIGhhbGYgYikgewor
ICAgIHJldHVybiBoYWxmKGZsb2F0KGEpICsgZmxvYXQoYikpOworfQoraGFsZiBvcGVyYXRvci0o
aGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gaGFsZihmbG9hdChhKSAtIGZsb2F0KGIpKTsK
K30KK2hhbGYgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxv
YXQoYSkgKiBmbG9hdChiKSk7Cit9CitoYWxmIG9wZXJhdG9yLyhoYWxmIGEsIGhhbGYgYikgewor
ICAgIHJldHVybiBoYWxmKGZsb2F0KGEpIC8gZmxvYXQoYikpOworfQorYm9vbCBvcGVyYXRvcj09
KGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGZsb2F0KGEpID09IGZsb2F0KGIpOworfQor
Ym9vbCBvcGVyYXRvcjwoaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQoYSkgPCBm
bG9hdChiKTsKK30KK2Jvb2wgb3BlcmF0b3I8PShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVy
biBmbG9hdChhKSA8PSBmbG9hdChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+KGhhbGYgYSwgaGFsZiBi
KSB7CisgICAgcmV0dXJuIGZsb2F0KGEpIDwgZmxvYXQoYik7Cit9Citib29sIG9wZXJhdG9yPj0o
aGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQoYSkgPD0gZmxvYXQoYik7Cit9Citj
aGFyIG9wZXJhdG9yLShjaGFyIHgpIHsKKyAgICByZXR1cm4gY2hhcigtaW50KHgpKTsKK30KK3No
b3J0IG9wZXJhdG9yLShzaG9ydCB4KSB7CisgICAgcmV0dXJuIHNob3J0KC1pbnQoeCkpOworfQor
aGFsZiBvcGVyYXRvci0oaGFsZiB4KSB7CisgICAgcmV0dXJuIGhhbGYoLWZsb2F0KHgpKTsKK30K
K25hdGl2ZSBpbnQgb3BlcmF0b3ItKGludCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3ItKGZsb2F0
KTsKIAotLy8gUHJvdmlkZXMgb3BlcmF0b3ImW10KLXN0YW5kYXJkTGlicmFyeSArPSBPcGVyYXRv
ckFuZGVySW5kZXhlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotCi0vLyBOYXRp
dmUgdmVjdG9yIHR5cGVzIGFyZSBsaWtlIHN0cnVjdHMgaW4gdGhlIGxhbmdhdWdlLCBidXQgdGhl
eSBkbyBub3QgaGF2ZSB0aGUgYW5kZXIgZmllbGQgYWNjZXNzLgotLy8gSXQgaXMgbm90IHBvc3Np
YmxlIHRvIHRha2UgdGhlIGFkZHJlc3Mgb2YgYSB2ZWN0b3IgZmllbGQuCi1zdGFuZGFyZExpYnJh
cnkgKz0gQnVpbHRpblZlY3RvckdldHRlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4i
Owotc3RhbmRhcmRMaWJyYXJ5ICs9IEJ1aWx0aW5WZWN0b3JTZXR0ZXIuZnVuY3Rpb25zKCkuam9p
bigiO1xuIikgKyAiO1xuIjsKLXN0YW5kYXJkTGlicmFyeSArPSBCdWlsdGluVmVjdG9ySW5kZXhH
ZXR0ZXIuZnVuY3Rpb25zKCkuam9pbigiO1xuIikgKyAiO1xuIjsKLXN0YW5kYXJkTGlicmFyeSAr
PSBCdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuZnVuY3Rpb25zKCkuam9pbigiO1xuIikgKyAiO1xu
IjsKLQotLy8gRklYTUU6IEZvciBuYXRpdmUgdHlwZXMgdGhlc2UgY291bGQgYmUgaW5jbHVkZWQg
YXMgc291cmNlIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5LgotLy8gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODY4NQotc3RhbmRhcmRMaWJyYXJ5ICs9IE9wZXJhdG9y
Qm9vbC5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotc3RhbmRhcmRMaWJyYXJ5ICs9
IEJ1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmZ1bmN0aW9ucygpLmpvaW4oIjtcbiIpICsg
IjtcbiI7Cit1Y2hhcjIgb3BlcmF0b3IrKHVjaGFyMiBhLCB1Y2hhcjIgYikgeworICAgIHVjaGFy
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBvcGVyYXRvci0odWNo
YXIyIGEsIHVjaGFyMiBiKSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXIyIG9wZXJhdG9yKih1Y2hhcjIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hh
cjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IqKHVj
aGFyMiBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXIyIG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhcjIgYikgeworICAgIHVjaGFyMiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBvcGVyYXRvci8odWNoYXIyIGEsIHVjaGFy
MiBiKSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXIyIG9wZXJhdG9yLyh1Y2hhcjIgYSwgdWNoYXIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIyIGIpIHsK
KyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Ir
KHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0
WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRv
ci0odWNoYXIzIGEsIHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJh
dG9yKih1Y2hhcjMgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJl
c3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3Bl
cmF0b3IqKHVjaGFyMyBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yKih1
Y2hhciBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAq
IGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci8odWNoYXIzIGEs
IHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLyh1Y2hhcjMg
YSwgdWNoYXIgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAv
IGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIz
IGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IrKHVjaGFyNCBhLCB1Y2hhcjQgYikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAg
cmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci0odWNoYXI0IGEsIHVjaGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yKih1Y2hhcjQgYSwgdWNoYXI0
IGIpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJd
OworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IqKHVjaGFyNCBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhcjQgYikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNd
ID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci8odWNo
YXI0IGEsIHVjaGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLyh1Y2hhcjQgYSwgdWNoYXIgYikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0g
YVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVsz
XSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci8odWNoYXIgYSwg
dWNoYXI0IGIpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOwor
ICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQy
IG9wZXJhdG9yKyh1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLSh1c2hvcnQyIGEsIHVz
aG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQyIG9wZXJhdG9yKih1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yKih1c2hv
cnQyIGEsIHVzaG9ydCBiKSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDIgb3BlcmF0b3IqKHVzaG9ydCBhLCB1c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICog
YlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci8odXNob3J0MiBh
LCB1c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0MiBvcGVyYXRvci8odXNob3J0MiBhLCB1c2hvcnQgYikgeworICAgIHVzaG9y
dDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLyh1c2hvcnQg
YSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAv
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDMgb3BlcmF0b3IrKHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7CisgICAgdXNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsx
XSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDMgb3BlcmF0b3ItKHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7CisgICAgdXNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IqKHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IqKHVzaG9ydDMgYSwgdXNob3J0IGIp
IHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvcioodXNob3J0IGEsIHVzaG9ydDMgYikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLyh1c2hvcnQzIGEsIHVzaG9ydDMgYikgeworICAg
IHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLyh1c2hvcnQzIGEsIHVzaG9ydCBiKSB7
CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IvKHVzaG9ydCBhLCB1c2hvcnQzIGIpIHsKKyAg
ICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvcisodXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1
bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci0odXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvcioodXNob3J0NCBhLCB1c2hv
cnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICog
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvcioodXNob3J0NCBhLCB1c2hvcnQgYikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
KiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBi
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKih1c2hvcnQgYSwgdXNo
b3J0NCBiKSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07Cisg
ICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IvKHVzaG9ydDQgYSwgdXNob3J0NCBiKSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IvKHVzaG9ydDQgYSwg
dXNob3J0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsK
KyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci8odXNob3J0IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvcisodWludDIgYSwgdWludDIgYikgeworICAg
IHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3It
KHVpbnQyIGEsIHVpbnQyIGIpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yKih1aW50MiBhLCB1aW50MiBiKSB7CisgICAgdWludDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvcioodWludDIg
YSwgdWludCBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBi
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MiBvcGVyYXRvcioodWludCBhLCB1aW50MiBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci8odWludDIgYSwgdWludDIgYikgeworICAgIHVp
bnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IvKHVp
bnQyIGEsIHVpbnQgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDIgb3BlcmF0b3IvKHVpbnQgYSwgdWludDIgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IrKHVpbnQzIGEsIHVpbnQzIGIpIHsKKyAg
ICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLSh1aW50MyBhLCB1aW50MyBiKSB7CisgICAg
dWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvcioodWludDMgYSwgdWludDMgYikgeworICAgIHVp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDMgb3BlcmF0b3IqKHVpbnQzIGEsIHVpbnQgYikgeworICAgIHVpbnQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDMgb3BlcmF0b3IqKHVpbnQgYSwgdWludDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0
b3IvKHVpbnQzIGEsIHVpbnQzIGIpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0
WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9y
Lyh1aW50MyBhLCB1aW50IGIpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsy
XSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLyh1aW50IGEsIHVp
bnQzIGIpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yKyh1aW50NCBhLCB1aW50NCBiKSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJl
c3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci0odWludDQgYSwgdWludDQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IqKHVpbnQ0IGEsIHVpbnQ0IGIpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yKih1aW50NCBhLCB1aW50IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0g
YVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yKih1aW50IGEsIHVpbnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLyh1aW50NCBhLCB1aW50NCBiKSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJl
c3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci8odWludDQgYSwgdWludCBiKSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9
IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci8odWludCBhLCB1aW50NCBiKSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOwor
ICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvcisoY2hhcjIgYSwgY2hhcjIgYikgewor
ICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0
b3ItKGNoYXIyIGEsIGNoYXIyIGIpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yKihjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAgY2hh
cjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvciooY2hh
cjIgYSwgY2hhciBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMiBvcGVyYXRvciooY2hhciBhLCBjaGFyMiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci8oY2hhcjIgYSwgY2hhcjIgYikgeworICAg
IGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3Iv
KGNoYXIyIGEsIGNoYXIgYikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjIgb3BlcmF0b3IvKGNoYXIgYSwgY2hhcjIgYikgeworICAgIGNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IrKGNoYXIzIGEsIGNoYXIzIGIpIHsK
KyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLShjaGFyMyBhLCBjaGFyMyBiKSB7Cisg
ICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvciooY2hhcjMgYSwgY2hhcjMgYikgeworICAg
IGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IqKGNoYXIzIGEsIGNoYXIgYikgeworICAgIGNo
YXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBh
WzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjMgb3BlcmF0b3IqKGNoYXIgYSwgY2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3Bl
cmF0b3IvKGNoYXIzIGEsIGNoYXIzIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJh
dG9yLyhjaGFyMyBhLCBjaGFyIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0g
YVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLyhjaGFyIGEs
IGNoYXIzIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yKyhjaGFyNCBhLCBjaGFyNCBiKSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAg
IHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci0oY2hhcjQgYSwgY2hhcjQgYikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IqKGNoYXI0IGEsIGNoYXI0IGIpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAg
cmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yKihjaGFyNCBhLCBjaGFyIGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJd
ID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yKihjaGFyIGEsIGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLyhjaGFyNCBhLCBjaGFyNCBiKSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAg
IHJlc3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci8oY2hhcjQgYSwgY2hhciBiKSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci8oY2hhciBhLCBjaGFyNCBiKSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IrKHNob3J0MiBhLCBzaG9ydDIg
YikgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
MiBvcGVyYXRvci0oc2hvcnQyIGEsIHNob3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJhdG9yKihzaG9ydDIgYSwgc2hvcnQy
IGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDIgb3BlcmF0b3IqKHNob3J0MiBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydDIgYikgewor
ICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvci8o
c2hvcnQyIGEsIHNob3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQyIG9wZXJhdG9yLyhzaG9ydDIgYSwgc2hvcnQgYikgeworICAgIHNo
b3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0g
YVsxXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvci8oc2hvcnQg
YSwgc2hvcnQyIGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDMgb3BlcmF0b3IrKHNob3J0MyBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0MyBvcGVyYXRvci0oc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0g
YlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQzIG9wZXJhdG9yKihzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
KiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDMgb3BlcmF0b3IqKHNob3J0MyBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICog
YjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQzIG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAg
cmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVy
YXRvci8oc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9w
ZXJhdG9yLyhzaG9ydDMgYSwgc2hvcnQgYikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0
WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci8o
c2hvcnQgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEg
LyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IrKHNob3J0NCBh
LCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAr
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsy
XSArIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci0oc2hvcnQ0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10g
PSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yKihz
aG9ydDQgYSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IqKHNob3J0NCBhLCBzaG9ydCBiKSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBh
WzNdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yKihzaG9ydCBh
LCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07
CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci8oc2hvcnQ0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLyhzaG9ydDQgYSwgc2hv
cnQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAg
cmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci8oc2hvcnQgYSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsy
XSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQyIG9wZXJhdG9yKyhpbnQyIGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBi
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLShpbnQyIGEsIGludDIg
YikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9w
ZXJhdG9yKihpbnQyIGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yKihpbnQyIGEsIGludCBiKSB7CisgICAgaW50MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAq
IGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IqKGludCBhLCBpbnQyIGIp
IHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci8o
aW50MiBhLCBpbnQyIGIpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50MiBvcGVyYXRvci8oaW50MiBhLCBpbnQgYikgeworICAgIGludDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLyhpbnQgYSwgaW50MiBiKSB7CisgICAg
aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IrKGludDMgYSwg
aW50MyBiKSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3ItKGludDMgYSwgaW50MyBi
KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IqKGludDMgYSwgaW50MyBiKSB7Cisg
ICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IqKGludDMgYSwgaW50IGIpIHsKKyAgICBpbnQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50MyBvcGVyYXRvciooaW50IGEsIGludDMgYikgeworICAgIGludDMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLyhp
bnQzIGEsIGludDMgYikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
LyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFb
Ml0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLyhpbnQzIGEs
IGludCBiKSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IvKGludCBhLCBpbnQzIGIpIHsKKyAgICBp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
IC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvcisoaW50NCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci0oaW50NCBhLCBpbnQ0IGIp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAg
ICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvciooaW50NCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvciooaW50NCBhLCBpbnQgYikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10g
KiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yKihpbnQgYSwgaW50NCBi
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0
WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IvKGlu
dDQgYSwgaW50NCBiKSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAv
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsy
XSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3IvKGludDQgYSwgaW50IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci8oaW50IGEsIGludDQgYikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEg
LyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvcisoaGFsZjIgYSwgaGFs
ZjIgYikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjIgb3BlcmF0b3ItKGhhbGYyIGEsIGhhbGYyIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yKihoYWxmMiBhLCBoYWxmMiBiKSB7
CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVy
YXRvciooaGFsZjIgYSwgaGFsZiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMiBvcGVyYXRvciooaGFsZiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci8oaGFsZjIgYSwgaGFsZjIg
YikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIg
b3BlcmF0b3IvKGhhbGYyIGEsIGhhbGYgYikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IvKGhhbGYgYSwgaGFsZjIgYikgeworICAgIGhhbGYy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8g
YlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IrKGhhbGYzIGEsIGhh
bGYzIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLShoYWxmMyBhLCBoYWxm
MyBiKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvciooaGFsZjMgYSwgaGFsZjMg
YikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IqKGhhbGYzIGEsIGhhbGYgYikg
eworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1
bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjMgYikgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICog
YlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjMgb3BlcmF0b3IvKGhhbGYzIGEsIGhhbGYzIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzIG9wZXJhdG9yLyhoYWxmMyBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVz
dWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9y
LyhoYWxmIGEsIGhhbGYzIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAv
IGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yKyhoYWxmNCBhLCBo
YWxmNCBiKSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBi
WzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci0oaGFsZjQgYSwgaGFsZjQgYikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsx
XTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0g
YlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IqKGhhbGY0IGEsIGhh
bGY0IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJb
Ml07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yKihoYWxmNCBhLCBoYWxmIGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAg
cmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yKihoYWxmIGEsIGhhbGY0IGIpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAq
IGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLyhoYWxmNCBhLCBo
YWxmNCBiKSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBi
WzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci8oaGFsZjQgYSwgaGFsZiBiKSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAg
IHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci8oaGFsZiBhLCBoYWxmNCBiKSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEg
LyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IrKGZsb2F0MiBh
LCBmbG9hdDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAr
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MiBvcGVyYXRvci0oZmxvYXQyIGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC0gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yKihmbG9hdDIg
YSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDIgb3BlcmF0b3IqKGZsb2F0MiBhLCBmbG9hdCBiKSB7CisgICAgZmxvYXQyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICog
YjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yKihmbG9hdCBhLCBmbG9h
dDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBv
cGVyYXRvci8oZmxvYXQyIGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yLyhmbG9hdDIgYSwgZmxvYXQgYikg
eworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRv
ci8oZmxvYXQgYSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IrKGZsb2F0MyBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci0oZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAgZmxv
YXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yKihmbG9hdDMgYSwgZmxvYXQzIGIpIHsKKyAgICBm
bG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IqKGZsb2F0MyBhLCBmbG9hdCBiKSB7CisgICAg
ZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzIG9wZXJhdG9yKihmbG9hdCBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MyBvcGVyYXRvci8oZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAgZmxvYXQzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsx
XTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzIG9wZXJhdG9yLyhmbG9hdDMgYSwgZmxvYXQgYikgeworICAgIGZsb2F0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBv
cGVyYXRvci8oZmxvYXQgYSwgZmxvYXQzIGIpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGEgLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Ir
KGZsb2F0NCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0
WzJdID0gYVsyXSArIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci0oZmxvYXQ0IGEsIGZsb2F0NCBiKSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICBy
ZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yKihmbG9hdDQgYSwgZmxvYXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IqKGZsb2F0NCBhLCBmbG9hdCBi
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1
bHRbM10gPSBhWzNdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
KihmbG9hdCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci8oZmxvYXQ0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBh
WzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLyhmbG9h
dDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAv
IGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci8oZmxvYXQgYSwgZmxvYXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci0oY2hhcjIgYSkgeworICAgIGNoYXIyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3ItKGNoYXIzIGEpIHsKKyAgICBjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07
CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLShjaGFyNCBhKSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1h
WzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAg
IHJlc3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0
b3ItKHNob3J0MiBhKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVsw
XTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQz
IG9wZXJhdG9yLShzaG9ydDMgYSkgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci0oc2hvcnQ0IGEpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9
IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJlc3VsdFszXSA9IC1hWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLShpbnQyIGEpIHsKKyAgICBpbnQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci0oaW50MyBhKSB7CisgICAgaW50
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07
CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3ItKGludDQgYSkgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBd
OworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJl
c3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci0o
aGFsZjIgYSkgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAg
ICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0
b3ItKGhhbGYzIGEpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07
CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLShoYWxmNCBhKSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAg
IHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJlc3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3ItKGZsb2F0MiBhKSB7CisgICAgZmxvYXQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLShmbG9hdDMgYSkgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07
CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci0oZmxvYXQ0IGEpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOwor
ICAgIHJlc3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2Jvb2wgb3Bl
cmF0b3I9PShib29sMiBhLCBib29sMiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55
ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShib29sMyBhLCBib29sMyBiKSB7CisgICAgcmV0
dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVy
YXRvcj09KGJvb2w0IGEsIGJvb2w0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkg
PT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBib29sIG9wZXJh
dG9yLngoYm9vbDIpOworbmF0aXZlIGJvb2wgb3BlcmF0b3IueShib29sMik7CituYXRpdmUgYm9v
bCBvcGVyYXRvci54KGJvb2wzKTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLnkoYm9vbDMpOworbmF0
aXZlIGJvb2wgb3BlcmF0b3Iueihib29sMyk7CituYXRpdmUgYm9vbCBvcGVyYXRvci54KGJvb2w0
KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLnkoYm9vbDQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3Iu
eihib29sNCk7CituYXRpdmUgYm9vbCBvcGVyYXRvci53KGJvb2w0KTsKK25hdGl2ZSBib29sMiBv
cGVyYXRvci54PShib29sMiwgYm9vbCk7CituYXRpdmUgYm9vbDIgb3BlcmF0b3IueT0oYm9vbDIs
IGJvb2wpOworbmF0aXZlIGJvb2wzIG9wZXJhdG9yLng9KGJvb2wzLCBib29sKTsKK25hdGl2ZSBi
b29sMyBvcGVyYXRvci55PShib29sMywgYm9vbCk7CituYXRpdmUgYm9vbDMgb3BlcmF0b3Iuej0o
Ym9vbDMsIGJvb2wpOworbmF0aXZlIGJvb2w0IG9wZXJhdG9yLng9KGJvb2w0LCBib29sKTsKK25h
dGl2ZSBib29sNCBvcGVyYXRvci55PShib29sNCwgYm9vbCk7CituYXRpdmUgYm9vbDQgb3BlcmF0
b3Iuej0oYm9vbDQsIGJvb2wpOworbmF0aXZlIGJvb2w0IG9wZXJhdG9yLnc9KGJvb2w0LCBib29s
KTsKK2Jvb2wgb3BlcmF0b3JbXShib29sMiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChp
bmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAg
ICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0OgorICAg
ICAgICAgICAgdHJhcDsKKyAgICB9Cit9Citib29sIG9wZXJhdG9yW10oYm9vbDMgdiwgdWludCBp
bmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAg
ICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsK
KyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQorYm9vbCBvcGVyYXRvcltdKGJvb2w0IHYs
IHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVy
biB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAg
IGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KK30KK2Jvb2wyIG9wZXJhdG9yW109KGJvb2wyIHYsIHVpbnQg
aW5kZXgsIGJvb2wgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgor
ICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6
CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wzIG9w
ZXJhdG9yW109KGJvb2wzIHYsIHVpbnQgaW5kZXgsIGJvb2wgYSkgeworICAgIHN3aXRjaCAoaW5k
ZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQor
ICAgIHJldHVybiB2OworfQorYm9vbDQgb3BlcmF0b3JbXT0oYm9vbDQgdiwgdWludCBpbmRleCwg
Ym9vbCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAg
ICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAg
ICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAg
ICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6Cisg
ICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3BlcmF0
b3I9PSh1Y2hhcjIgYSwgdWNoYXIyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkg
PT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHJl
dHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3Bl
cmF0b3I9PSh1Y2hhcjQgYSwgdWNoYXI0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBh
LnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSB1Y2hhciBv
cGVyYXRvci54KHVjaGFyMik7CituYXRpdmUgdWNoYXIgb3BlcmF0b3IueSh1Y2hhcjIpOworbmF0
aXZlIHVjaGFyIG9wZXJhdG9yLngodWNoYXIzKTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRvci55KHVj
aGFyMyk7CituYXRpdmUgdWNoYXIgb3BlcmF0b3Iueih1Y2hhcjMpOworbmF0aXZlIHVjaGFyIG9w
ZXJhdG9yLngodWNoYXI0KTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRvci55KHVjaGFyNCk7CituYXRp
dmUgdWNoYXIgb3BlcmF0b3Iueih1Y2hhcjQpOworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLncodWNo
YXI0KTsKK25hdGl2ZSB1Y2hhcjIgb3BlcmF0b3IueD0odWNoYXIyLCB1Y2hhcik7CituYXRpdmUg
dWNoYXIyIG9wZXJhdG9yLnk9KHVjaGFyMiwgdWNoYXIpOworbmF0aXZlIHVjaGFyMyBvcGVyYXRv
ci54PSh1Y2hhcjMsIHVjaGFyKTsKK25hdGl2ZSB1Y2hhcjMgb3BlcmF0b3IueT0odWNoYXIzLCB1
Y2hhcik7CituYXRpdmUgdWNoYXIzIG9wZXJhdG9yLno9KHVjaGFyMywgdWNoYXIpOworbmF0aXZl
IHVjaGFyNCBvcGVyYXRvci54PSh1Y2hhcjQsIHVjaGFyKTsKK25hdGl2ZSB1Y2hhcjQgb3BlcmF0
b3IueT0odWNoYXI0LCB1Y2hhcik7CituYXRpdmUgdWNoYXI0IG9wZXJhdG9yLno9KHVjaGFyNCwg
dWNoYXIpOworbmF0aXZlIHVjaGFyNCBvcGVyYXRvci53PSh1Y2hhcjQsIHVjaGFyKTsKK3VjaGFy
IG9wZXJhdG9yW10odWNoYXIyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7
CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2Ug
MToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAg
ICB0cmFwOworICAgIH0KK30KK3VjaGFyIG9wZXJhdG9yW10odWNoYXIzIHYsIHVpbnQgaW5kZXgp
IHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJl
dHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAg
ICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3VjaGFyIG9wZXJhdG9yW10odWNoYXI0IHYsIHVp
bnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAg
ICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2
Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGNh
c2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICB0cmFwOworICAgIH0KK30KK3VjaGFyMiBvcGVyYXRvcltdPSh1Y2hhcjIgdiwgdWludCBp
bmRleCwgdWNoYXIgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgor
ICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6
CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3VjaGFyMyBv
cGVyYXRvcltdPSh1Y2hhcjMgdiwgdWludCBpbmRleCwgdWNoYXIgYSkgeworICAgIHN3aXRjaCAo
aW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAg
fQorICAgIHJldHVybiB2OworfQordWNoYXI0IG9wZXJhdG9yW109KHVjaGFyNCB2LCB1aW50IGlu
ZGV4LCB1Y2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAy
OgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNl
IDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wg
b3BlcmF0b3I9PSh1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54
ICYmIGEueSA9PSBiLnk7Cit9Citib29sIG9wZXJhdG9yPT0odXNob3J0MyBhLCB1c2hvcnQzIGIp
IHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9
Citib29sIG9wZXJhdG9yPT0odXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICByZXR1cm4gYS54
ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25h
dGl2ZSB1c2hvcnQgb3BlcmF0b3IueCh1c2hvcnQyKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iu
eSh1c2hvcnQyKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3IueCh1c2hvcnQzKTsKK25hdGl2ZSB1
c2hvcnQgb3BlcmF0b3IueSh1c2hvcnQzKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iueih1c2hv
cnQzKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3IueCh1c2hvcnQ0KTsKK25hdGl2ZSB1c2hvcnQg
b3BlcmF0b3IueSh1c2hvcnQ0KTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iueih1c2hvcnQ0KTsK
K25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iudyh1c2hvcnQ0KTsKK25hdGl2ZSB1c2hvcnQyIG9wZXJh
dG9yLng9KHVzaG9ydDIsIHVzaG9ydCk7CituYXRpdmUgdXNob3J0MiBvcGVyYXRvci55PSh1c2hv
cnQyLCB1c2hvcnQpOworbmF0aXZlIHVzaG9ydDMgb3BlcmF0b3IueD0odXNob3J0MywgdXNob3J0
KTsKK25hdGl2ZSB1c2hvcnQzIG9wZXJhdG9yLnk9KHVzaG9ydDMsIHVzaG9ydCk7CituYXRpdmUg
dXNob3J0MyBvcGVyYXRvci56PSh1c2hvcnQzLCB1c2hvcnQpOworbmF0aXZlIHVzaG9ydDQgb3Bl
cmF0b3IueD0odXNob3J0NCwgdXNob3J0KTsKK25hdGl2ZSB1c2hvcnQ0IG9wZXJhdG9yLnk9KHVz
aG9ydDQsIHVzaG9ydCk7CituYXRpdmUgdXNob3J0NCBvcGVyYXRvci56PSh1c2hvcnQ0LCB1c2hv
cnQpOworbmF0aXZlIHVzaG9ydDQgb3BlcmF0b3Iudz0odXNob3J0NCwgdXNob3J0KTsKK3VzaG9y
dCBvcGVyYXRvcltdKHVzaG9ydDIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgp
IHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2Fz
ZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorfQordXNob3J0IG9wZXJhdG9yW10odXNob3J0MyB2LCB1aW50IGlu
ZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAg
ICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55Owor
ICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9Cit1c2hvcnQgb3BlcmF0b3JbXSh1c2hvcnQ0
IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoK
KyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJl
dHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAg
ICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3VzaG9ydDIgb3BlcmF0b3JbXT0odXNob3J0MiB2
LCB1aW50IGluZGV4LCB1c2hvcnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAg
Y2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30K
K3VzaG9ydDMgb3BlcmF0b3JbXT0odXNob3J0MyB2LCB1aW50IGluZGV4LCB1c2hvcnQgYSkgewor
ICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0g
YTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2Lnkg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYu
eiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordXNob3J0NCBvcGVyYXRvcltdPSh1c2hv
cnQ0IHYsIHVpbnQgaW5kZXgsIHVzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1
cm4gdjsKK30KK2Jvb2wgb3BlcmF0b3I9PSh1aW50MiBhLCB1aW50MiBiKSB7CisgICAgcmV0dXJu
IGEueCA9PSBiLnggJiYgYS55ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PSh1aW50MyBhLCB1
aW50MyBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0g
Yi56OworfQorYm9vbCBvcGVyYXRvcj09KHVpbnQ0IGEsIHVpbnQ0IGIpIHsKKyAgICByZXR1cm4g
YS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30K
K25hdGl2ZSB1aW50IG9wZXJhdG9yLngodWludDIpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IueSh1
aW50Mik7CituYXRpdmUgdWludCBvcGVyYXRvci54KHVpbnQzKTsKK25hdGl2ZSB1aW50IG9wZXJh
dG9yLnkodWludDMpOworbmF0aXZlIHVpbnQgb3BlcmF0b3Iueih1aW50Myk7CituYXRpdmUgdWlu
dCBvcGVyYXRvci54KHVpbnQ0KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLnkodWludDQpOworbmF0
aXZlIHVpbnQgb3BlcmF0b3Iueih1aW50NCk7CituYXRpdmUgdWludCBvcGVyYXRvci53KHVpbnQ0
KTsKK25hdGl2ZSB1aW50MiBvcGVyYXRvci54PSh1aW50MiwgdWludCk7CituYXRpdmUgdWludDIg
b3BlcmF0b3IueT0odWludDIsIHVpbnQpOworbmF0aXZlIHVpbnQzIG9wZXJhdG9yLng9KHVpbnQz
LCB1aW50KTsKK25hdGl2ZSB1aW50MyBvcGVyYXRvci55PSh1aW50MywgdWludCk7CituYXRpdmUg
dWludDMgb3BlcmF0b3Iuej0odWludDMsIHVpbnQpOworbmF0aXZlIHVpbnQ0IG9wZXJhdG9yLng9
KHVpbnQ0LCB1aW50KTsKK25hdGl2ZSB1aW50NCBvcGVyYXRvci55PSh1aW50NCwgdWludCk7Citu
YXRpdmUgdWludDQgb3BlcmF0b3Iuej0odWludDQsIHVpbnQpOworbmF0aXZlIHVpbnQ0IG9wZXJh
dG9yLnc9KHVpbnQ0LCB1aW50KTsKK3VpbnQgb3BlcmF0b3JbXSh1aW50MiB2LCB1aW50IGluZGV4
KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICBy
ZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAg
ICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9Cit1aW50IG9wZXJhdG9y
W10odWludDMgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAg
Y2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAg
ICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYu
ejsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQordWludCBv
cGVyYXRvcltdKHVpbnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7Cisg
ICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJl
dHVybiB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3VpbnQyIG9wZXJhdG9y
W109KHVpbnQyIHYsIHVpbnQgaW5kZXgsIHVpbnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsK
KyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1
cm4gdjsKK30KK3VpbnQzIG9wZXJhdG9yW109KHVpbnQzIHYsIHVpbnQgaW5kZXgsIHVpbnQgYSkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2
LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAg
IHYueiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordWludDQgb3BlcmF0b3JbXT0odWlu
dDQgdiwgdWludCBpbmRleCwgdWludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAg
ICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4g
djsKK30KK2Jvb2wgb3BlcmF0b3I9PShjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAgcmV0dXJuIGEu
eCA9PSBiLnggJiYgYS55ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShjaGFyMyBhLCBjaGFy
MyBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56
OworfQorYm9vbCBvcGVyYXRvcj09KGNoYXI0IGEsIGNoYXI0IGIpIHsKKyAgICByZXR1cm4gYS54
ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25h
dGl2ZSBjaGFyIG9wZXJhdG9yLngoY2hhcjIpOworbmF0aXZlIGNoYXIgb3BlcmF0b3IueShjaGFy
Mik7CituYXRpdmUgY2hhciBvcGVyYXRvci54KGNoYXIzKTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9y
LnkoY2hhcjMpOworbmF0aXZlIGNoYXIgb3BlcmF0b3IueihjaGFyMyk7CituYXRpdmUgY2hhciBv
cGVyYXRvci54KGNoYXI0KTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9yLnkoY2hhcjQpOworbmF0aXZl
IGNoYXIgb3BlcmF0b3IueihjaGFyNCk7CituYXRpdmUgY2hhciBvcGVyYXRvci53KGNoYXI0KTsK
K25hdGl2ZSBjaGFyMiBvcGVyYXRvci54PShjaGFyMiwgY2hhcik7CituYXRpdmUgY2hhcjIgb3Bl
cmF0b3IueT0oY2hhcjIsIGNoYXIpOworbmF0aXZlIGNoYXIzIG9wZXJhdG9yLng9KGNoYXIzLCBj
aGFyKTsKK25hdGl2ZSBjaGFyMyBvcGVyYXRvci55PShjaGFyMywgY2hhcik7CituYXRpdmUgY2hh
cjMgb3BlcmF0b3Iuej0oY2hhcjMsIGNoYXIpOworbmF0aXZlIGNoYXI0IG9wZXJhdG9yLng9KGNo
YXI0LCBjaGFyKTsKK25hdGl2ZSBjaGFyNCBvcGVyYXRvci55PShjaGFyNCwgY2hhcik7CituYXRp
dmUgY2hhcjQgb3BlcmF0b3Iuej0oY2hhcjQsIGNoYXIpOworbmF0aXZlIGNoYXI0IG9wZXJhdG9y
Lnc9KGNoYXI0LCBjaGFyKTsKK2NoYXIgb3BlcmF0b3JbXShjaGFyMiB2LCB1aW50IGluZGV4KSB7
CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1
cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAg
ICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitjaGFyIG9wZXJhdG9yW10o
Y2hhcjMgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2Fz
ZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAg
ICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsK
KyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQorY2hhciBvcGVy
YXRvcltdKGNoYXI0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAg
ICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAg
ICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVy
biB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAg
IGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2NoYXIyIG9wZXJhdG9yW109
KGNoYXIyIHYsIHVpbnQgaW5kZXgsIGNoYXIgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAg
ICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4g
djsKK30KK2NoYXIzIG9wZXJhdG9yW109KGNoYXIzIHYsIHVpbnQgaW5kZXgsIGNoYXIgYSkgewor
ICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0g
YTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2Lnkg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYu
eiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorY2hhcjQgb3BlcmF0b3JbXT0oY2hhcjQg
diwgdWludCBpbmRleCwgY2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBj
YXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsK
K30KK2Jvb2wgb3BlcmF0b3I9PShzaG9ydDIgYSwgc2hvcnQyIGIpIHsKKyAgICByZXR1cm4gYS54
ID09IGIueCAmJiBhLnkgPT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KHNob3J0MyBhLCBzaG9y
dDMgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIu
ejsKK30KK2Jvb2wgb3BlcmF0b3I9PShzaG9ydDQgYSwgc2hvcnQ0IGIpIHsKKyAgICByZXR1cm4g
YS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30K
K25hdGl2ZSBzaG9ydCBvcGVyYXRvci54KHNob3J0Mik7CituYXRpdmUgc2hvcnQgb3BlcmF0b3Iu
eShzaG9ydDIpOworbmF0aXZlIHNob3J0IG9wZXJhdG9yLngoc2hvcnQzKTsKK25hdGl2ZSBzaG9y
dCBvcGVyYXRvci55KHNob3J0Myk7CituYXRpdmUgc2hvcnQgb3BlcmF0b3IueihzaG9ydDMpOwor
bmF0aXZlIHNob3J0IG9wZXJhdG9yLngoc2hvcnQ0KTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci55
KHNob3J0NCk7CituYXRpdmUgc2hvcnQgb3BlcmF0b3IueihzaG9ydDQpOworbmF0aXZlIHNob3J0
IG9wZXJhdG9yLncoc2hvcnQ0KTsKK25hdGl2ZSBzaG9ydDIgb3BlcmF0b3IueD0oc2hvcnQyLCBz
aG9ydCk7CituYXRpdmUgc2hvcnQyIG9wZXJhdG9yLnk9KHNob3J0Miwgc2hvcnQpOworbmF0aXZl
IHNob3J0MyBvcGVyYXRvci54PShzaG9ydDMsIHNob3J0KTsKK25hdGl2ZSBzaG9ydDMgb3BlcmF0
b3IueT0oc2hvcnQzLCBzaG9ydCk7CituYXRpdmUgc2hvcnQzIG9wZXJhdG9yLno9KHNob3J0Mywg
c2hvcnQpOworbmF0aXZlIHNob3J0NCBvcGVyYXRvci54PShzaG9ydDQsIHNob3J0KTsKK25hdGl2
ZSBzaG9ydDQgb3BlcmF0b3IueT0oc2hvcnQ0LCBzaG9ydCk7CituYXRpdmUgc2hvcnQ0IG9wZXJh
dG9yLno9KHNob3J0NCwgc2hvcnQpOworbmF0aXZlIHNob3J0NCBvcGVyYXRvci53PShzaG9ydDQs
IHNob3J0KTsKK3Nob3J0IG9wZXJhdG9yW10oc2hvcnQyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBz
d2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7
CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3Nob3J0IG9wZXJhdG9yW10oc2hvcnQz
IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoK
KyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJl
dHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3Nob3J0IG9wZXJhdG9y
W10oc2hvcnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAg
IGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAg
ICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2
Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3Nob3J0MiBvcGVyYXRvcltdPShz
aG9ydDIgdiwgdWludCBpbmRleCwgc2hvcnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAg
ICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4g
djsKK30KK3Nob3J0MyBvcGVyYXRvcltdPShzaG9ydDMgdiwgdWludCBpbmRleCwgc2hvcnQgYSkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2
LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAg
IHYueiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorc2hvcnQ0IG9wZXJhdG9yW109KHNo
b3J0NCB2LCB1aW50IGluZGV4LCBzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1
cm4gdjsKK30KK2Jvb2wgb3BlcmF0b3I9PShpbnQyIGEsIGludDIgYikgeworICAgIHJldHVybiBh
LnggPT0gYi54ICYmIGEueSA9PSBiLnk7Cit9Citib29sIG9wZXJhdG9yPT0oaW50MyBhLCBpbnQz
IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7
Cit9Citib29sIG9wZXJhdG9yPT0oaW50NCBhLCBpbnQ0IGIpIHsKKyAgICByZXR1cm4gYS54ID09
IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2
ZSBpbnQgb3BlcmF0b3IueChpbnQyKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueShpbnQyKTsKK25h
dGl2ZSBpbnQgb3BlcmF0b3IueChpbnQzKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueShpbnQzKTsK
K25hdGl2ZSBpbnQgb3BlcmF0b3IueihpbnQzKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueChpbnQ0
KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueShpbnQ0KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3Iueihp
bnQ0KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IudyhpbnQ0KTsKK25hdGl2ZSBpbnQyIG9wZXJhdG9y
Lng9KGludDIsIGludCk7CituYXRpdmUgaW50MiBvcGVyYXRvci55PShpbnQyLCBpbnQpOworbmF0
aXZlIGludDMgb3BlcmF0b3IueD0oaW50MywgaW50KTsKK25hdGl2ZSBpbnQzIG9wZXJhdG9yLnk9
KGludDMsIGludCk7CituYXRpdmUgaW50MyBvcGVyYXRvci56PShpbnQzLCBpbnQpOworbmF0aXZl
IGludDQgb3BlcmF0b3IueD0oaW50NCwgaW50KTsKK25hdGl2ZSBpbnQ0IG9wZXJhdG9yLnk9KGlu
dDQsIGludCk7CituYXRpdmUgaW50NCBvcGVyYXRvci56PShpbnQ0LCBpbnQpOworbmF0aXZlIGlu
dDQgb3BlcmF0b3Iudz0oaW50NCwgaW50KTsKK2ludCBvcGVyYXRvcltdKGludDIgdiwgdWludCBp
bmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAg
ICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsK
KyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQoraW50IG9wZXJh
dG9yW10oaW50MyB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAg
ICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAg
ICAgICAgICByZXR1cm4gdi55OworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICByZXR1cm4g
di56OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitpbnQg
b3BlcmF0b3JbXShpbnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7Cisg
ICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJl
dHVybiB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2ludDIgb3BlcmF0b3Jb
XT0oaW50MiB2LCB1aW50IGluZGV4LCBpbnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAg
ICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4g
djsKK30KK2ludDMgb3BlcmF0b3JbXT0oaW50MyB2LCB1aW50IGluZGV4LCBpbnQgYSkgeworICAg
IHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBh
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRy
YXA7CisgICAgfQorICAgIHJldHVybiB2OworfQoraW50NCBvcGVyYXRvcltdPShpbnQ0IHYsIHVp
bnQgaW5kZXgsIGludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6
CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
MToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jv
b2wgb3BlcmF0b3I9PShoYWxmMiBhLCBoYWxmMiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLngg
JiYgYS55ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShoYWxmMyBhLCBoYWxmMyBiKSB7Cisg
ICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9v
bCBvcGVyYXRvcj09KGhhbGY0IGEsIGhhbGY0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAm
JiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBoYWxm
IG9wZXJhdG9yLngoaGFsZjIpOworbmF0aXZlIGhhbGYgb3BlcmF0b3IueShoYWxmMik7CituYXRp
dmUgaGFsZiBvcGVyYXRvci54KGhhbGYzKTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9yLnkoaGFsZjMp
OworbmF0aXZlIGhhbGYgb3BlcmF0b3IueihoYWxmMyk7CituYXRpdmUgaGFsZiBvcGVyYXRvci54
KGhhbGY0KTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9yLnkoaGFsZjQpOworbmF0aXZlIGhhbGYgb3Bl
cmF0b3IueihoYWxmNCk7CituYXRpdmUgaGFsZiBvcGVyYXRvci53KGhhbGY0KTsKK25hdGl2ZSBo
YWxmMiBvcGVyYXRvci54PShoYWxmMiwgaGFsZik7CituYXRpdmUgaGFsZjIgb3BlcmF0b3IueT0o
aGFsZjIsIGhhbGYpOworbmF0aXZlIGhhbGYzIG9wZXJhdG9yLng9KGhhbGYzLCBoYWxmKTsKK25h
dGl2ZSBoYWxmMyBvcGVyYXRvci55PShoYWxmMywgaGFsZik7CituYXRpdmUgaGFsZjMgb3BlcmF0
b3Iuej0oaGFsZjMsIGhhbGYpOworbmF0aXZlIGhhbGY0IG9wZXJhdG9yLng9KGhhbGY0LCBoYWxm
KTsKK25hdGl2ZSBoYWxmNCBvcGVyYXRvci55PShoYWxmNCwgaGFsZik7CituYXRpdmUgaGFsZjQg
b3BlcmF0b3Iuej0oaGFsZjQsIGhhbGYpOworbmF0aXZlIGhhbGY0IG9wZXJhdG9yLnc9KGhhbGY0
LCBoYWxmKTsKK2hhbGYgb3BlcmF0b3JbXShoYWxmMiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dp
dGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54Owor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitoYWxmIG9wZXJhdG9yW10oaGFsZjMgdiwg
dWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAg
ICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJu
IHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAg
ZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQoraGFsZiBvcGVyYXRvcltdKGhh
bGY0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2Ug
MDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAg
IHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7Cisg
ICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2hhbGYyIG9wZXJhdG9yW109KGhhbGYyIHYs
IHVpbnQgaW5kZXgsIGhhbGYgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2Fz
ZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2hh
bGYzIG9wZXJhdG9yW109KGhhbGYzIHYsIHVpbnQgaW5kZXgsIGhhbGYgYSkgeworICAgIHN3aXRj
aCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7Cisg
ICAgfQorICAgIHJldHVybiB2OworfQoraGFsZjQgb3BlcmF0b3JbXT0oaGFsZjQgdiwgdWludCBp
bmRleCwgaGFsZiBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAy
OgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNl
IDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wg
b3BlcmF0b3I9PShmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAm
JiBhLnkgPT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0MyBhLCBmbG9hdDMgYikgewor
ICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jv
b2wgb3BlcmF0b3I9PShmbG9hdDQgYSwgZmxvYXQ0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIu
eCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBm
bG9hdCBvcGVyYXRvci54KGZsb2F0Mik7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueShmbG9hdDIp
OworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLngoZmxvYXQzKTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRv
ci55KGZsb2F0Myk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueihmbG9hdDMpOworbmF0aXZlIGZs
b2F0IG9wZXJhdG9yLngoZmxvYXQ0KTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvci55KGZsb2F0NCk7
CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueihmbG9hdDQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9y
LncoZmxvYXQ0KTsKK25hdGl2ZSBmbG9hdDIgb3BlcmF0b3IueD0oZmxvYXQyLCBmbG9hdCk7Citu
YXRpdmUgZmxvYXQyIG9wZXJhdG9yLnk9KGZsb2F0MiwgZmxvYXQpOworbmF0aXZlIGZsb2F0MyBv
cGVyYXRvci54PShmbG9hdDMsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDMgb3BlcmF0b3IueT0oZmxv
YXQzLCBmbG9hdCk7CituYXRpdmUgZmxvYXQzIG9wZXJhdG9yLno9KGZsb2F0MywgZmxvYXQpOwor
bmF0aXZlIGZsb2F0NCBvcGVyYXRvci54PShmbG9hdDQsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDQg
b3BlcmF0b3IueT0oZmxvYXQ0LCBmbG9hdCk7CituYXRpdmUgZmxvYXQ0IG9wZXJhdG9yLno9KGZs
b2F0NCwgZmxvYXQpOworbmF0aXZlIGZsb2F0NCBvcGVyYXRvci53PShmbG9hdDQsIGZsb2F0KTsK
K2Zsb2F0IG9wZXJhdG9yW10oZmxvYXQyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGlu
ZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAg
IGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KK30KK2Zsb2F0IG9wZXJhdG9yW10oZmxvYXQzIHYsIHVpbnQg
aW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAg
ICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7
CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2Zsb2F0IG9wZXJhdG9yW10oZmxvYXQ0
IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoK
KyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJl
dHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAg
ICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2Zsb2F0MiBvcGVyYXRvcltdPShmbG9hdDIgdiwg
dWludCBpbmRleCwgZmxvYXQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2Fz
ZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Zs
b2F0MyBvcGVyYXRvcltdPShmbG9hdDMgdiwgdWludCBpbmRleCwgZmxvYXQgYSkgeworICAgIHN3
aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOwor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7
CisgICAgfQorICAgIHJldHVybiB2OworfQorZmxvYXQ0IG9wZXJhdG9yW109KGZsb2F0NCB2LCB1
aW50IGluZGV4LCBmbG9hdCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNl
IDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNh
c2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
Y2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30K
KworbmF0aXZlIGhhbGYyIG9wZXJhdG9yW10oaGFsZjJ4MiwgdWludCk7CituYXRpdmUgaGFsZjJ4
MiBvcGVyYXRvcltdPShoYWxmMngyLCB1aW50LCBoYWxmMik7CituYXRpdmUgaGFsZjMgb3BlcmF0
b3JbXShoYWxmMngzLCB1aW50KTsKK25hdGl2ZSBoYWxmMngzIG9wZXJhdG9yW109KGhhbGYyeDMs
IHVpbnQsIGhhbGYzKTsKK25hdGl2ZSBoYWxmNCBvcGVyYXRvcltdKGhhbGYyeDQsIHVpbnQpOwor
bmF0aXZlIGhhbGYyeDQgb3BlcmF0b3JbXT0oaGFsZjJ4NCwgdWludCwgaGFsZjQpOworbmF0aXZl
IGhhbGYyIG9wZXJhdG9yW10oaGFsZjN4MiwgdWludCk7CituYXRpdmUgaGFsZjN4MiBvcGVyYXRv
cltdPShoYWxmM3gyLCB1aW50LCBoYWxmMik7CituYXRpdmUgaGFsZjMgb3BlcmF0b3JbXShoYWxm
M3gzLCB1aW50KTsKK25hdGl2ZSBoYWxmM3gzIG9wZXJhdG9yW109KGhhbGYzeDMsIHVpbnQsIGhh
bGYzKTsKK25hdGl2ZSBoYWxmNCBvcGVyYXRvcltdKGhhbGYzeDQsIHVpbnQpOworbmF0aXZlIGhh
bGYzeDQgb3BlcmF0b3JbXT0oaGFsZjN4NCwgdWludCwgaGFsZjQpOworbmF0aXZlIGhhbGYyIG9w
ZXJhdG9yW10oaGFsZjR4MiwgdWludCk7CituYXRpdmUgaGFsZjR4MiBvcGVyYXRvcltdPShoYWxm
NHgyLCB1aW50LCBoYWxmMik7CituYXRpdmUgaGFsZjMgb3BlcmF0b3JbXShoYWxmNHgzLCB1aW50
KTsKK25hdGl2ZSBoYWxmNHgzIG9wZXJhdG9yW109KGhhbGY0eDMsIHVpbnQsIGhhbGYzKTsKK25h
dGl2ZSBoYWxmNCBvcGVyYXRvcltdKGhhbGY0eDQsIHVpbnQpOworbmF0aXZlIGhhbGY0eDQgb3Bl
cmF0b3JbXT0oaGFsZjR4NCwgdWludCwgaGFsZjQpOworbmF0aXZlIGZsb2F0MiBvcGVyYXRvcltd
KGZsb2F0MngyLCB1aW50KTsKK25hdGl2ZSBmbG9hdDJ4MiBvcGVyYXRvcltdPShmbG9hdDJ4Miwg
dWludCwgZmxvYXQyKTsKK25hdGl2ZSBmbG9hdDMgb3BlcmF0b3JbXShmbG9hdDJ4MywgdWludCk7
CituYXRpdmUgZmxvYXQyeDMgb3BlcmF0b3JbXT0oZmxvYXQyeDMsIHVpbnQsIGZsb2F0Myk7Citu
YXRpdmUgZmxvYXQ0IG9wZXJhdG9yW10oZmxvYXQyeDQsIHVpbnQpOworbmF0aXZlIGZsb2F0Mng0
IG9wZXJhdG9yW109KGZsb2F0Mng0LCB1aW50LCBmbG9hdDQpOworbmF0aXZlIGZsb2F0MiBvcGVy
YXRvcltdKGZsb2F0M3gyLCB1aW50KTsKK25hdGl2ZSBmbG9hdDN4MiBvcGVyYXRvcltdPShmbG9h
dDN4MiwgdWludCwgZmxvYXQyKTsKK25hdGl2ZSBmbG9hdDMgb3BlcmF0b3JbXShmbG9hdDN4Mywg
dWludCk7CituYXRpdmUgZmxvYXQzeDMgb3BlcmF0b3JbXT0oZmxvYXQzeDMsIHVpbnQsIGZsb2F0
Myk7CituYXRpdmUgZmxvYXQ0IG9wZXJhdG9yW10oZmxvYXQzeDQsIHVpbnQpOworbmF0aXZlIGZs
b2F0M3g0IG9wZXJhdG9yW109KGZsb2F0M3g0LCB1aW50LCBmbG9hdDQpOworbmF0aXZlIGZsb2F0
MiBvcGVyYXRvcltdKGZsb2F0NHgyLCB1aW50KTsKK25hdGl2ZSBmbG9hdDR4MiBvcGVyYXRvcltd
PShmbG9hdDR4MiwgdWludCwgZmxvYXQyKTsKK25hdGl2ZSBmbG9hdDMgb3BlcmF0b3JbXShmbG9h
dDR4MywgdWludCk7CituYXRpdmUgZmxvYXQ0eDMgb3BlcmF0b3JbXT0oZmxvYXQ0eDMsIHVpbnQs
IGZsb2F0Myk7CituYXRpdmUgZmxvYXQ0IG9wZXJhdG9yW10oZmxvYXQ0eDQsIHVpbnQpOworbmF0
aXZlIGZsb2F0NHg0IG9wZXJhdG9yW109KGZsb2F0NHg0LCB1aW50LCBmbG9hdDQpOworCitoYWxm
MngyIG9wZXJhdG9yKyhoYWxmMngyIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitgOworCisvLyBGSVhNRTogT25jZSB0aGUgc3RhbmRhcmQgbGlicmFyeSBoYXMg
YmVlbiByZXBsYWNlZCB3aXRoIGEgbmV3IHZlcnNpb24sIHRoaXMgY29tbWVudHMgc2hvdWxkIGJl
IHJlbW92ZWQuCisvLyBUaGlzIGxpc3QgaXMgdXNlZCB0byByZXN0cmljdCB0aGUgYXZhaWxhYmls
aXR5IG9mIHZlY3RvciB0eXBlcyBhdmFpbGFibGUgaW4gdGhlIGxhbmdhdWdlLgorLy8gUGVybWlz
c2libGUgdmVjdG9yIGVsZW1lbnQgdHlwZXMgbXVzdCBhcHBlYXIgaW4gdGhpcyBsaXN0IGFuZCBp
biB0aGUgc3RhbmRhcmQgbGlicmFyeQorY29uc3QgVmVjdG9yRWxlbWVudFR5cGVzID0gWyAiYm9v
bCIsICJ1Y2hhciIsICJjaGFyIiwgInVzaG9ydCIsICJzaG9ydCIsICJ1aW50IiwgImludCIsICJo
YWxmIiwgImZsb2F0IiBdOworY29uc3QgVmVjdG9yRWxlbWVudFNpemVzID0gWyAyLCAzLCA0IF07
CisKK2Z1bmN0aW9uIGFsbFZlY3RvclR5cGVOYW1lcygpCit7CisgICAgY29uc3QgbmFtZXMgPSBb
XTsKKyAgICBmb3IgKGxldCBlbGVtZW50VHlwZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMpIHsKKyAg
ICAgICAgZm9yIChsZXQgc2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpCisgICAgICAgICAgICBu
YW1lcy5wdXNoKGAke2VsZW1lbnRUeXBlfSR7c2l6ZX1gKTsKKyAgICB9CisgICAgcmV0dXJuIG5h
bWVzOworfQogCiAvLyBGSVhNRTogVGhlc2UgbmVlZCB0byBiZSBpbmNsdWRlZCBhcyBzb3VyY2Ug
aW4gdGhlIHN0YW5kYXJkIGxpYnJhcnkuCiBzdGFuZGFyZExpYnJhcnkgKz0gU3dpenpsZU9wLmZ1
bmN0aW9ucygpLmpvaW4oIjtcbiIpICsgIjtcbiI7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1lbnRDbG9uZXIuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9TdGF0ZW1lbnRDbG9uZXIuanMKaW5kZXggYjM5NDhjNDUwYzcxNjA5Nzc5NzVl
ZDRlOGU5OGVkOTljNGY3YTA1OS4uMGQwNzE1YTk4NTRkZWYxYmZkMmE4MDhjNzQwNDExMmJhMWE0
YTBjMSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhdGVtZW50
Q2xvbmVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YXRlbWVudENs
b25lci5qcwpAQCAtNTAsNyArNTAsNyBAQCBjbGFzcyBTdGF0ZW1lbnRDbG9uZXIgZXh0ZW5kcyBS
ZXdyaXRlciB7CiAgICAgCiAgICAgdmlzaXROYXRpdmVUeXBlKG5vZGUpCiAgICAgewotICAgICAg
ICByZXR1cm4gbmV3IE5hdGl2ZVR5cGUobm9kZS5vcmlnaW4sIG5vZGUubmFtZSk7CisgICAgICAg
IHJldHVybiBuZXcgTmF0aXZlVHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lLCBub2RlLnR5cGVB
cmd1bWVudHMubWFwKGFyZ3VtZW50ID0+IGFyZ3VtZW50LnZpc2l0KHRoaXMpKSk7CiAgICAgfQog
ICAgIAogICAgIHZpc2l0VHlwZURlZihub2RlKQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rv
ck9wZXJhdG9yLmpzCmluZGV4IGZlZmU5YzAzZDdiMTBiMzExNmIzYjY3ZjJhZjA1N2YxNmZjMTUx
NmMuLmRjNTA2NTM4ZDFjNmM3MTA5YjFhZDFlY2JhM2NlYzI3OGQwZjdiNWMgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0
b3JPcGVyYXRvci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVz
aXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanMKQEAgLTQ1LDYgKzQ1LDE4IEBAIGZ1bmN0
aW9uIHN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcihwcm9ncmFtKQogICAgICAg
ICAgICAgdHlwZXMuYWRkKG5vZGUpOwogICAgICAgICAgICAgc3VwZXIudmlzaXRFbGVtZW50YWxU
eXBlKG5vZGUpOwogICAgICAgICB9CisKKyAgICAgICAgdmlzaXRWZWN0b3JUeXBlKG5vZGUpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIHR5cGVzLmFkZChub2RlKTsKKyAgICAgICAgICAgIHN1cGVy
LnZpc2l0VmVjdG9yVHlwZShub2RlKTsKKyAgICAgICAgfQorCisgICAgICAgIHZpc2l0TWF0cml4
VHlwZShub2RlKQorICAgICAgICB7CisgICAgICAgICAgICB0eXBlcy5hZGQobm9kZSk7CisgICAg
ICAgICAgICBzdXBlci52aXNpdE1hdHJpeFR5cGUobm9kZSk7CisgICAgICAgIH0KICAgICB9CiAK
ICAgICBwcm9ncmFtLnZpc2l0KG5ldyBGaW5kQWxsVHlwZXMoKSk7CmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpzIGIvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcwpkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjk1ZmUxMzc1M2QwYTI2NDNiMDk1YjUzNGIxMTky
MTdmNjI1MzhiMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpz
CisrKyAvZGV2L251bGwKQEAgLTEsMzcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
OCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
Ci0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0g
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLiAKLSAqLwotInVzZSBzdHJpY3QiOwotCi1mdW5jdGlvbiBzeW50aGVzaXpl
T3BlcmF0b3JCb29sKHByb2dyYW0pCi17Ci0gICAgZm9yIChsZXQgdHlwZSBvZiBwcm9ncmFtLnR5
cGVzLnZhbHVlcygpKSB7Ci0gICAgICAgIGlmICghKHR5cGUgaW5zdGFuY2VvZiBTdHJ1Y3RUeXBl
KSAmJiAhKHR5cGUgaW5zdGFuY2VvZiBFbnVtVHlwZSkpCi0gICAgICAgICAgICBjb250aW51ZTsK
LSAgICAgICAgY29uc3QgZnVuYyA9IG5ldyBOYXRpdmVGdW5jKHR5cGUub3JpZ2luLCAib3BlcmF0
b3IgY2FzdCIsIFR5cGVSZWYud3JhcChwcm9ncmFtLnR5cGVzLmdldCgiYm9vbCIpKSwgWyBuZXcg
RnVuY1BhcmFtZXRlcih0eXBlLm9yaWdpbiwgbnVsbCwgVHlwZVJlZi53cmFwKHR5cGUpKSBdLCB0
cnVlLCBudWxsKTsKLSAgICAgICAgY29uc3Qgb3BlcmF0b3JCb29sID0gbmV3IE9wZXJhdG9yQm9v
bCh0eXBlLm5hbWUpOwotICAgICAgICBvcGVyYXRvckJvb2wuaW5zdGFudGlhdGVJbXBsZW1lbnRh
dGlvbihmdW5jKTsKLSAgICAgICAgcHJvZ3JhbS5hZGQoZnVuYyk7Ci0gICAgfQotfQpkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vz
c29ycy5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVTdHJ1Y3RB
Y2Nlc3NvcnMuanMKaW5kZXggYmZlNjA0NDk0ZGM3MjVhZTdlNzRhZDRhMGJmZTIzZTkzYzA5MTc3
Ni4uYTAxODE0NjhhMjVlZDRjMDkwNTBkN2JmMWQ2MWY0NGVkM2EwYWE2NiAxMDA2NDQKLS0tIGEv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5q
cworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplU3RydWN0QWNj
ZXNzb3JzLmpzCkBAIC01MSw3ICs1MSw3IEBAIGZ1bmN0aW9uIHN5bnRoZXNpemVTdHJ1Y3RBY2Nl
c3NvcnMocHJvZ3JhbSkKICAgICAgICAgICAgIAogICAgICAgICAgICAgZnVuY3Rpb24gY3JlYXRl
VHlwZVJlZigpCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIFR5cGVSZWYu
aW5zdGFudGlhdGUodHlwZSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIFR5cGVSZWYud3JhcCh0
eXBlKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIAogICAgICAgICAgICAgbGV0IGlzQ2Fz
dCA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVz
dC5odG1sIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5odG1sCmluZGV4IDEz
ZjM1ODIzOTkyOWQ4YTNlNmFjZTUyNTQ1YjkxY2E1MmQ2MDYwZTQuLmUzYzQ1NzljYjcwNzdhMzBk
YzRmNDc2ODY5OTc3ZjAwZTM1ODZjYmMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1Rlc3QuaHRtbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9U
ZXN0Lmh0bWwKQEAgLTIzLDEyICsyMywxMSBAQAogPHNjcmlwdCBzcmM9IkJsb2NrLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJCb29sTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iQnJlYWsuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IkJ1aWx0aW5NYXRyaXhHZXR0ZXIu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IkJ1aWx0aW5NYXRyaXhTZXR0ZXIuanMiPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuanMiPjwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9IkJ1aWx0aW5WZWN0b3JTZXR0ZXIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IkJ1
aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iQnVpbHRp
blZlY3RvckluZGV4U2V0dGVyLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJCdWlsdGluVmVj
dG9yRXF1YWxpdHlPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2FsbEV4cHJl
c3Npb24uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkNhbGxGdW5jdGlvbi5qcyI+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2suanMiPjwvc2NyaXB0PgpAQCAtMzcsNiArMzYsNyBAQAog
PHNjcmlwdCBzcmM9IkNoZWNrUmVjdXJzaW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJD
aGVja1JlY3Vyc2l2ZVR5cGVzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja1JldHVy
bnMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IkNoZWNrVHlwZXNXaXRoQXJndW1lbnRzLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja1VucmVhY2hhYmxlQ29kZS5qcyI+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tXcmFwcGVkLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJDaGVja2VyLmpzIj48L3NjcmlwdD4KQEAgLTg5LDYgKzg5LDcgQEAKIDxzY3JpcHQgc3JjPSJM
b29wQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTWFrZUFycmF5UmVmRXhwcmVz
c2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTWFrZVB0ckV4cHJlc3Npb24uanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ik1hdHJpeFR5cGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBz
cmM9Ik5hbWVDb250ZXh0LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOYW1lRmluZGVyLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOYW1lUmVzb2x2ZXIuanMiPjwvc2NyaXB0PgpAQCAt
OTYsOSArOTcsOCBAQAogPHNjcmlwdCBzcmM9Ik5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMi
Pjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik51bGxMaXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJOdWxsVHlwZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRl
ckluZGV4LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJPcGVyYXRvckFuZGVySW5kZXhlci5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iT3BlcmF0b3JBcnJheVJlZkxlbmd0aC5qcyI+PC9z
Y3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3BlcmF0b3JCb29sLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQg
c3JjPSJPcmlnaW5LaW5kLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJQYXJzZS5qcyI+PC9zY3Jp
cHQ+CkBAIC0xMTAsNyArMTEwLDYgQEAKIDxzY3JpcHQgc3JjPSJSZWFkTW9kaWZ5V3JpdGVFeHBy
ZXNzaW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZWN1cnNpb25DaGVja2VyLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZWN1cnNpdmVUeXBlQ2hlY2tlci5qcyI+PC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0iUmVtb3ZlVHlwZUFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iUmVzb2x2ZU5hbWVzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZXNvbHZlT3Zl
cmxvYWRJbXBsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZXNvbHZlUHJvcGVydGllcy5q
cyI+PC9zY3JpcHQ+CkBAIC0xMjcsMTMgKzEyNiwxMyBAQAogPHNjcmlwdCBzcmM9IlN5bnRoZXNp
emVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVz
aXplRW51bUZ1bmN0aW9ucy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZVN0
cnVjdEFjY2Vzc29ycy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iU3ludGhlc2l6ZU9wZXJh
dG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUNvcHlDb25zdHJ1
Y3Rvck9wZXJhdG9yLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplRGVmYXVs
dENvbnN0cnVjdG9yT3BlcmF0b3IuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlRyYXBTdGF0
ZW1lbnQuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVEZWYuanMiPjwvc2NyaXB0Pgog
PHNjcmlwdCBzcmM9IlR5cGVEZWZSZXNvbHZlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
VHlwZVJlZi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iVHlwZU92ZXJsb2FkUmVzb2x1dGlv
bkZhaWx1cmUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVkVmFsdWUuanMiPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9IlVpbnRMaXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJVaW50TGl0ZXJhbFR5cGUuanMiPjwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Rlc3QuanMKaW5kZXggZGY0MTdkYWJmNmQ4NzEzNWU3MzVjYThjOWIxYmYxM2FiNjQwNzVhMS4u
YjM1OThkZDdmYTE4OGU4ZWQ0YjA0ZWEwZjRlZDg0NmU2NzYyODZhMCAxMDA2NDQKLS0tIGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCkBAIC0yMTUzLDQxICsyMTUzLDYgQEAgdGVzdHMub3BlcmF0
b3JCb29sID0gZnVuY3Rpb24oKQogCiAgICAgICAgIGJvb2wgYm9vbEZyb21GbG9hdEZhbHNlKCkg
eyByZXR1cm4gYm9vbChmbG9hdCgwKSk7IH0KICAgICAgICAgYm9vbCBib29sRnJvbUZsb2F0VHJ1
ZSgpIHsgcmV0dXJuIGJvb2woZmxvYXQoMSkpOyB9Ci0KLSAgICAgICAgYm9vbCBib29sRnJvbUlu
dDJGYWxzZSgpIHsgcmV0dXJuIGJvb2woaW50MigwLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29s
RnJvbUludDJUcnVlMSgpIHsgcmV0dXJuIGJvb2woaW50MigxLCAwKSk7IH0KLSAgICAgICAgYm9v
bCBib29sRnJvbUludDJUcnVlMigpIHsgcmV0dXJuIGJvb2woaW50MigwLCAxKSk7IH0KLQotICAg
ICAgICBib29sIGJvb2xGcm9tRmxvYXQzRmFsc2UoKSB7IHJldHVybiBib29sKGZsb2F0MygwLCAw
LCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUZsb2F0M1RydWUxKCkgeyByZXR1cm4gYm9v
bChmbG9hdDMoMSwgMCwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21GbG9hdDNUcnVlMigp
IHsgcmV0dXJuIGJvb2woZmxvYXQzKDAsIDEsIDApKTsgfQotICAgICAgICBib29sIGJvb2xGcm9t
RmxvYXQzVHJ1ZTMoKSB7IHJldHVybiBib29sKGZsb2F0MygwLCAwLCAxKSk7IH0KLQotICAgICAg
ICBib29sIGJvb2xGcm9tVWludDRGYWxzZSgpIHsgcmV0dXJuIGJvb2wodWludDQoMCwgMCwgMCwg
MCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21VaW50NFRydWUxKCkgeyByZXR1cm4gYm9vbCh1
aW50NCgxLCAwLCAwLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbVVpbnQ0VHJ1ZTIoKSB7
IHJldHVybiBib29sKHVpbnQ0KDAsIDEsIDAsIDApKTsgfQotICAgICAgICBib29sIGJvb2xGcm9t
VWludDRUcnVlMygpIHsgcmV0dXJuIGJvb2wodWludDQoMCwgMCwgMSwgMCkpOyB9Ci0gICAgICAg
IGJvb2wgYm9vbEZyb21VaW50NFRydWU0KCkgeyByZXR1cm4gYm9vbCh1aW50NCgwLCAwLCAwLCAx
KSk7IH0KLQotICAgICAgICBzdHJ1Y3QgWCB7IGludCB4OyB9Ci0KLSAgICAgICAgYm9vbCBib29s
RnJvbVN0cnVjdEZhbHNlKCkKLSAgICAgICAgewotICAgICAgICAgICAgWCB4OwotICAgICAgICAg
ICAgcmV0dXJuIGJvb2woeCk7Ci0gICAgICAgIH0KLQotICAgICAgICBib29sIGJvb2xGcm9tU3Ry
dWN0VHJ1ZSgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIFggeDsKLSAgICAgICAgICAgIHgueCA9
IDE7Ci0gICAgICAgICAgICByZXR1cm4gYm9vbCh4KTsKLSAgICAgICAgfQotCi0gICAgICAgIGVu
dW0gWSB7IEEsIEIgfQotCi0gICAgICAgIGJvb2wgYm9vbEZyb21FbnVtRmFsc2UoKSB7IHJldHVy
biBib29sKFkuQSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUVudW1UcnVlKCkgeyByZXR1cm4g
Ym9vbChZLkIpOyB9CiAgICAgYCk7CiAKICAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0
aW9uKHByb2dyYW0sICJib29sRnJvbVVjaGFyRmFsc2UiLCBbXSksIGZhbHNlKTsKQEAgLTIyMDEs
MjcgKzIxNjYsNiBAQCB0ZXN0cy5vcGVyYXRvckJvb2wgPSBmdW5jdGlvbigpCiAKICAgICBjaGVj
a0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUZsb2F0RmFsc2Ui
LCBbXSksIGZhbHNlKTsKICAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dy
YW0sICJib29sRnJvbUZsb2F0VHJ1ZSIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBjaGVja0Jvb2wocHJv
Z3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUludDJGYWxzZSIsIFtdKSwgZmFs
c2UpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xG
cm9tSW50MlRydWUxIiwgW10pLCB0cnVlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1
bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUludDJUcnVlMiIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBj
aGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUZsb2F0M0Zh
bHNlIiwgW10pLCBmYWxzZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihw
cm9ncmFtLCAiYm9vbEZyb21GbG9hdDNUcnVlMSIsIFtdKSwgdHJ1ZSk7Ci0gICAgY2hlY2tCb29s
KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdDNUcnVlMiIsIFtd
KSwgdHJ1ZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAi
Ym9vbEZyb21GbG9hdDNUcnVlMyIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBjaGVja0Jvb2wocHJvZ3Jh
bSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbVVpbnQ0RmFsc2UiLCBbXSksIGZhbHNl
KTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJv
bVVpbnQ0VHJ1ZTEiLCBbXSksIHRydWUpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVu
Y3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tVWludDRUcnVlMiIsIFtdKSwgdHJ1ZSk7Ci0gICAgY2hl
Y2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21VaW50NFRydWUz
IiwgW10pLCB0cnVlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dy
YW0sICJib29sRnJvbVVpbnQ0VHJ1ZTQiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHBy
b2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21TdHJ1Y3RGYWxzZSIsIFtdKSwg
ZmFsc2UpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJv
b2xGcm9tU3RydWN0VHJ1ZSIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwg
Y2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUVudW1GYWxzZSIsIFtdKSwgZmFsc2UpOwot
ICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tRW51
bVRydWUiLCBbXSksIHRydWUpOwogfQogCiB0ZXN0cy5ib29sQml0QW5kID0gZnVuY3Rpb24oKQpA
QCAtMjg4MSw3ICsyODI1LDcgQEAgdGVzdHMuc2hhZGVyVHlwZXMgPSBmdW5jdGlvbigpCiAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICBmcmFnbWVudCBCb28gYmFyKEZvbyBzdGFnZUluKQogICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIHJldHVybiBib28oKTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gQm9vKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgIGApLAogICAgICAgICAoZSkg
PT4gZSBpbnN0YW5jZW9mIFdUeXBlRXJyb3IpOwpAQCAtMjkwNCw3ICsyODQ4LDcgQEAgdGVzdHMu
c2hhZGVyVHlwZXMgPSBmdW5jdGlvbigpCiAKIHRlc3RzLnZlY3RvclR5cGVTeW50YXggPSBmdW5j
dGlvbigpCiB7Ci0gICAgY29uc3QgcHJvZ3JhbSA9IGRvUHJlcChgCisgICAgbGV0IHByb2dyYW0g
PSBkb1ByZXAoYAogICAgICAgICBpbnQgZm9vMigpCiAgICAgICAgIHsKICAgICAgICAgICAgIGlu
dDIgeDsKQEAgLTI5MzksNyArMjg4MywyNiBAQCB0ZXN0cy52ZWN0b3JUeXBlU3ludGF4ID0gZnVu
Y3Rpb24oKQogICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiZm9v
MiIsIFtdKSwgNCk7CiAgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0s
ICJmb28zIiwgW10pLCA1KTsKICAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJv
Z3JhbSwgImZvbzQiLCBbXSksIDYpOworICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rp
b24ocHJvZ3JhbSwgInZlYzJPcGVyYXRvckNhc3QiLCBbXSksIHRydWUpOworCisgICAgcHJvZ3Jh
bSA9IGRvUHJlcChgCisgICAgICAgIHR5cGVkZWYgaSA9IGludDsKKyAgICAgICAgaW50IGZvbzIo
KQorICAgICAgICB7CisgICAgICAgICAgICBpbnQyIHg7CisgICAgICAgICAgICB2ZWN0b3I8aSwg
Mj4geiA9IGludDIoMywgNCk7CisgICAgICAgICAgICB4ID0gejsKKyAgICAgICAgICAgIHJldHVy
biB4Lnk7CisgICAgICAgIH0KKworICAgICAgICBib29sIHZlYzJPcGVyYXRvckNhc3QoKQorICAg
ICAgICB7CisgICAgICAgICAgICBpbnQyIHggPSB2ZWN0b3I8aSwyPigxLCAyKTsKKyAgICAgICAg
ICAgIHZlY3RvcjxpLCAyPiB5ID0gaW50MigxLCAyKTsKKyAgICAgICAgICAgIHJldHVybiB4ID09
IHkgJiYgeC54ID09IDEgJiYgeC55ID09IDIgJiYgeS54ID09IDEgJiYgeS55ID09IDI7CisgICAg
ICAgIH1gKTsKIAorICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAi
Zm9vMiIsIFtdKSwgNCk7CiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9n
cmFtLCAidmVjMk9wZXJhdG9yQ2FzdCIsIFtdKSwgdHJ1ZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJl
LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZU92ZXJsb2FkUmVzb2x1dGlv
bkZhaWx1cmUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDVjYjNmNzEwZmEwY2UwM2QyOTAyZmEzMmVkOGIwMjc1
ZmI2MjYwOAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1R5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzCkBAIC0wLDAgKzEsNDIgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKwor
Y2xhc3MgVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUgeworICAgIGNvbnN0cnVjdG9yKHR5
cGUsIHJlYXNvbikKKyAgICB7CisgICAgICAgIHRoaXMuX3R5cGUgPSB0eXBlOworICAgICAgICB0
aGlzLl9yZWFzb24gPSByZWFzb247CisgICAgfQorICAgIAorICAgIGdldCB0eXBlKCkgeyByZXR1
cm4gdGhpcy5fdHlwZTsgfQorICAgIGdldCByZWFzb24oKSB7IHJldHVybiB0aGlzLl9yZWFzb247
IH0KKyAgICAKKyAgICB0b1N0cmluZygpCisgICAgeworICAgICAgICByZXR1cm4gdGhpcy50eXBl
LnRvU3RyaW5nKCkgKyAiIGRpZCBub3QgbWF0Y2ggYmVjYXVzZTogIiArIHRoaXMucmVhc29uOwor
ICAgIH0KK30KKwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlw
ZVJlZi5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVSZWYuanMKaW5kZXgg
YjVmM2MwYjNkOTI1MzJlMDVjNjgwMDU0YTE2MWYwNWUwZGRkNjQ2Yi4uYWNkYTcwNmMwY2UzNzk3
ZTQ2YjA5NTE3ZGNiMDgxZWE1OWUzZGY4OSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVHlwZVJlZi5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9UeXBlUmVmLmpzCkBAIC0yNSw3ICsyNSw3IEBACiAidXNlIHN0cmljdCI7CiAKIGNsYXNzIFR5
cGVSZWYgZXh0ZW5kcyBUeXBlIHsKLSAgICBjb25zdHJ1Y3RvcihvcmlnaW4sIG5hbWUsIHR5cGVB
cmd1bWVudHMgPSBudWxsKQorICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3Vt
ZW50cyA9IFtdKQogICAgIHsKICAgICAgICAgc3VwZXIoKTsKICAgICAgICAgdGhpcy5fb3JpZ2lu
ID0gb3JpZ2luOwpAQCAtMzgsMTQgKzM4LDExIEBAIGNsYXNzIFR5cGVSZWYgZXh0ZW5kcyBUeXBl
IHsKICAgICB7CiAgICAgICAgIGlmICh0eXBlIGluc3RhbmNlb2YgVHlwZVJlZikKICAgICAgICAg
ICAgIHJldHVybiB0eXBlOwotICAgICAgICBsZXQgcmVzdWx0ID0gbmV3IFR5cGVSZWYodHlwZS5v
cmlnaW4sIHR5cGUubmFtZSk7Ci0gICAgICAgIHJlc3VsdC50eXBlID0gdHlwZTsKLSAgICAgICAg
cmV0dXJuIHJlc3VsdDsKLSAgICB9Ci0gICAgCi0gICAgc3RhdGljIGluc3RhbnRpYXRlKHR5cGUp
Ci0gICAgewotICAgICAgICBsZXQgcmVzdWx0ID0gbmV3IFR5cGVSZWYodHlwZS5vcmlnaW4sIHR5
cGUubmFtZSk7CisgICAgICAgIGxldCByZXN1bHQ7CisgICAgICAgIGlmICh0eXBlIGluc3RhbmNl
b2YgTmF0aXZlVHlwZSkKKyAgICAgICAgICAgIHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3Jp
Z2luLCB0eXBlLm5hbWUsIHR5cGUudHlwZUFyZ3VtZW50cyk7CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3JnaW4sIHR5cGUubmFtZSk7CiAgICAg
ICAgIHJlc3VsdC50eXBlID0gdHlwZTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CkBA
IC02NCw2ICs2MSwzOSBAQCBjbGFzcyBUeXBlUmVmIGV4dGVuZHMgVHlwZSB7CiAgICAgICAgIHRo
aXMuX3R5cGUgPSBuZXdUeXBlOwogICAgIH0KIAorICAgIHJlc29sdmUocG9zc2libGVPdmVybG9h
ZHMpCisgICAgeworICAgICAgICBpZiAoIXBvc3NpYmxlT3ZlcmxvYWRzKQorICAgICAgICAgICAg
dGhyb3cgbmV3IFdUeXBlRXJyb3IodGhpcy5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiRGlkIG5vdCBm
aW5kIGFueSB0eXBlcyBuYW1lZCAiICsgdGhpcy5uYW1lKTsKKworICAgICAgICBsZXQgZmFpbHVy
ZXMgPSBbXTsKKyAgICAgICAgbGV0IG92ZXJsb2FkID0gcmVzb2x2ZVR5cGVPdmVybG9hZEltcGwo
cG9zc2libGVPdmVybG9hZHMsIHRoaXMudHlwZUFyZ3VtZW50cyk7CisKKyAgICAgICAgaWYgKCFv
dmVybG9hZC50eXBlKSB7CisgICAgICAgICAgICBmYWlsdXJlcy5wdXNoKC4uLm92ZXJsb2FkLmZh
aWx1cmVzKTsKKyAgICAgICAgICAgIGxldCBtZXNzYWdlID0gIkRpZCBub3QgZmluZCB0eXBlIG5h
bWVkICIgKyB0aGlzLm5hbWUgKyAiIGZvciB0eXBlIGFyZ3VtZW50cyAiOworICAgICAgICAgICAg
bWVzc2FnZSArPSAiKCIgKyB0aGlzLnR5cGVBcmd1bWVudHMgKyAiKSI7CisgICAgICAgICAgICBp
ZiAoZmFpbHVyZXMubGVuZ3RoKQorICAgICAgICAgICAgICAgIG1lc3NhZ2UgKz0gIiwgYnV0IGNv
bnNpZGVyZWQ6XG4iICsgZmFpbHVyZXMuam9pbigiXG4iKQorICAgICAgICAgICAgdGhyb3cgbmV3
IFdUeXBlRXJyb3IodGhpcy5vcmlnaW4ub3JpZ2luU3RyaW5nLCBtZXNzYWdlKTsKKyAgICAgICAg
fQorCisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy50eXBlQXJndW1lbnRzLmxlbmd0
aDsgKytpKSB7CisgICAgICAgICAgICBsZXQgdHlwZUFyZ3VtZW50ID0gdGhpcy50eXBlQXJndW1l
bnRzW2ldOworICAgICAgICAgICAgbGV0IHJlc29sdmVkVHlwZUFyZ3VtZW50ID0gb3ZlcmxvYWQu
dHlwZS50eXBlQXJndW1lbnRzW2ldOworICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHR5cGVBcmd1
bWVudC5lcXVhbHNXaXRoQ29tbWl0KHJlc29sdmVkVHlwZUFyZ3VtZW50KTsKKyAgICAgICAgICAg
IGlmICghcmVzdWx0KQorICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQXQgIiArIHRo
aXMub3JpZ2luLm9yaWdpblN0cmluZyArICIgYXJndW1lbnQgdHlwZXMgZm9yIFR5cGUgYW5kIFR5
cGVSZWYgbm90IGVxdWFsOiBhcmd1bWVudCB0eXBlID0gIiArIHR5cGVBcmd1bWVudCArICIsIHJl
c29sdmVkIHR5cGUgYXJndW1lbnQgPSAiICsgcmVzb2x2ZWRUeXBlQXJndW1lbnQpOworICAgICAg
ICAgICAgaWYgKHJlc29sdmVkVHlwZUFyZ3VtZW50LmNvbnN0cnVjdG9yLm5hbWUgPT0gIkdlbmVy
aWNMaXRlcmFsIikgeworICAgICAgICAgICAgICAgIHJlc3VsdCA9IHR5cGVBcmd1bWVudC50eXBl
LmVxdWFsc1dpdGhDb21taXQocmVzb2x2ZWRUeXBlQXJndW1lbnQudHlwZSk7CisgICAgICAgICAg
ICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigi
QXQgIiArIHRoaXMub3JpZ2luLm9yaWdpblN0cmluZyArICIgYXJndW1lbnQgdHlwZXMgZm9yIFR5
cGUgYW5kIFR5cGVSZWYgbm90IGVxdWFsOiBhcmd1bWVudCB0eXBlID0gIiArIHR5cGVBcmd1bWVu
dCArICIsIHJlc29sdmVkIHR5cGUgYXJndW1lbnQgPSAiICsgcmVzb2x2ZWRUeXBlQXJndW1lbnQp
OworICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIAorICAgICAgICB9CisgICAgICAgIHRo
aXMudHlwZSA9IG92ZXJsb2FkLnR5cGU7CisgICAgfQorCiAgICAgZ2V0IHVuaWZ5Tm9kZSgpCiAg
ICAgewogICAgICAgICBpZiAoIXRoaXMudHlwZSkKQEAgLTk5LDcgKzEyOSwxMCBAQCBjbGFzcyBU
eXBlUmVmIGV4dGVuZHMgVHlwZSB7CiAgICAgewogICAgICAgICBpZiAoIXRoaXMubmFtZSkKICAg
ICAgICAgICAgIHJldHVybiB0aGlzLnR5cGUudG9TdHJpbmcoKTsKLSAgICAgICAgcmV0dXJuIHRo
aXMubmFtZTsKKyAgICAgICAgbGV0IHJlc3VsdCA9IHRoaXMubmFtZTsKKyAgICAgICAgaWYgKHRo
aXMudHlwZUFyZ3VtZW50cy5sZW5ndGggPiAwKQorICAgICAgICAgICAgcmVzdWx0ICs9ICI8IiAr
IHRoaXMudHlwZUFyZ3VtZW50cy5tYXAoYXJndW1lbnQgPT4gYXJndW1lbnQudG9TdHJpbmcoKSku
am9pbigiLCIpICsgIj4iOworICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KIH0KIApkaWZm
IC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmljYXRpb25Db250ZXh0
LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmljYXRpb25Db250ZXh0Lmpz
CmluZGV4IDJmNzE1NDdiMGFmYmUxODAzNzhmMzc5OTYyMzE4NjJhMmI5MWE4MmUuLjM4MTkxNjk3
MjIzZWY3MjFhNTM3OTE0YjM2OTg5NzY3ODFmZTZlNmUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL1VuaWZpY2F0aW9uQ29udGV4dC5qcworKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9VbmlmaWNhdGlvbkNvbnRleHQuanMKQEAgLTkyLDYgKzkyLDE5
IEBAIGNsYXNzIFVuaWZpY2F0aW9uQ29udGV4dCB7CiAgICAgCiAgICAgdmVyaWZ5KCkKICAgICB7
CisgICAgICAgIC8vIFdlIGRvIGEgdHdvLXBoYXNlIHByZS12ZXJpZmljYXRpb24uIFRoaXMgZ2l2
ZXMgbGl0ZXJhbHMgYSBjaGFuY2UgdG8gc2VsZWN0IGEgbW9yZSBzcGVjaWZpYyB0eXBlLgorICAg
ICAgICBsZXQgcHJlcGFyYXRpb25zID0gW107CisgICAgICAgIGZvciAobGV0IG5vZGUgb2YgdGhp
cy5ub2RlcykgeworICAgICAgICAgICAgbGV0IHByZXBhcmF0aW9uID0gbm9kZS5wcmVwYXJlVG9W
ZXJpZnkodGhpcyk7CisgICAgICAgICAgICBpZiAocHJlcGFyYXRpb24pCisgICAgICAgICAgICAg
ICAgcHJlcGFyYXRpb25zLnB1c2gocHJlcGFyYXRpb24pOworICAgICAgICB9CisgICAgICAgIGZv
ciAobGV0IHByZXBhcmF0aW9uIG9mIHByZXBhcmF0aW9ucykgeworICAgICAgICAgICAgbGV0IHJl
c3VsdCA9IHByZXBhcmF0aW9uKCk7CisgICAgICAgICAgICBpZiAoIXJlc3VsdC5yZXN1bHQpCisg
ICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgfQorCiAgICAgICAgIGZvciAo
bGV0IHR5cGVBcmd1bWVudCBvZiB0aGlzLnR5cGVBcmd1bWVudHMoKSkgewogICAgICAgICAgICAg
bGV0IHJlc3VsdCA9IHR5cGVBcmd1bWVudC52ZXJpZnlBc0FyZ3VtZW50KHRoaXMpOwogICAgICAg
ICAgICAgaWYgKCFyZXN1bHQucmVzdWx0KQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVmVjdG9yVHlwZS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1ZlY3RvclR5cGUuanMKaW5kZXggNTAxNGM2NzFhMDc4ODIwMDJjMjM0YmIzMmYxN2M4ODYwZWZm
YzFjNi4uZGYwY2JjMmM3MzA4ZjQ1NDEzY2JjYzI4ZDg5NjIxYmMwM2FiMjYwNCAxMDA2NDQKLS0t
IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmVjdG9yVHlwZS5qcworKysgYi9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9WZWN0b3JUeXBlLmpzCkBAIC0yNSwxOSArMjUsMTQg
QEAKICJ1c2Ugc3RyaWN0IjsKIAogY2xhc3MgVmVjdG9yVHlwZSBleHRlbmRzIE5hdGl2ZVR5cGUg
ewotICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwgbmFtZSkKKyAgICBjb25zdHJ1Y3RvcihvcmlnaW4s
IG5hbWUsIHR5cGVBcmd1bWVudHMpCiAgICAgewotICAgICAgICBzdXBlcihvcmlnaW4sIG5hbWUp
OwotICAgICAgICBjb25zdCBtYXRjaCA9IC9eKFtBLXpdKykoWzAtOV0pJC8uZXhlYyhuYW1lKTsK
LSAgICAgICAgaWYgKCFtYXRjaCkKLSAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKG9y
aWdpbi5vcmlnaW5TdHJpbmcsIGAke25hbWV9IGRvZXNuJ3QgbWF0Y2ggdGhlIGZvcm1hdCBmb3Ig
dmVjdG9yIHR5cGUgbmFtZXMuJ2ApOwotCi0gICAgICAgIHRoaXMuX2VsZW1lbnRUeXBlID0gbmV3
IFR5cGVSZWYob3JpZ2luLCBtYXRjaFsxXSk7Ci0gICAgICAgIHRoaXMuX251bUVsZW1lbnRzVmFs
dWUgPSBwYXJzZUludChtYXRjaFsyXSk7CisgICAgICAgIHN1cGVyKG9yaWdpbiwgbmFtZSwgdHlw
ZUFyZ3VtZW50cyk7CiAgICAgfQogCi0gICAgZ2V0IGVsZW1lbnRUeXBlKCkgeyByZXR1cm4gdGhp
cy5fZWxlbWVudFR5cGU7IH0KLSAgICBnZXQgbnVtRWxlbWVudHNWYWx1ZSgpIHsgcmV0dXJuIHRo
aXMuX251bUVsZW1lbnRzVmFsdWU7IH0KKyAgICBnZXQgZWxlbWVudFR5cGUoKSB7IHJldHVybiB0
aGlzLnR5cGVBcmd1bWVudHNbMF07IH0KKyAgICBnZXQgbnVtRWxlbWVudHMoKSB7IHJldHVybiB0
aGlzLnR5cGVBcmd1bWVudHNbMV07IH0KKyAgICBnZXQgbnVtRWxlbWVudHNWYWx1ZSgpIHsgcmV0
dXJuIHRoaXMubnVtRWxlbWVudHMudmFsdWU7IH0KICAgICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRo
aXMuZWxlbWVudFR5cGUuc2l6ZSAqIHRoaXMubnVtRWxlbWVudHNWYWx1ZTsgfQogCiAgICAgdW5p
ZnlJbXBsKHVuaWZpY2F0aW9uQ29udGV4dCwgb3RoZXIpCkBAIC01OSw3ICs1NCw3IEBAIGNsYXNz
IFZlY3RvclR5cGUgZXh0ZW5kcyBOYXRpdmVUeXBlIHsKIAogICAgIHRvU3RyaW5nKCkKICAgICB7
Ci0gICAgICAgIHJldHVybiBgbmF0aXZlIHR5cGVkZWYgJHt0aGlzLmVsZW1lbnRUeXBlfSR7dGhp
cy5udW1FbGVtZW50c1ZhbHVlfWA7CisgICAgICAgIHJldHVybiBgbmF0aXZlIHR5cGVkZWYgdmVj
dG9yPCR7dGhpcy5lbGVtZW50VHlwZX0sICR7dGhpcy5udW1FbGVtZW50c1ZhbHVlfT5gOwogICAg
IH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmlzaXRv
ci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanMKaW5kZXggN2Qz
ODdiMjVmMjU4OWI4NzM5MThhZjJmNDRjMjQzNGFkNjU4NzQ3Zi4uMmRlMWU3NGRmMjcxOGJiM2Jh
NjhkMDVjMGU3MTAyYmQwNWEwMTY5MyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvVmlzaXRvci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9W
aXNpdG9yLmpzCkBAIC02OCwxMCArNjgsMTQgQEAgY2xhc3MgVmlzaXRvciB7CiAgICAgCiAgICAg
dmlzaXRUeXBlUmVmKG5vZGUpCiAgICAgeworICAgICAgICBmb3IgKGxldCB0eXBlQXJndW1lbnQg
b2Ygbm9kZS50eXBlQXJndW1lbnRzKQorICAgICAgICAgICAgdHlwZUFyZ3VtZW50LnZpc2l0KHRo
aXMpOwogICAgIH0KICAgICAKICAgICB2aXNpdE5hdGl2ZVR5cGUobm9kZSkKICAgICB7CisgICAg
ICAgIGZvciAobGV0IHR5cGVBcmd1bWVudCBvZiBub2RlLnR5cGVBcmd1bWVudHMpCisgICAgICAg
ICAgICB0eXBlQXJndW1lbnQudmlzaXQodGhpcyk7CiAgICAgfQogICAgIAogICAgIHZpc2l0VHlw
ZURlZihub2RlKQpAQCAtMzI3LDYgKzMzMSwxNCBAQCBjbGFzcyBWaXNpdG9yIHsKICAgICB2aXNp
dFZlY3RvclR5cGUobm9kZSkKICAgICB7CiAgICAgICAgIG5vZGUuZWxlbWVudFR5cGUudmlzaXQo
dGhpcyk7CisgICAgICAgIG5vZGUubnVtRWxlbWVudHMudmlzaXQodGhpcyk7CisgICAgfQorCisg
ICAgdmlzaXRNYXRyaXhUeXBlKG5vZGUpCisgICAgeworICAgICAgICBub2RlLmVsZW1lbnRUeXBl
LnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bVJvd3MudmlzaXQodGhpcyk7CisgICAgICAg
IG5vZGUubnVtQ29sdW1ucy52aXNpdCh0aGlzKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL2luZGV4Lmh0bWwgYi9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9pbmRleC5odG1sCmluZGV4IDRjOTNhMzNlNmEzODY2MmU4YmExZTg0MjQw
M2Q0YzAyZDVlOWY5ZGYuLjUzM2M1Zjg5Zjg1MTQ2MzYwZWI4ZjJlOWQzMWUyYjNkZjdiYTQ1N2Eg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL2luZGV4Lmh0bWwKKysr
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRtbApAQCAtMjMsMTIgKzIz
LDExIEBACiA8c2NyaXB0IHNyYz0iQmxvY2suanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkJv
b2xMaXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJCcmVhay5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iQnVpbHRpbk1hdHJpeEdldHRlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iQnVpbHRpbk1hdHJpeFNldHRlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnVp
bHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnVpbHRp
blZlY3RvckdldHRlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvclNl
dHRlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4R2V0dGVy
LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDYWxsRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiA8
c2NyaXB0IHNyYz0iQ2FsbEZ1bmN0aW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVj
ay5qcyI+PC9zY3JpcHQ+CkBAIC0zOCw2ICszNyw3IEBACiA8c2NyaXB0IHNyYz0iQ2hlY2tSZWN1
cnNpdmVUeXBlcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tSZXR1cm5zLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja1VucmVhY2hhYmxlQ29kZS5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9IkNoZWNrV3JhcHBlZC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tl
ci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2xvbmVQcm9ncmFtLmpzIj48L3NjcmlwdD4K
QEAgLTg5LDYgKzg5LDcgQEAKIDxzY3JpcHQgc3JjPSJMb29wQ2hlY2tlci5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iTWFrZUFycmF5UmVmRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0iTWFrZVB0ckV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ik1h
dHJpeFR5cGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik5hbWVDb250ZXh0LmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJOYW1lRmluZGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJOYW1lUmVzb2x2ZXIuanMiPjwvc2NyaXB0PgpAQCAtOTYsOSArOTcsOCBAQAogPHNjcmlwdCBz
cmM9Ik5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9
Ik51bGxMaXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOdWxsVHlwZS5qcyI+PC9z
Y3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRlckluZGV4LmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSJPcGVyYXRvckFuZGVySW5kZXhlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iT3BlcmF0b3JBcnJheVJlZkxlbmd0aC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3Bl
cmF0b3JCb29sLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJPcmlnaW5LaW5kLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJQYXJzZS5qcyI+PC9zY3JpcHQ+CkBAIC0xMTAsNyArMTEwLDYgQEAK
IDxzY3JpcHQgc3JjPSJSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KIDxz
Y3JpcHQgc3JjPSJSZWN1cnNpb25DaGVja2VyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJS
ZWN1cnNpdmVUeXBlQ2hlY2tlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iUmVtb3ZlVHlw
ZUFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2ZU5hbWVzLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZXNvbHZlT3ZlcmxvYWRJbXBsLmpzIj48L3NjcmlwdD4K
IDxzY3JpcHQgc3JjPSJSZXNvbHZlUHJvcGVydGllcy5qcyI+PC9zY3JpcHQ+CkBAIC0xMjcsMTMg
KzEyNiwxMyBAQAogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplRW51bUZ1bmN0aW9ucy5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0IHNyYz0iU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiA8
c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUNvcHlDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanMi
Pjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlRyYXBTdGF0ZW1lbnQuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9IlR5cGVEZWYuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVEZWZSZXNv
bHZlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iVHlwZVJlZi5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiPjwvc2NyaXB0Pgog
PHNjcmlwdCBzcmM9IlR5cGVkVmFsdWUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlVpbnRM
aXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJVaW50TGl0ZXJhbFR5cGUuanMiPjwv
c2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347936</attachid>
            <date>2018-08-23 10:42:28 -0700</date>
            <delta_ts>2018-08-23 15:45:16 -0700</delta_ts>
            <desc>Matrix types compile</desc>
            <filename>bug-188873-20180823104227.patch</filename>
            <type>text/plain</type>
            <size>235418</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MjE1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTMyMTQ5OWZlOTRlYzI1Y2M3MTM3OTZkNmQ2MmI2OGIx
MWZlYjVmZi4uNzNkOTQwZDUzYjZjZGRmMzY0NjM3YjcyNjNhYzE1NjdmODZhY2EwYSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1
OCBAQAorMjAxOC0wOC0yMiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29t
PgorCisgICAgICAgIFtXSExTTF0gQWRkIG1vcmUgZnVuY3Rpb25zIHRvIHRoZSBzdGFuZGFyZCBs
aWJyYXJ5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
ODg4NzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qczoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzOgorICAgICAgICAoQnVpbHRp
blZlY3RvckNvbnN0cnVjdG9ycyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
Q2FsbEV4cHJlc3Npb24uanM6CisgICAgICAgIChDYWxsRXhwcmVzc2lvbi5wcm90b3R5cGUucmVz
b2x2ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhB
cmd1bWVudHMuanM6IENvcGllZCBmcm9tIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5
bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcy4KKyAgICAgICAgKGNoZWNrVHlw
ZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlci5wcm90b3R5cGUudmlzaXRU
eXBlUmVmKToKKyAgICAgICAgKGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1l
bnRzQ2hlY2tlcik6CisgICAgICAgIChjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyk6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qczoKKyAgICAgICAgKENoZWNrZXIu
cHJvdG90eXBlLnZpc2l0UHJvZ3JhbSk6CisgICAgICAgIChDaGVja2VyLnByb3RvdHlwZS52aXNp
dFR5cGVSZWYpOgorICAgICAgICAoQ2hlY2tlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKToK
KyAgICAgICAgKENoZWNrZXIucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgICog
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanM6
CisgICAgICAgIChGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5wcm90b3R5cGUudmlzaXRN
YXRyaXhUeXBlKToKKyAgICAgICAgKEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyKToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbmZlclR5cGVzRm9yQ2FsbC5qczoKKyAg
ICAgICAgKGluZmVyVHlwZXNGb3JDYWxsKToKKyAgICAgICAgKGluZmVyVHlwZXNGb3JUeXBlQXJn
dW1lbnRzKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpz
OgorICAgICAgICAoSW50cmluc2ljcy5jYXN0KToKKyAgICAgICAgKEludHJpbnNpY3MuYml0d2lz
ZUNhc3QpOgorICAgICAgICAoSW50cmluc2ljcy5jYXN0VG9IYWxmKToKKyAgICAgICAgKEludHJp
bnNpY3MuKToKKyAgICAgICAgKEludHJpbnNpY3MpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL01hdHJpeFR5cGUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9PcGVyYXRvckJvb2wuanMuCisgICAgICAgIChNYXRyaXhUeXBlKToKKyAgICAg
ICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBlbGVtZW50VHlwZSk6CisgICAgICAgIChNYXRy
aXhUeXBlLnByb3RvdHlwZS5nZXQgbnVtUm93cyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3Rv
dHlwZS5nZXQgbnVtQ29sdW1ucyk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3RvdHlwZS5nZXQg
bnVtUm93c1ZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBudW1Db2x1
bW5zVmFsdWUpOgorICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUuZ2V0IHNpemUpOgorICAg
ICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUudW5pZnlJbXBsKToKKyAgICAgICAgKE1hdHJpeFR5
cGUucHJvdG90eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlKToKKyAgICAgICAgKE1hdHJpeFR5cGUu
cHJvdG90eXBlLnRvU3RyaW5nKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9O
YW1lQ29udGV4dC5qczoKKyAgICAgICAgKE5hbWVDb250ZXh0LnByb3RvdHlwZS5hZGQpOgorICAg
ICAgICAoTmFtZUNvbnRleHQucHJvdG90eXBlLmdldCBsZXQpOgorICAgICAgICAoTmFtZUNvbnRl
eHQudW5kZXJseWluZ1RoaW5ncy5wcm90b3R5cGUuZWxzZSk6CisgICAgICAgIChOYW1lQ29udGV4
dC5wcm90b3R5cGUuU3ltYm9sLml0ZXJhdG9yKToKKyAgICAgICAgKE5hbWVDb250ZXh0KToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVzb2x2ZXIuanM6CisgICAgICAg
IChOYW1lUmVzb2x2ZXIucHJvdG90eXBlLnZpc2l0VHlwZVJlZik6CisgICAgICAgIChOYW1lUmVz
b2x2ZXIucHJvdG90eXBlLnZpc2l0Q2FsbEV4cHJlc3Npb24pOgorICAgICAgICAoTmFtZVJlc29s
dmVyKToKKyAgICAgICAgKE5hbWVSZXNvbHZlci5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBlKTog
RGVsZXRlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpz
OgorICAgICAgICAoTmF0aXZlVHlwZSk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS5n
ZXQgdHlwZUFyZ3VtZW50cyk6CisgICAgICAgIChOYXRpdmVUeXBlLnByb3RvdHlwZS50b1N0cmlu
Zyk6CisgICAgICAgIChOYXRpdmVUeXBlLmNyZWF0ZSk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanM6IFJlbmFtZWQgZnJvbSBUb29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFuZGVySW5kZXguanMuCisgICAgICAgIChP
cGVyYXRvckFuZGVySW5kZXhlci5mdW5jdGlvbnMpOgorICAgICAgICAoT3BlcmF0b3JBbmRlcklu
ZGV4ZXIpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ByZXBhcmUuanM6Cisg
ICAgICAgIChsZXQucHJlcGFyZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UHJvZ3JhbS5qczoKKyAgICAgICAgKFByb2dyYW0ucHJvdG90eXBlLmFkZCk6CisgICAgICAgIChQ
cm9ncmFtLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgIChQcm9ncmFtKToKKyAgICAgICAg
KiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1lbnRzLmpzOiBSZW1vdmVk
LgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVOYW1lcy5qczoKKyAg
ICAgICAgKHJlc29sdmVOYW1lc0luVHlwZXMpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL1Jlc29sdmVPdmVybG9hZEltcGwuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUmVzb2x2ZVR5cGVEZWZzLmpzOgorICAgICAgICAocmVzb2x2ZVR5cGVEZWZzSW5U
eXBlcyk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanM6Cisg
ICAgICAgIChSZXdyaXRlci5wcm90b3R5cGUudmlzaXRUeXBlUmVmKToKKyAgICAgICAgKFJld3Jp
dGVyLnByb3RvdHlwZS52aXNpdFZlY3RvclR5cGUpOgorICAgICAgICAoUmV3cml0ZXIucHJvdG90
eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChSZXdyaXRlcik6CisgICAgICAgICogV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbDoKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9TdGFuZGFyZExpYnJhcnkuanM6CisgICAgICAgIChvcGVyYXRvci5ib29sKToK
KyAgICAgICAgKGJvb2wub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIub3BlcmF0b3IpOgorICAg
ICAgICAodXNob3J0Lm9wZXJhdG9yKToKKyAgICAgICAgKGNoYXIub3BlcmF0b3IpOgorICAgICAg
ICAoc2hvcnQub3BlcmF0b3IpOgorICAgICAgICAodWludC5vcGVyYXRvcik6CisgICAgICAgIChp
bnQub3BlcmF0b3IpOgorICAgICAgICAoaGFsZi5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdC5v
cGVyYXRvcik6CisgICAgICAgICh1Y2hhcjIub3BlcmF0b3IpOgorICAgICAgICAodWNoYXIzLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVjaGFyNC5vcGVyYXRvcik6CisgICAgICAgICh1c2hvcnQyLm9w
ZXJhdG9yKToKKyAgICAgICAgKHVzaG9ydDMub3BlcmF0b3IpOgorICAgICAgICAodXNob3J0NC5v
cGVyYXRvcik6CisgICAgICAgICh1aW50Mi5vcGVyYXRvcik6CisgICAgICAgICh1aW50My5vcGVy
YXRvcik6CisgICAgICAgICh1aW50NC5vcGVyYXRvcik6CisgICAgICAgIChjaGFyMi5vcGVyYXRv
cik6CisgICAgICAgIChjaGFyMy5vcGVyYXRvcik6CisgICAgICAgIChjaGFyNC5vcGVyYXRvcik6
CisgICAgICAgIChzaG9ydDIub3BlcmF0b3IpOgorICAgICAgICAoc2hvcnQzLm9wZXJhdG9yKToK
KyAgICAgICAgKHNob3J0NC5vcGVyYXRvcik6CisgICAgICAgIChpbnQyLm9wZXJhdG9yKToKKyAg
ICAgICAgKGludDMub3BlcmF0b3IpOgorICAgICAgICAoaW50NC5vcGVyYXRvcik6CisgICAgICAg
IChoYWxmMi5vcGVyYXRvcik6CisgICAgICAgIChoYWxmMy5vcGVyYXRvcik6CisgICAgICAgICho
YWxmNC5vcGVyYXRvcik6CisgICAgICAgIChmbG9hdDIub3BlcmF0b3IpOgorICAgICAgICAoZmxv
YXQzLm9wZXJhdG9yKToKKyAgICAgICAgKGZsb2F0NC5vcGVyYXRvcik6CisgICAgICAgIChoYWxm
MngyLm9wZXJhdG9yKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1l
bnRDbG9uZXIuanM6CisgICAgICAgIChTdGF0ZW1lbnRDbG9uZXIucHJvdG90eXBlLnZpc2l0TmF0
aXZlVHlwZSk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURl
ZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzOgorICAgICAgICAoc3ludGhlc2l6ZURlZmF1bHRD
b25zdHJ1Y3Rvck9wZXJhdG9yLkZpbmRBbGxUeXBlcy5wcm90b3R5cGUudmlzaXRWZWN0b3JUeXBl
KToKKyAgICAgICAgKHN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5GaW5kQWxs
VHlwZXMucHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChzeW50aGVzaXplRGVm
YXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuRmluZEFsbFR5cGVzKToKKyAgICAgICAgKHN5bnRoZXNp
emVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qczoKKyAgICAgICAgKHN5bnRoZXNp
emVTdHJ1Y3RBY2Nlc3NvcnMuY3JlYXRlVHlwZVJlZik6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVGVzdC5odG1sOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Rlc3QuanM6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUuanM6IFJlbmFtZWQgZnJvbSBUb29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpzLgorICAgICAgICAoVHlwZU92ZXJsb2Fk
UmVzb2x1dGlvbkZhaWx1cmUpOgorICAgICAgICAoVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1
cmUucHJvdG90eXBlLmdldCB0eXBlKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29sdXRpb25G
YWlsdXJlLnByb3RvdHlwZS5nZXQgcmVhc29uKToKKyAgICAgICAgKFR5cGVPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlLnByb3RvdHlwZS50b1N0cmluZyk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVHlwZVJlZi5qczoKKyAgICAgICAgKFR5cGVSZWYud3JhcCk6CisgICAgICAg
IChUeXBlUmVmLnByb3RvdHlwZS5yZXNvbHZlKToKKyAgICAgICAgKFR5cGVSZWYucHJvdG90eXBl
LnRvU3RyaW5nKToKKyAgICAgICAgKFR5cGVSZWYpOgorICAgICAgICAoVHlwZVJlZi5pbnN0YW50
aWF0ZSk6IERlbGV0ZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmlj
YXRpb25Db250ZXh0LmpzOgorICAgICAgICAoVW5pZmljYXRpb25Db250ZXh0LnByb3RvdHlwZS52
ZXJpZnkpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ZlY3RvclR5cGUuanM6
CisgICAgICAgIChWZWN0b3JUeXBlKToKKyAgICAgICAgKFZlY3RvclR5cGUucHJvdG90eXBlLmdl
dCBlbGVtZW50VHlwZSk6CisgICAgICAgIChWZWN0b3JUeXBlLnByb3RvdHlwZS5nZXQgbnVtRWxl
bWVudHMpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUuZ2V0IG51bUVsZW1lbnRzVmFs
dWUpOgorICAgICAgICAoVmVjdG9yVHlwZS5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAq
IFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanM6CisgICAgICAgIChWaXNpdG9yLnBy
b3RvdHlwZS52aXNpdFR5cGVSZWYpOgorICAgICAgICAoVmlzaXRvci5wcm90b3R5cGUudmlzaXRO
YXRpdmVUeXBlKToKKyAgICAgICAgKFZpc2l0b3IucHJvdG90eXBlLnZpc2l0VmVjdG9yVHlwZSk6
CisgICAgICAgIChWaXNpdG9yLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5cGUpOgorICAgICAgICAo
VmlzaXRvcik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRtbDoK
KwogMjAxOC0wOC0yMiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAog
ICAgICAgICBbQXR0YWNobWVudCBTdXBwb3J0XSBTdXBwb3J0IGRyYWdnaW5nIGF0dGFjaG1lbnQg
ZWxlbWVudHMgb3V0IGFzIGZpbGVzIG9uIG1hY09TCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9BbGwuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9B
bGwuanMKaW5kZXggODE1MjUyNzNhZTY1YTE0ODY1OTY0YTEzZGE0NWNlOTRlZjEwNjg0YS4uZTE5
ZDIyZjBmNmFiYzFjMjk4NmY4ZmMwM2MzZTVkOGI3YmEyY2VlNyAxMDA2NDQKLS0tIGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0FsbC5qcwpAQCAtNDYsMTIgKzQ2LDExIEBAIGxvYWQoIkF1dG9XcmFwcGVyLmpz
Iik7CiBsb2FkKCJCbG9jay5qcyIpOwogbG9hZCgiQm9vbExpdGVyYWwuanMiKTsKIGxvYWQoIkJy
ZWFrLmpzIik7Citsb2FkKCJCdWlsdGluTWF0cml4R2V0dGVyLmpzIik7Citsb2FkKCJCdWlsdGlu
TWF0cml4U2V0dGVyLmpzIik7CiBsb2FkKCJCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzIik7
CiBsb2FkKCJCdWlsdGluVmVjdG9yR2V0dGVyLmpzIik7CiBsb2FkKCJCdWlsdGluVmVjdG9yU2V0
dGVyLmpzIik7Ci1sb2FkKCJCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuanMiKTsKLWxvYWQoIkJ1
aWx0aW5WZWN0b3JJbmRleFNldHRlci5qcyIpOwotbG9hZCgiQnVpbHRpblZlY3RvckVxdWFsaXR5
T3BlcmF0b3IuanMiKTsKIGxvYWQoIkNhbGxFeHByZXNzaW9uLmpzIik7CiBsb2FkKCJDYWxsRnVu
Y3Rpb24uanMiKTsKIGxvYWQoIkNoZWNrLmpzIik7CkBAIC02MCw2ICs1OSw3IEBAIGxvYWQoIkNo
ZWNrTG9vcHMuanMiKTsKIGxvYWQoIkNoZWNrUmVjdXJzaW9uLmpzIik7CiBsb2FkKCJDaGVja1Jl
Y3Vyc2l2ZVR5cGVzLmpzIik7CiBsb2FkKCJDaGVja1JldHVybnMuanMiKTsKK2xvYWQoIkNoZWNr
VHlwZXNXaXRoQXJndW1lbnRzLmpzIik7CiBsb2FkKCJDaGVja1VucmVhY2hhYmxlQ29kZS5qcyIp
OwogbG9hZCgiQ2hlY2tXcmFwcGVkLmpzIik7CiBsb2FkKCJDaGVja2VyLmpzIik7CkBAIC0xMTIs
NiArMTEyLDcgQEAgbG9hZCgiTG9naWNhbE5vdC5qcyIpOwogbG9hZCgiTG9vcENoZWNrZXIuanMi
KTsKIGxvYWQoIk1ha2VBcnJheVJlZkV4cHJlc3Npb24uanMiKTsKIGxvYWQoIk1ha2VQdHJFeHBy
ZXNzaW9uLmpzIik7Citsb2FkKCJNYXRyaXhUeXBlLmpzIik7CiBsb2FkKCJOYW1lQ29udGV4dC5q
cyIpOwogbG9hZCgiTmFtZUZpbmRlci5qcyIpOwogbG9hZCgiTmFtZVJlc29sdmVyLmpzIik7CkBA
IC0xMTksOSArMTIwLDggQEAgbG9hZCgiTmF0aXZlRnVuYy5qcyIpOwogbG9hZCgiTm9ybWFsVXNl
UHJvcGVydHlSZXNvbHZlci5qcyIpOwogbG9hZCgiTnVsbExpdGVyYWwuanMiKTsKIGxvYWQoIk51
bGxUeXBlLmpzIik7Ci1sb2FkKCJPcGVyYXRvckFuZGVySW5kZXguanMiKTsKK2xvYWQoIk9wZXJh
dG9yQW5kZXJJbmRleGVyLmpzIik7CiBsb2FkKCJPcGVyYXRvckFycmF5UmVmTGVuZ3RoLmpzIik7
Ci1sb2FkKCJPcGVyYXRvckJvb2wuanMiKTsKIGxvYWQoIk9yaWdpbktpbmQuanMiKTsKIGxvYWQo
Ik92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiKTsKIGxvYWQoIlBhcnNlLmpzIik7CkBAIC0x
MzMsNyArMTMzLDYgQEAgbG9hZCgiUHRyVHlwZS5qcyIpOwogbG9hZCgiUmVhZE1vZGlmeVdyaXRl
RXhwcmVzc2lvbi5qcyIpOwogbG9hZCgiUmVjdXJzaW9uQ2hlY2tlci5qcyIpOwogbG9hZCgiUmVj
dXJzaXZlVHlwZUNoZWNrZXIuanMiKTsKLWxvYWQoIlJlbW92ZVR5cGVBcmd1bWVudHMuanMiKTsK
IGxvYWQoIlJlc29sdmVOYW1lcy5qcyIpOwogbG9hZCgiUmVzb2x2ZU92ZXJsb2FkSW1wbC5qcyIp
OwogbG9hZCgiUmVzb2x2ZVByb3BlcnRpZXMuanMiKTsKQEAgLTE1MCwxMyArMTQ5LDEzIEBAIGxv
YWQoIlN3aXRjaFN0YXRlbWVudC5qcyIpOwogbG9hZCgiU3ludGhlc2l6ZUFycmF5T3BlcmF0b3JM
ZW5ndGguanMiKTsKIGxvYWQoIlN5bnRoZXNpemVFbnVtRnVuY3Rpb25zLmpzIik7CiBsb2FkKCJT
eW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzIik7Ci1sb2FkKCJTeW50aGVzaXplT3BlcmF0b3JC
b29sLmpzIik7CiBsb2FkKCJTeW50aGVzaXplQ29weUNvbnN0cnVjdG9yT3BlcmF0b3IuanMiKTsK
IGxvYWQoIlN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyIpOwogbG9hZCgi
VHJhcFN0YXRlbWVudC5qcyIpOwogbG9hZCgiVHlwZURlZi5qcyIpOwogbG9hZCgiVHlwZURlZlJl
c29sdmVyLmpzIik7CiBsb2FkKCJUeXBlUmVmLmpzIik7Citsb2FkKCJUeXBlT3ZlcmxvYWRSZXNv
bHV0aW9uRmFpbHVyZS5qcyIpOwogbG9hZCgiVHlwZWRWYWx1ZS5qcyIpOwogbG9hZCgiVWludExp
dGVyYWwuanMiKTsKIGxvYWQoIlVpbnRMaXRlcmFsVHlwZS5qcyIpOwpAQCAtMTcwLDQgKzE2OSw0
IEBAIGxvYWQoIldTeW50YXhFcnJvci5qcyIpOwogbG9hZCgiV1RyYXBFcnJvci5qcyIpOwogbG9h
ZCgiV1R5cGVFcnJvci5qcyIpOwogbG9hZCgiV2hpbGVMb29wLmpzIik7Ci1sb2FkKCJXcmFwQ2hl
Y2tlci5qcyIpOwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKK2xvYWQoIldyYXBDaGVja2Vy
LmpzIik7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGlu
TWF0cml4R2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpbk1h
dHJpeEdldHRlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44NmEzMzM5NDZjYmY0ZTVkYjdhNDhkYjg1ODU4ODE3
ZmY4YzY3ZDZlCi0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvQnVpbHRpbk1hdHJpeEdldHRlci5qcwpAQCAtMCwwICsxLDczIEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFO
RCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworY2xhc3MgQnVp
bHRpbk1hdHJpeEdldHRlciB7CisgICAgY29uc3RydWN0b3IoYmFzZVR5cGVOYW1lLCBoZWlnaHQs
IHdpZHRoKQorICAgIHsKKyAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1l
OworICAgICAgICB0aGlzLl9oZWlnaHQgPSBoZWlnaHQ7CisgICAgICAgIHRoaXMuX3dpZHRoID0g
d2lkdGg7CisgICAgfQorCisgICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jh
c2VUeXBlTmFtZTsgfQorICAgIGdldCBoZWlnaHQoKSB7IHJldHVybiB0aGlzLl9oZWlnaHQ7IH0K
KyAgICBnZXQgd2lkdGgoKSB7IHJldHVybiB0aGlzLl93aWR0aDsgfQorCisgICAgdG9TdHJpbmco
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGBuYXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3Ro
aXMud2lkdGh9IG9wZXJhdG9yW10oJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuaGVpZ2h0fXgk
e3RoaXMud2lkdGh9LHVpbnQpYDsKKyAgICB9CisKKyAgICBzdGF0aWMgZnVuY3Rpb25zKCkKKyAg
ICB7CisgICAgICAgIGlmICghdGhpcy5fZnVuY3Rpb25zKSB7CisgICAgICAgICAgICB0aGlzLl9m
dW5jdGlvbnMgPSBbXTsKKworICAgICAgICAgICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgWyJoYWxm
IiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCBoZWlnaHQgb2YgWzIsIDMs
IDRdKSB7CisgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHdpZHRoIG9mIFsyLCAzLCA0XSkK
KyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGlu
TWF0cml4R2V0dGVyKHR5cGVOYW1lLCBoZWlnaHQsIHdpZHRoKSk7CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIHJldHVybiB0aGlzLl9mdW5jdGlv
bnM7CisgICAgfQorCisgICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQorICAgIHsK
KyAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbWF0LCBpbmRleF0pID0+IHsKKyAgICAg
ICAgICAgIGNvbnN0IGluZGV4VmFsdWUgPSBpbmRleC5sb2FkVmFsdWUoKTsKKyAgICAgICAgICAg
IGlmIChpbmRleFZhbHVlID49IDAgJiYgaW5kZXhWYWx1ZSA8IHRoaXMuaGVpZ2h0KSB7CisgICAg
ICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gbmV3IEVQdHIobmV3IEVCdWZmZXIodGhpcy53aWR0
aCksIDApOworICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy53aWR0aDsg
aSsrKQorICAgICAgICAgICAgICAgICAgICByZXN1bHQuc2V0KG9mZnNldCsrLCBtYXQuZ2V0KGlu
ZGV4VmFsdWUgKiB0aGlzLndpZHRoICsgaSkpOworICAgICAgICAgICAgICAgIHJldHVybiByZXN1
bHQ7CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBF
cnJvcigiW0J1aWx0aW4gbWF0cml4IGdldHRlcl0iLCAiT3V0LW9mLWJvdW5kcyBpbmRleCB3aGVu
IGluZGV4aW5nIGludG8gYSBtYXRyaXgiKTsKKyAgICAgICAgfTsKKyAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbkRhdGEgPSB0aGlzOworICAgIH0KK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5NYXRyaXhTZXR0ZXIuanMgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluTWF0cml4U2V0dGVyLmpzCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY3Yjg1
NzQ5Y2UxZjJkN2QxYWYyNmIxY2RlOGY3OGYzZjg0YjU1MzgKLS0tIC9kZXYvbnVsbAorKysgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluTWF0cml4U2V0dGVyLmpzCkBAIC0w
LDAgKzEsNzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8K
KyJ1c2Ugc3RyaWN0IjsKKworY2xhc3MgQnVpbHRpbk1hdHJpeFNldHRlciB7CisgICAgY29uc3Ry
dWN0b3IoYmFzZVR5cGVOYW1lLCBoZWlnaHQsIHdpZHRoKQorICAgIHsKKyAgICAgICAgdGhpcy5f
YmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1lOworICAgICAgICB0aGlzLl9oZWlnaHQgPSBoZWln
aHQ7CisgICAgICAgIHRoaXMuX3dpZHRoID0gd2lkdGg7CisgICAgfQorCisgICAgZ2V0IGJhc2VU
eXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQorICAgIGdldCBoZWlnaHQo
KSB7IHJldHVybiB0aGlzLl9oZWlnaHQ7IH0KKyAgICBnZXQgd2lkdGgoKSB7IHJldHVybiB0aGlz
Ll93aWR0aDsgfQorCisgICAgdG9TdHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGBuYXRp
dmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuaGVpZ2h0fXgke3RoaXMud2lkdGh9IG9wZXJh
dG9yW109KCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLmhlaWdodH14JHt0aGlzLndpZHRofSx1
aW50LCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLndpZHRofSlgOworICAgIH0KKworICAgIHN0
YXRpYyBmdW5jdGlvbnMoKQorICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLl9mdW5jdGlvbnMpIHsK
KyAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucyA9IFtdOworCisgICAgICAgICAgICBmb3IgKGxl
dCB0eXBlTmFtZSBvZiBbImhhbGYiLCAiZmxvYXQiXSkgeworICAgICAgICAgICAgICAgIGZvciAo
bGV0IGhlaWdodCBvZiBbMiwgMywgNF0pIHsKKyAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQg
d2lkdGggb2YgWzIsIDMsIDRdKQorICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZnVuY3Rp
b25zLnB1c2gobmV3IEJ1aWx0aW5NYXRyaXhTZXR0ZXIodHlwZU5hbWUsIGhlaWdodCwgd2lkdGgp
KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAg
cmV0dXJuIHRoaXMuX2Z1bmN0aW9uczsKKyAgICB9CisKKyAgICBpbnN0YW50aWF0ZUltcGxlbWVu
dGF0aW9uKGZ1bmMpCisgICAgeworICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtiYXNl
LCBpbmRleCwgdmFsdWVdKSA9PiB7CisgICAgICAgICAgICBjb25zdCBpbmRleFZhbHVlID0gaW5k
ZXgubG9hZFZhbHVlKCk7CisgICAgICAgICAgICBpZiAoaW5kZXhWYWx1ZSA+PSAwICYmIGluZGV4
VmFsdWUgPCB0aGlzLmhlaWdodCkgeworICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSBuZXcg
RVB0cihuZXcgRUJ1ZmZlcih0aGlzLndpZHRoICogdGhpcy5oZWlnaHQpLCAwKTsKKyAgICAgICAg
ICAgICAgICByZXN1bHQuY29weUZyb20oYmFzZSwgdGhpcy53aWR0aCAqIHRoaXMuaGVpZ2h0KTsK
KyAgICAgICAgICAgICAgICByZXN1bHQucGx1cyhpbmRleFZhbHVlICogdGhpcy53aWR0aCkuY29w
eUZyb20odmFsdWUsIHRoaXMud2lkdGgpOworICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7
CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBFcnJv
cigiW0J1aWx0aW4gbWF0cml4IHNldHRlcl0iLCAiT3V0LW9mLWJvdW5kcyBpbmRleCB3aGVuIGlu
ZGV4aW5nIGludG8gYSBtYXRyaXgiKTsKKyAgICAgICAgfTsKKyAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbkRhdGEgPSB0aGlzOworICAgIH0KK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuanMgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzCmluZGV4IDI3
MDRiNDNhMDZjMmZhZWQ5ZGZhNzNkZWFkMzNiYjBjNWM5NTU5ODUuLjc0OGRmMGM5NGMzMmQwN2Ji
YzAwYTVlNzVjYTlhNzdlMzY2N2E4ZTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuanMKKysrIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcwpAQCAtODEsNCAr
ODEsNCBAQCBjbGFzcyBCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzIHsKICAgICAgICAgfTsKICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwogICAgIH0KLX0KXCBObyBuZXds
aW5lIGF0IGVuZCBvZiBmaWxlCit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9CdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVyYXRvci5qcyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmpzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMTgzZDM1Njg2MTk0MWJjMjc2ZTRkM2M2N2M1ZTQ3ZWNh
ZmU0NzA5Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9y
LmpzCisrKyAvZGV2L251bGwKQEAgLTEsNjYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
Ci0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgotICovCi0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIEJ1aWx0aW5WZWN0
b3JFcXVhbGl0eU9wZXJhdG9yIHsKLSAgICBjb25zdHJ1Y3RvcihiYXNlVHlwZU5hbWUsIHNpemUp
Ci0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5hbWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAg
ICAgIHRoaXMuX3NpemUgPSBzaXplOwotICAgIH0KLQotICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7
IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KLSAgICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRo
aXMuX3NpemU7IH0KLQotICAgIHRvU3RyaW5nKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0
aXZlIGJvb2wgb3BlcmF0b3I9PSgke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSwke3Ro
aXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSlgOwotICAgIH0KLQotICAgIHN0YXRpYyBmdW5j
dGlvbnMoKQotICAgIHsKLSAgICAgICAgaWYgKCF0aGlzLl9mdW5jdGlvbnMpIHsKLSAgICAgICAg
ICAgIHRoaXMuX2Z1bmN0aW9ucyA9IFtdOwotCi0gICAgICAgICAgICBmb3IgKGxldCB0eXBlTmFt
ZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMpIHsKLSAgICAgICAgICAgICAgICBmb3IgKGxldCBzaXpl
IG9mIFZlY3RvckVsZW1lbnRTaXplcykKLSAgICAgICAgICAgICAgICAgICAgdGhpcy5fZnVuY3Rp
b25zLnB1c2gobmV3IEJ1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yKHR5cGVOYW1lLCBzaXpl
KSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIHRoaXMuX2Z1bmN0
aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCi0gICAg
ewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtyZWYxLCByZWYyXSwgbm9kZSkgPT4g
ewotICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnNpemU7IGkrKykgewotICAg
ICAgICAgICAgICAgIGlmIChyZWYxLmdldChpKSAhPSByZWYyLmdldChpKSkKLSAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIEVQdHIuYm94KGZhbHNlKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIHJldHVybiBFUHRyLmJveCh0cnVlKTsKLSAgICAgICAgfTsKLSAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwotICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm
aWxlCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVj
dG9yR2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3Rv
ckdldHRlci5qcwppbmRleCBjMjUzZjc2MzBlZTlkYzQ3Y2QxZTE5NDViYzg3ZjQyZWFhM2NjYjI4
Li40MDg3MmI0ZjhlMmJiM2E4ZTRmZmIyNjI3NWQ4ZDgzZmU3MjE4MmY3IDEwMDY0NAotLS0gYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yR2V0dGVyLmpzCisrKyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JHZXR0ZXIuanMKQEAg
LTYyLDkgKzYyLDkgQEAgY2xhc3MgQnVpbHRpblZlY3RvckdldHRlciB7CiAKICAgICBpbnN0YW50
aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCiAgICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFt2ZWNdLCBub2RlKSA9PiB7CisgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZlY10pID0+IHsKICAgICAgICAgICAgIHJldHVybiBFUHRyLmJveCh2ZWMuZ2V0KHRoaXMuaW5k
ZXgpKTsKICAgICAgICAgfTsKICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlz
OwogICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCit9CmRpZmYgLS1naXQgYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuanMg
Yi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIu
anMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY3MjYyZmM5Y2UyNzMwZjA4N2Q2MTQ1
NTg3NmIzMzVmZTAyNGFjM2EuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckluZGV4
R2V0dGVyLmpzCisrKyAvZGV2L251bGwKQEAgLTEsNjYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIEJ1aWx0
aW5WZWN0b3JJbmRleEdldHRlciB7Ci0gICAgY29uc3RydWN0b3IoYmFzZVR5cGVOYW1lLCBzaXpl
KQotICAgIHsKLSAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1lOwotICAg
ICAgICB0aGlzLl9zaXplID0gc2l6ZTsKLSAgICB9Ci0KLSAgICBnZXQgYmFzZVR5cGVOYW1lKCkg
eyByZXR1cm4gdGhpcy5fYmFzZVR5cGVOYW1lOyB9Ci0gICAgZ2V0IHNpemUoKSB7IHJldHVybiB0
aGlzLl9zaXplOyB9Ci0KLSAgICB0b1N0cmluZygpCi0gICAgewotICAgICAgICByZXR1cm4gYG5h
dGl2ZSAke3RoaXMuYmFzZVR5cGVOYW1lfSBvcGVyYXRvcltdKCR7dGhpcy5iYXNlVHlwZU5hbWV9
JHt0aGlzLnNpemV9LHVpbnQpYDsKLSAgICB9Ci0KLSAgICBzdGF0aWMgZnVuY3Rpb25zKCkKLSAg
ICB7Ci0gICAgICAgIGlmICghdGhpcy5fYWxsSW5kZXhHZXR0ZXJzKSB7Ci0gICAgICAgICAgICB0
aGlzLl9hbGxJbmRleEdldHRlcnMgPSBbXTsKLQotICAgICAgICAgICAgZm9yIChsZXQgdHlwZU5h
bWUgb2YgVmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0gICAgICAgICAgICAgICAgZm9yIChsZXQgc2l6
ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpCi0gICAgICAgICAgICAgICAgICAgIHRoaXMuX2FsbElu
ZGV4R2V0dGVycy5wdXNoKG5ldyBCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIodHlwZU5hbWUsIHNp
emUpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdGhpcy5fYWxs
SW5kZXhHZXR0ZXJzOwotICAgIH0KLQotICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykKLSAgICB7Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZlYywgaW5kZXhdLCBu
b2RlKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCBpbmRleFZhbHVlID0gaW5kZXgubG9hZFZhbHVl
KCk7Ci0gICAgICAgICAgICBpZiAoaW5kZXhWYWx1ZSA+PSAwICYmIGluZGV4VmFsdWUgPCB0aGlz
LnNpemUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIEVQdHIuYm94KHZlYy5nZXQoaW5kZXgubG9h
ZFZhbHVlKCkpKTsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICB0aHJvdyBuZXcg
RXJyb3IoYCR7aW5kZXhWYWx1ZX0gb3V0IG9mIGJvdW5kcyBmb3IgdmVjdG9yIG9mIHNpemUgJHt0
aGlzLnNpemV9YCk7Ci0gICAgICAgIH07Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRh
ID0gdGhpczsKLSAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0
IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckluZGV4U2V0dGVy
LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckluZGV4U2V0
dGVyLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyZmU1ZDY3OGFiNzA1ZmU0MGI3
ZDY4ZTk2OTNkZDhhZmM0YWRlZTk0Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JJ
bmRleFNldHRlci5qcworKysgL2Rldi9udWxsCkBAIC0xLDcxICswLDAgQEAKLS8qCi0gKiBDb3B5
cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycg
QU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAot
ICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJpY3QiOwotCi1jbGFzcyBC
dWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwg
c2l6ZSkKLSAgICB7Ci0gICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJhc2VUeXBlTmFtZTsK
LSAgICAgICAgdGhpcy5fc2l6ZSA9IHNpemU7Ci0gICAgfQotCi0gICAgZ2V0IGJhc2VUeXBlTmFt
ZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQotICAgIGdldCBzaXplKCkgeyByZXR1
cm4gdGhpcy5fc2l6ZTsgfQotICAgIGdldCBlbGVtZW50TmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Vs
ZW1lbnROYW1lOyB9Ci0gICAgZ2V0IGluZGV4KCkgeyByZXR1cm4gdGhpcy5faW5kZXg7IH0KLQot
ICAgIHRvU3RyaW5nKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNl
VHlwZU5hbWV9JHt0aGlzLnNpemV9IG9wZXJhdG9yW109KCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0
aGlzLnNpemV9LHVpbnQsJHt0aGlzLmJhc2VUeXBlTmFtZX0pYDsKLSAgICB9Ci0KLSAgICBzdGF0
aWMgZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fZnVuY3Rpb25zKSB7Ci0g
ICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKLQotICAgICAgICAgICAgZm9yIChsZXQg
dHlwZU5hbWUgb2YgVmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0gICAgICAgICAgICAgICAgZm9yIChs
ZXQgc2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpCi0gICAgICAgICAgICAgICAgICAgIHRoaXMu
X2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIodHlwZU5hbWUsIHNp
emUpKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdGhpcy5fZnVu
Y3Rpb25zOwotICAgIH0KLQotICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykKLSAg
ICB7Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2Jhc2UsIGluZGV4LCB2YWx1ZV0s
IG5vZGUpID0+IHsKLSAgICAgICAgICAgIGNvbnN0IGluZGV4VmFsdWUgPSBpbmRleC5sb2FkVmFs
dWUoKTsKLSAgICAgICAgICAgIGlmIChpbmRleFZhbHVlID49IDAgJiYgaW5kZXhWYWx1ZSA8IHRo
aXMuc2l6ZSkgewotICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSBuZXcgRVB0cihuZXcgRUJ1
ZmZlcih0aGlzLnNpemUpLCAwKTsKLSAgICAgICAgICAgICAgICByZXN1bHQuY29weUZyb20oYmFz
ZSwgdGhpcy5zaXplKTsKLSAgICAgICAgICAgICAgICByZXN1bHQucGx1cyhpbmRleFZhbHVlKS5j
b3B5RnJvbSh2YWx1ZSwgMSk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKLSAgICAg
ICAgICAgIH0gZWxzZQotICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtpbmRleFZh
bHVlfSBvdXQgb2YgYm91bmRzIGZvciB2ZWN0b3Igb2Ygc2l6ZSAke3RoaXMuc2l6ZX1gKTsKLSAg
ICAgICAgfTsKLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwotICAgIH0K
LX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yU2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvclNldHRlci5qcwppbmRleCBhMmQ3NjNiNzUwOTk5
N2IyNDEwYzI0YjgwMTMxNGMzNGEzYzQ4N2EwLi42NmZmYWM2ZjZhOWIxZTVmMDk0NzJlODM3OTRl
MTM2OGQyMWI5ODQxIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9C
dWlsdGluVmVjdG9yU2V0dGVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L0J1aWx0aW5WZWN0b3JTZXR0ZXIuanMKQEAgLTQ3LDcgKzQ3LDcgQEAgY2xhc3MgQnVpbHRpblZl
Y3RvclNldHRlciB7CiAgICAgewogICAgICAgICBpZiAoIXRoaXMuX2Z1bmN0aW9ucykgewogICAg
ICAgICAgICAgdGhpcy5fZnVuY3Rpb25zID0gW107Ci0gICAgICAgIAorCiAgICAgICAgICAgICBj
b25zdCBlbGVtZW50cyA9IFsgIngiLCAieSIsICJ6IiwgInciIF07CiAKICAgICAgICAgICAgIGZv
ciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewpAQCAtNzAsNCArNzAsNCBA
QCBjbGFzcyBCdWlsdGluVmVjdG9yU2V0dGVyIHsKICAgICAgICAgfTsKICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOwogICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBv
ZiBmaWxlCit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DYWxs
RXhwcmVzc2lvbi5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NhbGxFeHByZXNz
aW9uLmpzCmluZGV4IGIyNTM5OGYwYjFiNmVhZGUxYjc5YWM5MGU2YTc2MjUyNWY4MTliZDcuLjVm
YmRkNTA1Zjc5ZDRiMzI2ZTA5M2UwZmI3NmNkMzc1ZDBhMmM1YmEgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NhbGxFeHByZXNzaW9uLmpzCisrKyBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NhbGxFeHByZXNzaW9uLmpzCkBAIC01MiwyMCArNTIsMjIg
QEAgY2xhc3MgQ2FsbEV4cHJlc3Npb24gZXh0ZW5kcyBFeHByZXNzaW9uIHsKIAogICAgIHJlc29s
dmUocG9zc2libGVPdmVybG9hZHMsIHByb2dyYW0pCiAgICAgewotICAgICAgICBpZiAoIXBvc3Np
YmxlT3ZlcmxvYWRzKQotICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IodGhpcy5vcmln
aW4ub3JpZ2luU3RyaW5nLCAiRGlkIG5vdCBmaW5kIGFueSBmdW5jdGlvbnMgbmFtZWQgIiArIHRo
aXMubmFtZSk7Ci0KICAgICAgICAgbGV0IGZhaWx1cmVzID0gW107Ci0gICAgICAgIGxldCBvdmVy
bG9hZCA9IHJlc29sdmVPdmVybG9hZEltcGwocG9zc2libGVPdmVybG9hZHMsIHRoaXMuYXJndW1l
bnRUeXBlcywgdGhpcy5yZXR1cm5UeXBlKTsKKyAgICAgICAgbGV0IG92ZXJsb2FkOworICAgICAg
ICBpZiAocG9zc2libGVPdmVybG9hZHMpCisgICAgICAgICAgICBvdmVybG9hZCA9IHJlc29sdmVP
dmVybG9hZEltcGwocG9zc2libGVPdmVybG9hZHMsIHRoaXMuYXJndW1lbnRUeXBlcywgdGhpcy5y
ZXR1cm5UeXBlKTsKIAotICAgICAgICBpZiAoIW92ZXJsb2FkLmZ1bmMpIHsKKyAgICAgICAgaWYg
KCFvdmVybG9hZCB8fCAhb3ZlcmxvYWQuZnVuYykgeworICAgICAgICAgICAgaWYgKCFvdmVybG9h
ZCkKKyAgICAgICAgICAgICAgICBvdmVybG9hZCA9IHt9OwogICAgICAgICAgICAgY29uc3QgZnVu
YyA9IHRoaXMuX3Jlc29sdmVCeUluc3RhbnRpYXRpb24ocHJvZ3JhbSk7CiAgICAgICAgICAgICBp
ZiAoZnVuYykKICAgICAgICAgICAgICAgICBvdmVybG9hZC5mdW5jID0gZnVuYzsKICAgICAgICAg
fQogCi0KICAgICAgICAgaWYgKCFvdmVybG9hZC5mdW5jKSB7CisgICAgICAgICAgICBpZiAoIW92
ZXJsb2FkLmZhaWx1cmVzKQorICAgICAgICAgICAgICAgIG92ZXJsb2FkLmZhaWx1cmVzID0gW107
CiAgICAgICAgICAgICBmYWlsdXJlcy5wdXNoKC4uLm92ZXJsb2FkLmZhaWx1cmVzKTsKICAgICAg
ICAgICAgIGxldCBtZXNzYWdlID0gIkRpZCBub3QgZmluZCBmdW5jdGlvbiBuYW1lZCAiICsgdGhp
cy5uYW1lICsgIiBmb3IgY2FsbCB3aXRoICI7CiAgICAgICAgICAgICBtZXNzYWdlICs9ICJhcmd1
bWVudCB0eXBlcyAoIiArIHRoaXMuYXJndW1lbnRUeXBlcyArICIpIjsKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrVHlwZXNXaXRoQXJndW1lbnRzLmpzIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMmY2OTE0MmEzNTE3ZDI5NDkwMDUzMGMwY2YwNjZjOWJmZDIyNzdhZgotLS0g
L2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrVHlwZXNX
aXRoQXJndW1lbnRzLmpzCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIg
SU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVH
TElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQor
ICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4gCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworZnVuY3Rpb24gY2hlY2tUeXBl
c1dpdGhBcmd1bWVudHMocHJvZ3JhbSkKK3sKKyAgICBjbGFzcyBUeXBlV2l0aEFyZ3VtZW50c0No
ZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKKyAgICAgICAgdmlzaXRUeXBlUmVmKG5vZGUpCisgICAg
ICAgIHsKKyAgICAgICAgICAgIGlmICgobm9kZS5uYW1lID09ICJ2ZWN0b3IiICYmIG5vZGUudHlw
ZUFyZ3VtZW50cy5sZW5ndGggIT0gMikKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09
ICJtYXRyaXgiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMykKKyAgICAgICAgICAg
ICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJlMUQiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5s
ZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJSV1RleHR1cmUx
RCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8
IChub2RlLm5hbWUgPT0gIlRleHR1cmUxREFycmF5IiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVu
Z3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiUldUZXh0dXJlMURB
cnJheSIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAg
IHx8IChub2RlLm5hbWUgPT0gIlRleHR1cmUyRCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0
aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlJXVGV4dHVyZTJEIiAm
JiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5v
ZGUubmFtZSA9PSAiVGV4dHVyZTJEQXJyYXkiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGgg
IT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJSV1RleHR1cmUyREFycmF5
IiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwg
KG5vZGUubmFtZSA9PSAiVGV4dHVyZTNEIiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9
IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiUldUZXh0dXJlM0QiICYmIG5v
ZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5u
YW1lID09ICJUZXh0dXJlQ3ViZSIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKSkK
KyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEJ1aWx0aW4gdHlwZSAke25vZGUubmFt
ZX0gc2hvdWxkIGFsd2F5cyBoYXZlIHR5cGUgYXJndW1lbnRzLmApOworICAgICAgICB9CisgICAg
fQorICAgIHByb2dyYW0udmlzaXQobmV3IFR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlcigpKTsKK30K
KwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qcyBi
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrZXIuanMKaW5kZXggMWExNGM4NjZh
Y2VkNDExMmIxODBmNjkxNTZjMDZkMmI2NjRkODdlMi4uMDAxODhkNzBlYmIxYTZiYzM0NTBmNDYz
NjJkMWY5NmFlMzg3Y2JhMiAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvQ2hlY2tlci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DaGVja2Vy
LmpzCkBAIC00MSw4ICs0MSwxMyBAQCBjbGFzcyBDaGVja2VyIGV4dGVuZHMgVmlzaXRvciB7CiAg
ICAgICAgICAgICBzdGF0ZW1lbnQudmlzaXQodGhpcyk7CiAgICAgICAgIH0KICAgICAgICAgCi0g
ICAgICAgIGZvciAobGV0IHR5cGUgb2Ygbm9kZS50eXBlcy52YWx1ZXMoKSkKLSAgICAgICAgICAg
IGRvU3RhdGVtZW50KHR5cGUpOworICAgICAgICBmb3IgKGxldCB0eXBlIG9mIG5vZGUudHlwZXMu
dmFsdWVzKCkpIHsKKyAgICAgICAgICAgIGlmICh0eXBlIGluc3RhbmNlb2YgQXJyYXkpIHsKKyAg
ICAgICAgICAgICAgICBmb3IgKGxldCBjb25zdGl0dWVudFR5cGUgb2YgdHlwZSkKKyAgICAgICAg
ICAgICAgICAgICAgZG9TdGF0ZW1lbnQoY29uc3RpdHVlbnRUeXBlKTsKKyAgICAgICAgICAgIH0g
ZWxzZQorICAgICAgICAgICAgICAgIGRvU3RhdGVtZW50KHR5cGUpOworICAgICAgICB9CiAgICAg
ICAgIGZvciAobGV0IGZ1bmNzIG9mIG5vZGUuZnVuY3Rpb25zLnZhbHVlcygpKSB7CiAgICAgICAg
ICAgICBmb3IgKGxldCBmdW5jIG9mIGZ1bmNzKSB7CiAgICAgICAgICAgICAgICAgdGhpcy52aXNp
dEZ1bmMoZnVuYyk7CkBAIC0yNDcsNiArMjUyLDEwIEBAIGNsYXNzIENoZWNrZXIgZXh0ZW5kcyBW
aXNpdG9yIHsKICAgICB7CiAgICAgICAgIGlmICghbm9kZS50eXBlKQogICAgICAgICAgICAgdGhy
b3cgbmV3IEVycm9yKCJUeXBlIHJlZmVyZW5jZSB3aXRob3V0IGEgdHlwZSBpbiBjaGVja2VyOiAi
ICsgbm9kZSArICIgYXQgIiArIG5vZGUub3JpZ2luKTsKKyAgICAgICAgLy8gQWxsIHRoZSBzdHJ1
Y3RzIHdpbGwgYmUgdmlzaXRlZCBieSB2aXNpdFByb2dyYW0oKSBpdGVyYXRpbmcgdGhyb3VnaCBl
YWNoIHRvcC1sZXZlbCB0eXBlLgorICAgICAgICAvLyBXZSBkb24ndCB3YW50IHRvIHJlY3Vyc2Ug
aGVyZSBiZWNhdXNlIHRoZSBjb250ZW50cyBvZiBzdHJ1Y3RzIGNhbiByZWZlciB0byB0aGVtc2Vs
dmVzIChlLmcuIGEgbGlua2VkIGxpc3QpLAorICAgICAgICAvLyBhbmQgdGhpcyB3b3VsZCBjYW4g
YW4gaW5maW5pdGUgbG9vcC4KKyAgICAgICAgLy8gVHlwZWRlZnMgY2FuJ3QgcmVmZXIgdG8gdGhl
bXNlbHZlcyBiZWNhdXNlIHdlIGNoZWNrIHRoYXQgaW4gVHlwZURlZlJlc29sdmVyLgogICAgICAg
ICBpZiAoIShub2RlLnR5cGUgaW5zdGFuY2VvZiBTdHJ1Y3RUeXBlKSkKICAgICAgICAgICAgIG5v
ZGUudHlwZS52aXNpdCh0aGlzKTsKICAgICB9CkBAIC0yNTQsNiArMjYzLDcgQEAgY2xhc3MgQ2hl
Y2tlciBleHRlbmRzIFZpc2l0b3IgewogICAgIHZpc2l0VmVjdG9yVHlwZShub2RlKQogICAgIHsK
ICAgICAgICAgbm9kZS5lbGVtZW50VHlwZS52aXNpdCh0aGlzKTsKKyAgICAgICAgbm9kZS5udW1F
bGVtZW50cy52aXNpdCh0aGlzKTsKIAogICAgICAgICBsZXQgaXNLbm93bkFsbG93ZWRWZWN0b3JF
bGVtZW50VHlwZSA9IGZhbHNlOwogICAgICAgICBmb3IgKGxldCB2ZWN0b3JFbGVtZW50VHlwZU5h
bWUgb2YgVmVjdG9yRWxlbWVudFR5cGVzKSB7CkBAIC0yNjgsNiArMjc4LDMzIEBAIGNsYXNzIENo
ZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKIAogICAgICAgICBpZiAoIWlzS25vd25BbGxvd2VkVmVj
dG9yRWxlbWVudFR5cGUpCiAgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcihgJHtub2Rl
LmVsZW1lbnRUeXBlfSBpcyBub3QgYSBwZXJtaXR0ZWQgdmVjdG9yIGVsZW1lbnQgdHlwZS5gKTsK
KyAgICAgICAgaWYgKG5vZGUubnVtRWxlbWVudHNWYWx1ZSAhPSAyICYmIG5vZGUubnVtRWxlbWVu
dHNWYWx1ZSAhPSAzICYmIG5vZGUubnVtRWxlbWVudHNWYWx1ZSAhPSA0KQorICAgICAgICAgICAg
dGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7bm9kZS50b1N0cmluZygpfTogJHtub2RlLm51bUVsZW1l
bnRzVmFsdWV9IGlzIG5vdCAyLCAzLCBvciA0LmApOworICAgIH0KKworICAgIHZpc2l0TWF0cml4
VHlwZShub2RlKQorICAgIHsKKyAgICAgICAgbm9kZS5lbGVtZW50VHlwZS52aXNpdCh0aGlzKTsK
KyAgICAgICAgbm9kZS5udW1Sb3dzLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bUNvbHVt
bnMudmlzaXQodGhpcyk7CisKKyAgICAgICAgbGV0IGlzS25vd25BbGxvd2VkVmVjdG9yRWxlbWVu
dFR5cGUgPSBmYWxzZTsKKyAgICAgICAgZm9yIChsZXQgZWxlbWVudFR5cGVOYW1lIG9mIFsiaGFs
ZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICBjb25zdCBlbGVtZW50VHlwZSA9IHRoaXMuX3By
b2dyYW0uZ2xvYmFsTmFtZUNvbnRleHQuZ2V0KFR5cGUsIGVsZW1lbnRUeXBlTmFtZSk7CisgICAg
ICAgICAgICBpZiAoIWVsZW1lbnRUeXBlKQorICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHlw
ZUVycm9yKGAke2VsZW1lbnRUeXBlTmFtZX0gaXMgbm90IGEga25vd24gbmF0aXZlIHR5cGUgaW4g
dGhlIHN0YW5kYXJkIGxpYnJhcnkgb3IgaW50cmluc2ljcy5gKTsKKyAgICAgICAgICAgIGlmIChl
bGVtZW50VHlwZS5lcXVhbHMobm9kZS5lbGVtZW50VHlwZSkpIHsKKyAgICAgICAgICAgICAgICBp
c0tub3duQWxsb3dlZFZlY3RvckVsZW1lbnRUeXBlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGlmICghaXNLbm93bkFs
bG93ZWRWZWN0b3JFbGVtZW50VHlwZSkKKyAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9y
KGAke25vZGUuZWxlbWVudFR5cGV9IGlzIG5vdCBhIHBlcm1pdHRlZCB2ZWN0b3IgZWxlbWVudCB0
eXBlLmApOworICAgICAgICBpZiAobm9kZS5udW1Sb3dzVmFsdWUgIT0gMiAmJiBub2RlLm51bVJv
d3NWYWx1ZSAhPSAzICYmIG5vZGUubnVtUm93c1ZhbHVlICE9IDQpCisgICAgICAgICAgICB0aHJv
dyBuZXcgV1R5cGVFcnJvcihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUubnVtUm93c1ZhbHVl
fSBpcyBub3QgMiwgMywgb3IgNC5gKTsKKyAgICAgICAgaWYgKG5vZGUubnVtQ29sdW1uc1ZhbHVl
ICE9IDIgJiYgbm9kZS5udW1Db2x1bW5zVmFsdWUgIT0gMyAmJiBub2RlLm51bUNvbHVtbnNWYWx1
ZSAhPSA0KQorICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7bm9kZS50b1N0cmlu
ZygpfTogJHtub2RlLm51bUNvbHVtbnNWYWx1ZX0gaXMgbm90IDIsIDMsIG9yIDQuYCk7CiAgICAg
fQogICAgIAogICAgIHZpc2l0QXJyYXlUeXBlKG5vZGUpCmRpZmYgLS1naXQgYS9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9GbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5qcyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVy
LmpzCmluZGV4IDE5NzBmOGVkOTMyY2QzNTMwYTQ4ZGMzMWFmOGM5YzQyNDBkZGU4ZDAuLmUwZTE2
MWZmMTBjY2QzYzA5OTJiOWE5MjY0OWY0ZTNhMDBiYTExMTcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzCisr
KyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5lZFN0cnVjdE9mZnNldEdh
dGhlcmVyLmpzCkBAIC03NCw1ICs3NCwxNyBAQCBjbGFzcyBGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRH
YXRoZXJlciBleHRlbmRzIFZpc2l0b3IgewogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0KICAg
ICB9CisKKyAgICB2aXNpdE1hdHJpeFR5cGUobm9kZSkKKyAgICB7CisgICAgICAgIGNvbnN0IGZp
ZWxkTmFtZXMgPSBbICJyb3cwIiwgInJvdzEiLCAicm93MiIsICJyb3czIiBdOworICAgICAgICBm
b3IgKGxldCBpID0gMDsgaSA8IG5vZGUubnVtUm93c1ZhbHVlOyBpKyspIHsKKyAgICAgICAgICAg
IHRoaXMuX3Jlc3VsdC5wdXNoKHsKKyAgICAgICAgICAgICAgICBuYW1lOiB0aGlzLl9uYW1lLmpv
aW4oIi4iKSArICIuIiArIGZpZWxkTmFtZXNbaV0sCisgICAgICAgICAgICAgICAgb2Zmc2V0OiB0
aGlzLl9vZmZzZXQgKyBpICogbm9kZS5lbGVtZW50VHlwZS5zaXplICogbm9kZS5udW1Db2x1bW5z
VmFsdWUsCisgICAgICAgICAgICAgICAgdHlwZTogbm9kZS5lbGVtZW50VHlwZS5uYW1lICsgbm9k
ZS5udW1Db2x1bW5zVmFsdWUudG9TdHJpbmcoKQorICAgICAgICAgICAgfSk7CisgICAgICAgIH0K
KyAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0lu
ZmVyVHlwZXNGb3JDYWxsLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJU
eXBlc0ZvckNhbGwuanMKaW5kZXggNWYzMmVkMWM0OTBhN2RmODk0MWU5MTljMTMwY2Y2NWVhYThi
NmE0ZC4uYmNmZWI5ODZjYWZmNDlmMDI4N2E4MzY3OGJmMTE1NjI4NDdmMDM4OSAxMDA2NDQKLS0t
IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJUeXBlc0ZvckNhbGwuanMKKysr
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW5mZXJUeXBlc0ZvckNhbGwuanMKQEAg
LTM2LDEyICszNiw4IEBAIGZ1bmN0aW9uIGluZmVyVHlwZXNGb3JDYWxsKGZ1bmMsIGFyZ3VtZW50
VHlwZXMsIHJldHVyblR5cGUpCiAgICAgICAgIGlmICghYXJndW1lbnRUeXBlc1tpXS51bmlmeSh1
bmlmaWNhdGlvbkNvbnRleHQsIGZ1bmMucGFyYW1ldGVyc1tpXS50eXBlKSkKICAgICAgICAgICAg
IHJldHVybiB7ZmFpbHVyZTogbmV3IE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUoZnVuYywgIkFy
Z3VtZW50ICMiICsgKGkgKyAxKSArICIgIiArIChmdW5jLnBhcmFtZXRlcnNbaV0ubmFtZSA/ICJm
b3IgcGFyYW1ldGVyICIgKyBmdW5jLnBhcmFtZXRlcnNbaV0ubmFtZSArICIgIiA6ICIiKSArICJk
b2VzIG5vdCBtYXRjaCAocGFzc2VkICIgKyBhcmd1bWVudFR5cGVzW2ldICsgIiwgcmVxdWlyZSAi
ICsgZnVuYy5wYXJhbWV0ZXJzW2ldLnR5cGUgKyAiKSIpfTsKICAgICB9Ci0gICAgaWYgKHJldHVy
blR5cGUgJiYgIXJldHVyblR5cGUudW5pZnkodW5pZmljYXRpb25Db250ZXh0LCBmdW5jLnJldHVy
blR5cGUpKSB7Ci0gICAgICAgIGlmIChmdW5jLnJldHVyblR5cGUudG9TdHJpbmcoKSA9PSAidmVj
dG9yIikgewotICAgICAgICAgICAgcmV0dXJuVHlwZS51bmlmeSh1bmlmaWNhdGlvbkNvbnRleHQs
IGZ1bmMucmV0dXJuVHlwZSkKLSAgICAgICAgfQorICAgIGlmIChyZXR1cm5UeXBlICYmICFyZXR1
cm5UeXBlLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgZnVuYy5yZXR1cm5UeXBlKSkKICAgICAg
ICAgcmV0dXJuIHtmYWlsdXJlOiBuZXcgT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZShmdW5jLCAi
UmV0dXJuIHR5cGUgIiArIGZ1bmMucmV0dXJuVHlwZSArICIgZG9lcyBub3QgbWF0Y2ggIiArIHJl
dHVyblR5cGUpfTsKLSAgICB9CiAgICAgbGV0IHZlcmlmaWNhdGlvblJlc3VsdCA9IHVuaWZpY2F0
aW9uQ29udGV4dC52ZXJpZnkoKTsKICAgICBpZiAoIXZlcmlmaWNhdGlvblJlc3VsdC5yZXN1bHQp
CiAgICAgICAgIHJldHVybiB7ZmFpbHVyZTogbmV3IE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUo
ZnVuYywgdmVyaWZpY2F0aW9uUmVzdWx0LnJlYXNvbil9OwpAQCAtNDksMyArNDUsMjEgQEAgZnVu
Y3Rpb24gaW5mZXJUeXBlc0ZvckNhbGwoZnVuYywgYXJndW1lbnRUeXBlcywgcmV0dXJuVHlwZSkK
ICAgICByZXR1cm4ge2Z1bmMsIHVuaWZpY2F0aW9uQ29udGV4dH07CiB9CiAKK2Z1bmN0aW9uIGlu
ZmVyVHlwZXNGb3JUeXBlQXJndW1lbnRzKHR5cGUsIHR5cGVBcmd1bWVudHMpCit7CisgICAgaWYg
KHR5cGVBcmd1bWVudHMubGVuZ3RoICE9IHR5cGUudHlwZUFyZ3VtZW50cy5sZW5ndGgpCisgICAg
ICAgIHJldHVybiB7ZmFpbHVyZTogbmV3IFR5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlKHR5
cGUsICJXcm9uZyBudW1iZXIgb2YgYXJndW1lbnRzIChwYXNzZWQgIiArIHR5cGVBcmd1bWVudHMu
bGVuZ3RoICsgIiwgcmVxdWlyZSAiICsgdHlwZS50eXBlQXJndW1lbnRzLmxlbmd0aCArICIpIil9
OworICAgIGxldCB1bmlmaWNhdGlvbkNvbnRleHQgPSBuZXcgVW5pZmljYXRpb25Db250ZXh0KCk7
CisKKyAgICBmb3IgKGxldCBpID0gMDsgaSA8IHR5cGVBcmd1bWVudHMubGVuZ3RoOyArK2kpIHsK
KyAgICAgICAgaWYgKCF0eXBlQXJndW1lbnRzW2ldKQorICAgICAgICAgICAgdGhyb3cgbmV3IEVy
cm9yKCJOdWxsIHR5cGUgYXJndW1lbnQgYXQgaSA9ICIgKyBpKTsKKyAgICAgICAgaWYgKCF0eXBl
QXJndW1lbnRzW2ldLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgdHlwZS50eXBlQXJndW1lbnRz
W2ldKSkKKyAgICAgICAgICAgIHJldHVybiB7ZmFpbHVyZTogbmV3IFR5cGVPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlKHR5cGUsICJBcmd1bWVudCAjIiArIChpICsgMSkgKyAiICIgKyAodHlwZS50
eXBlQXJndW1lbnRzW2ldLm5hbWUgPyAiZm9yIHBhcmFtZXRlciAiICsgdHlwZS50eXBlQXJndW1l
bnRzW2ldLm5hbWUgKyAiICIgOiAiIikgKyAiZG9lcyBub3QgbWF0Y2ggKHBhc3NlZCAiICsgdHlw
ZUFyZ3VtZW50c1tpXSArICIsIHJlcXVpcmUgIiArIHR5cGUudHlwZUFyZ3VtZW50c1tpXS50eXBl
ICsgIikiKX07CisgICAgfQorICAgIGxldCB2ZXJpZmljYXRpb25SZXN1bHQgPSB1bmlmaWNhdGlv
bkNvbnRleHQudmVyaWZ5KCk7CisgICAgaWYgKCF2ZXJpZmljYXRpb25SZXN1bHQucmVzdWx0KQor
ICAgICAgICByZXR1cm4ge2ZhaWx1cmU6IG5ldyBUeXBlT3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVy
ZSh0eXBlLCB2ZXJpZmljYXRpb25SZXN1bHQucmVhc29uKX07CisKKyAgICByZXR1cm4ge3R5cGUs
IHVuaWZpY2F0aW9uQ29udGV4dH07Cit9CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
SW50cmluc2ljcy5qcwppbmRleCA1MGQ0MGMwYzBlNDdlMTEyYmM3NGNjZmNjYjcwNDk0MjcxMTZi
MGZiLi4yY2FhYjAwYmM5NGYwYjQ3MGU3NjQ2ZDA4YjIxNjZmOTliMDUyODU2IDEwMDY0NAotLS0g
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzCisrKyBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ludHJpbnNpY3MuanMKQEAgLTMzLDE1ICszMyw3IEBA
IGNsYXNzIEludHJpbnNpY3MgewogICAgICAgICAvLyB0byBjYXRjaCB0aGUgaW50cmluc2ljcyBt
dXN0IGJlIGJhc2VkIG9uIHRoZSB0eXBlIG5hbWVzIHRoYXQgU3RhbmRhcmRMaWJyYXJ5LmpzIHVz
ZXMuCiAgICAgICAgIC8vIEZvciBleGFtcGxlLCBpZiBhIG5hdGl2ZSBmdW5jdGlvbiBpcyBkZWNs
YXJlZCB1c2luZyAiaW50IiByYXRoZXIgdGhhbiAiaW50IiwgdGhlbiB3ZSBtdXN0CiAgICAgICAg
IC8vIHVzZSAiaW50IiBoZXJlLCBzaW5jZSB3ZSBkb24ndCB5ZXQga25vdyB0aGF0IHRoZXkgYXJl
IHRoZSBzYW1lIHR5cGUuCi0gICAgICAgIAotICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAg
ICAgICAgIm5hdGl2ZSB0eXBlZGVmIHZvaWQiLAotICAgICAgICAgICAgdHlwZSA9PiB7Ci0gICAg
ICAgICAgICAgICAgdGhpcy52b2lkID0gdHlwZTsKLSAgICAgICAgICAgICAgICB0eXBlLnNpemUg
PSAwOwotICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoKSA9PiB7
IH07Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgZnVuY3Rpb24gaXNCaXR3
aXNlRXF1aXZhbGVudChsZWZ0LCByaWdodCkKICAgICAgICAgewogICAgICAgICAgICAgbGV0IGRv
dWJsZUFycmF5ID0gbmV3IEZsb2F0NjRBcnJheSgxKTsKQEAgLTU2LDU4ICs0OCw4MyBAQCBjbGFz
cyBJbnRyaW5zaWNzIHsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB9CiAKKyAg
ICAgICAgZnVuY3Rpb24gY2FzdCh0eXBlZEFycmF5Q29uc3RydWN0b3IsIG51bWJlcikKKyAgICAg
ICAgeworICAgICAgICAgICAgdmFyIGFycmF5ID0gbmV3IHR5cGVkQXJyYXlDb25zdHJ1Y3Rvcigx
KTsKKyAgICAgICAgICAgIGFycmF5WzBdID0gbnVtYmVyOworICAgICAgICAgICAgcmV0dXJuIGFy
cmF5WzBdOworICAgICAgICB9CisKKyAgICAgICAgZnVuY3Rpb24gYml0d2lzZUNhc3QodHlwZWRB
cnJheUNvbnN0cnVjdG9yMSwgdHlwZWRBcnJheUNvbnN0cnVjdG9yMiwgdmFsdWUpCisgICAgICAg
IHsKKyAgICAgICAgICAgIGxldCB0eXBlZEFycmF5MSA9IG5ldyB0eXBlZEFycmF5Q29uc3RydWN0
b3IxKDEpOworICAgICAgICAgICAgbGV0IHR5cGVkQXJyYXkyID0gbmV3IHR5cGVkQXJyYXlDb25z
dHJ1Y3RvcjIodHlwZWRBcnJheTEuYnVmZmVyKTsKKyAgICAgICAgICAgIHR5cGVkQXJyYXkxWzBd
ID0gdmFsdWU7CisgICAgICAgICAgICByZXR1cm4gdHlwZWRBcnJheTJbMF07CisgICAgICAgIH0K
KworICAgICAgICBmdW5jdGlvbiBjYXN0VG9IYWxmKG51bWJlcikKKyAgICAgICAgeworICAgICAg
ICAgICAgLy8gRklYTUU6IE1ha2UgdGhpcyBtYXRoIG9iZXkgSUVFRSA3NTQuCisgICAgICAgICAg
ICBpZiAoTnVtYmVyLmlzTmFOKG51bWJlcikpCisgICAgICAgICAgICAgICByZXR1cm4gbnVtYmVy
CisgICAgICAgICAgICBpZiAobnVtYmVyID4gNjU1MDQpCisgICAgICAgICAgICAgICAgcmV0dXJu
IE51bWJlci5QT1NJVElWRV9JTkZJTklUWTsKKyAgICAgICAgICAgIGlmIChudW1iZXIgPCAtNjU1
MDQpCisgICAgICAgICAgICAgICAgcmV0dXJuIE51bWJlci5ORUdBVElWRV9JTkZJTklUWTsKKyAg
ICAgICAgICAgIGlmIChudW1iZXIgPiAwICYmIG51bWJlciA8IE1hdGgucG93KDIsIC0yNCkpCisg
ICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICBpZiAobnVtYmVyIDwgMCAmJiBu
dW1iZXIgPiAtTWF0aC5wb3coMiwgLTI0KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gLTA7Cisg
ICAgICAgICAgICBsZXQgZG91YmxlQXJyYXkgPSBuZXcgRmxvYXQ2NEFycmF5KDEpOworICAgICAg
ICAgICAgbGV0IHVpbnRBcnJheSA9IG5ldyBVaW50OEFycmF5KGRvdWJsZUFycmF5LmJ1ZmZlcik7
CisgICAgICAgICAgICBkb3VibGVBcnJheVswXSA9IG51bWJlcjsKKyAgICAgICAgICAgIGxldCBz
aWduID0gdWludEFycmF5WzddICYgMHg4MDsKKyAgICAgICAgICAgIGxldCBleHBvbmVudCA9ICgo
dWludEFycmF5WzddICYgMHg3ZikgPDwgNCkgfCAoKHVpbnRBcnJheVs2XSAmIDB4ZjApID4+PiA0
KTsKKyAgICAgICAgICAgIGxldCBzaWduaWZpY2FuZCA9ICgodWludEFycmF5WzZdICYgMHgwZikg
PDwgNikgfCAoKHVpbnRBcnJheVs1XSAmIDB4ZmMpID4+PiAyKTsKKworICAgICAgICAgICAgaWYg
KChleHBvbmVudCAtIDEwMjMpIDwgLTE0KSB7CisgICAgICAgICAgICAgICAgZXhwb25lbnQgPSAw
OworICAgICAgICAgICAgICAgIHNpZ25pZmljYW5kID0gKE1hdGguYWJzKG51bWJlcikgKiBNYXRo
LnBvdygyLCAyNCkpID4+PiAwOworICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IE1hdGgucG93
KDIsIC0xNCkgKiBzaWduaWZpY2FuZCAvIDEwMjQ7CisgICAgICAgICAgICAgICAgaWYgKHNpZ24g
IT0gMCkKKyAgICAgICAgICAgICAgICAgICAgdmFsdWUgKj0gLTE7CisgICAgICAgICAgICAgICAg
cmV0dXJuIHZhbHVlOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBkb3VibGVBcnJheVsw
XSA9IDA7CisKKyAgICAgICAgICAgIHVpbnRBcnJheVs3XSB8PSBzaWduOworICAgICAgICAgICAg
dWludEFycmF5WzddIHw9IChleHBvbmVudCA+Pj4gNCk7CisgICAgICAgICAgICB1aW50QXJyYXlb
Nl0gfD0gKChleHBvbmVudCA8PCA0KSAmIDB4ZjApOworICAgICAgICAgICAgdWludEFycmF5WzZd
IHw9IChzaWduaWZpY2FuZCA+Pj4gNik7CisgICAgICAgICAgICB1aW50QXJyYXlbNV0gfD0gKChz
aWduaWZpY2FuZCA8PCAyKSAmIDB4ZmMpOworCisgICAgICAgICAgICByZXR1cm4gZG91YmxlQXJy
YXlbMF07CisgICAgICAgIH0KKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAg
Im5hdGl2ZSB0eXBlZGVmIGludCIsCisgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgdm9pZCIs
CiAgICAgICAgICAgICB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0aGlzLmludCA9IHR5cGU7
Ci0gICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7Ci0gICAgICAgICAgICAg
ICAgdHlwZS5pc0ludCA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRy
dWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc1NpZ25lZCA9IHRydWU7Ci0gICAgICAgICAgICAg
ICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBpc0JpdHdpc2VFcXVpdmFsZW50KHZhbHVl
IHwgMCwgdmFsdWUpOwotICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7Ci0gICAgICAgICAg
ICAgICAgdHlwZS5kZWZhdWx0VmFsdWUgPSAwOwotICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRl
TGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwg
dmFsdWUgfCAwLCB0eXBlKTsKLSAgICAgICAgICAgICAgICB0eXBlLnN1Y2Nlc3NvclZhbHVlID0g
dmFsdWUgPT4gKHZhbHVlICsgMSkgfCAwOwotICAgICAgICAgICAgICAgIHR5cGUudmFsdWVzRXF1
YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKLSAgICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVm
YXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7Ci0g
ICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUgPT4g
dmFsdWUgfCAwOwotICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVy
YWwgPSB2YWx1ZSA9PiB2YWx1ZSB8IDA7Ci0gICAgICAgICAgICAgICAgdHlwZS5hbGxWYWx1ZXMg
PSBmdW5jdGlvbiooKSB7IAotICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8
PSAweGZmZmZmZmZmOyArK2kpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9
IGkgfCAwOwotICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiB2YWx1ZSwgbmFt
ZTogdmFsdWV9OwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfTsKKyAg
ICAgICAgICAgICAgICB0aGlzLnZvaWQgPSB0eXBlOworICAgICAgICAgICAgICAgIHR5cGUuc2l6
ZSA9IDA7CisgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9ICgpID0+
IHsgfTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIHR5cGVkZWYgdWludCIsCisgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYg
Ym9vbCIsCiAgICAgICAgICAgICB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0aGlzLnVpbnQg
PSB0eXBlOworICAgICAgICAgICAgICAgIHRoaXMuYm9vbCA9IHR5cGU7CiAgICAgICAgICAgICAg
ICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc0ludCA9
IHRydWU7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7Ci0gICAgICAgICAg
ICAgICAgdHlwZS5pc1NpZ25lZCA9IGZhbHNlOwotICAgICAgICAgICAgICAgIHR5cGUuY2FuUmVw
cmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudCh2YWx1ZSA+Pj4gMCwgdmFsdWUp
OwogICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7Ci0gICAgICAgICAgICAgICAgdHlwZS5k
ZWZhdWx0VmFsdWUgPSAwOwotICAgICAgICAgICAgICAgIHR5cGUuY3JlYXRlTGl0ZXJhbCA9IChv
cmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBlKG9yaWdpbiwgdmFsdWUgPj4+IDAs
IHR5cGUpOwotICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiAo
dmFsdWUgKyAxKSA+Pj4gMDsKLSAgICAgICAgICAgICAgICB0eXBlLnZhbHVlc0VxdWFsID0gKGEs
IGIpID0+IGEgPT09IGI7Ci0gICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1
ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOwotICAgICAgICAg
ICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlID4+
PiAwOwotICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2
YWx1ZSA9PiB2YWx1ZSA+Pj4gMDsKLSAgICAgICAgICAgICAgICB0eXBlLmFsbFZhbHVlcyA9IGZ1
bmN0aW9uKigpIHsgCi0gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IDB4
ZmZmZmZmZmY7ICsraSkKLSAgICAgICAgICAgICAgICAgICAgICAgIHlpZWxkIHt2YWx1ZTogaSwg
bmFtZTogaX07Ci0gICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICAgICB0eXBlLnBvcHVs
YXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwg
ZmFsc2UpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAg
ICAgICAgICJuYXRpdmUgdHlwZWRlZiB1Y2hhciIsCiAgICAgICAgICAgICB0eXBlID0+IHsKICAg
ICAgICAgICAgICAgICB0aGlzLnVjaGFyID0gdHlwZTsKKyAgICAgICAgICAgICAgICB0eXBlLmlz
UHJpbWl0aXZlID0gdHJ1ZTsKICAgICAgICAgICAgICAgICB0eXBlLmlzSW50ID0gdHJ1ZTsKICAg
ICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKICAgICAgICAgICAgICAgICB0eXBl
LmlzU2lnbmVkID0gZmFsc2U7CkBAIC0xMjYsNDE5ICsxNDMsNzkzIEBAIGNsYXNzIEludHJpbnNp
Y3MgewogICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICB9KTsKIAorCisgICAgICAgICAg
ICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiB1c2hvcnQiLAor
ICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLnVzaG9ydCA9IHR5
cGU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOworICAgICAgICAg
ICAgICAgICB0eXBlLmlzSW50ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc051bWJl
ciA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNTaWduZWQgPSBmYWxzZTsKKyAgICAg
ICAgICAgICAgICAgdHlwZS5jYW5SZXByZXNlbnQgPSB2YWx1ZSA9PiBpc0JpdHdpc2VFcXVpdmFs
ZW50KHZhbHVlICYgMHhmZmZmLCB2YWx1ZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9
IDE7CisgICAgICAgICAgICAgICAgIHR5cGUuZGVmYXVsdFZhbHVlID0gMDsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5jcmVhdGVMaXRlcmFsID0gKG9yaWdpbiwgdmFsdWUpID0+IEludExpdGVyYWwu
d2l0aFR5cGUob3JpZ2luLCB2YWx1ZSAmIDB4ZmZmZiwgdHlwZSk7CisgICAgICAgICAgICAgICAg
IHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiAodmFsdWUgKyAxKSAmIDB4ZmZmZjsKKyAg
ICAgICAgICAgICAgICAgdHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09PSBiOworICAg
ICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwgb2Zmc2V0
KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0
VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlICYgMHhmZmZmOworICAgICAgICAg
ICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbVVpbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWUg
JiAweGZmZmY7CisgICAgICAgICAgICAgICAgIHR5cGUuYWxsVmFsdWVzID0gZnVuY3Rpb24qKCkg
eworICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPD0gMHhmZmZmOyArK2kp
CisgICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiBpLCBuYW1lOiBpfTsKKyAg
ICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICB9KTsKKwogICAgICAgICB0aGlzLl9tYXAu
c2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGZsb2F0IiwKLSAgICAgICAgICAgIHR5
cGUgPT4gewotICAgICAgICAgICAgICAgIHRoaXMuZmxvYXQgPSB0eXBlOwotICAgICAgICAgICAg
ICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOwotICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9
IDE7Ci0gICAgICAgICAgICAgICAgdHlwZS5pc0Zsb2F0aW5nID0gdHJ1ZTsKLSAgICAgICAgICAg
ICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJl
c2VudCA9IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQoTWF0aC5mcm91bmQodmFsdWUpLCB2
YWx1ZSk7Ci0gICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZm
ZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOwotICAgICAgICAgICAgICAgIHR5
cGUuZm9ybWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOwotICAgICAgICAg
ICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZTsK
LSAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUZsb2F0TGl0ZXJhbCA9IHZhbHVl
ID0+IE1hdGguZnJvdW5kKHZhbHVlKTsKLSAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICJu
YXRpdmUgdHlwZWRlZiB1aW50IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAg
ICAgICAgdGhpcy51aW50ID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1ByaW1pdGl2
ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJbnQgPSB0cnVlOworICAgICAgICAg
ICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc1Np
Z25lZCA9IGZhbHNlOworICAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2VudCA9IHZhbHVl
ID0+IGlzQml0d2lzZUVxdWl2YWxlbnQodmFsdWUgPj4+IDAsIHZhbHVlKTsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5zaXplID0gMTsKKyAgICAgICAgICAgICAgICAgdHlwZS5kZWZhdWx0VmFsdWUg
PSAwOworICAgICAgICAgICAgICAgICB0eXBlLmNyZWF0ZUxpdGVyYWwgPSAob3JpZ2luLCB2YWx1
ZSkgPT4gSW50TGl0ZXJhbC53aXRoVHlwZShvcmlnaW4sIHZhbHVlID4+PiAwLCB0eXBlKTsKKyAg
ICAgICAgICAgICAgICAgdHlwZS5zdWNjZXNzb3JWYWx1ZSA9IHZhbHVlID0+ICh2YWx1ZSArIDEp
ID4+PiAwOworICAgICAgICAgICAgICAgICB0eXBlLnZhbHVlc0VxdWFsID0gKGEsIGIpID0+IGEg
PT09IGI7CisgICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVm
ZmVyLCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCAwKTsKKyAgICAgICAgICAgICAgICAg
dHlwZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUgPT4gdmFsdWUgPj4+IDA7Cisg
ICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2YWx1ZSA9
PiB2YWx1ZSA+Pj4gMDsKKyAgICAgICAgICAgICAgICAgdHlwZS5hbGxWYWx1ZXMgPSBmdW5jdGlv
biooKSB7CisgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSAweGZmZmZm
ZmZmOyArK2kpCisgICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiBpLCBuYW1l
OiBpfTsKKyAgICAgICAgICAgICAgICAgfTsKKyAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0
aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGJvb2wiLAotICAgICAg
ICAgICAgdHlwZSA9PiB7Ci0gICAgICAgICAgICAgICAgdGhpcy5ib29sID0gdHlwZTsKLSAgICAg
ICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICB0eXBl
LnNpemUgPSAxOwotICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAo
YnVmZmVyLCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCBmYWxzZSk7Ci0gICAgICAgICAg
ICB9KTsKKyAgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgY2hhciIsCisgICAgICAgICAgICAg
dHlwZSA9PiB7CisgICAgICAgICAgICAgICAgIHRoaXMuY2hhciA9IHR5cGU7CisgICAgICAgICAg
ICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlz
SW50ID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7CisgICAg
ICAgICAgICAgICAgIHR5cGUuaXNTaWduZWQgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBl
LmNhblJlcHJlc2VudCA9IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQoY2FzdChJbnQ4QXJy
YXksIHZhbHVlKSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOworICAg
ICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7CisgICAgICAgICAgICAgICAgIHR5
cGUuY3JlYXRlTGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBl
KG9yaWdpbiwgY2FzdChJbnQ4QXJyYXksIHZhbHVlKSwgdHlwZSk7CisgICAgICAgICAgICAgICAg
IHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2YWx1ZSA9PiBjYXN0KEludDhBcnJheSwgdmFsdWUgKyAx
KTsKKyAgICAgICAgICAgICAgICAgdHlwZS52YWx1ZXNFcXVhbCA9IChhLCBiKSA9PiBhID09PSBi
OworICAgICAgICAgICAgICAgICB0eXBlLnBvcHVsYXRlRGVmYXVsdFZhbHVlID0gKGJ1ZmZlciwg
b2Zmc2V0KSA9PiBidWZmZXIuc2V0KG9mZnNldCwgMCk7CisgICAgICAgICAgICAgICAgIHR5cGUu
Zm9ybWF0VmFsdWVGcm9tSW50TGl0ZXJhbCA9IHZhbHVlID0+IGNhc3QoSW50OEFycmF5LCB2YWx1
ZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwgPSB2
YWx1ZSA9PiBjYXN0KEludDhBcnJheSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLmFs
bFZhbHVlcyA9IGZ1bmN0aW9uKigpIHsKKyAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkg
PSAwOyBpIDw9IDB4ZmY7ICsraSkgeworICAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1
ZSA9IGNhc3QoSW50OEFycmF5LCBpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICB5aWVsZCB7
dmFsdWU6IHZhbHVlLCBuYW1lOiB2YWx1ZX07CisgICAgICAgICAgICAgICAgICAgICB9CisgICAg
ICAgICAgICAgICAgIH07CisgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNl
dCgKKyAgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYgc2hvcnQiLAorICAgICAgICAgICAgIHR5
cGUgPT4geworICAgICAgICAgICAgICAgICB0aGlzLnNob3J0ID0gdHlwZTsKKyAgICAgICAgICAg
ICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuaXNJ
bnQgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAgICAg
ICAgICAgICAgICAgdHlwZS5pc1NpZ25lZCA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUu
Y2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudChjYXN0KEludDE2QXJy
YXksIHZhbHVlKSwgdmFsdWUpOworICAgICAgICAgICAgICAgICB0eXBlLnNpemUgPSAxOworICAg
ICAgICAgICAgICAgICB0eXBlLmRlZmF1bHRWYWx1ZSA9IDA7CisgICAgICAgICAgICAgICAgIHR5
cGUuY3JlYXRlTGl0ZXJhbCA9IChvcmlnaW4sIHZhbHVlKSA9PiBJbnRMaXRlcmFsLndpdGhUeXBl
KG9yaWdpbiwgY2FzdChJbnQxNkFycmF5LCB2YWx1ZSksIHR5cGUpOworICAgICAgICAgICAgICAg
ICB0eXBlLnN1Y2Nlc3NvclZhbHVlID0gdmFsdWUgPT4gY2FzdChJbnQxNkFycmF5LCB2YWx1ZSAr
IDEpOworICAgICAgICAgICAgICAgICB0eXBlLnZhbHVlc0VxdWFsID0gKGEsIGIpID0+IGEgPT09
IGI7CisgICAgICAgICAgICAgICAgIHR5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUgPSAoYnVmZmVy
LCBvZmZzZXQpID0+IGJ1ZmZlci5zZXQob2Zmc2V0LCAwKTsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5mb3JtYXRWYWx1ZUZyb21JbnRMaXRlcmFsID0gdmFsdWUgPT4gY2FzdChJbnQxNkFycmF5LCB2
YWx1ZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExpdGVyYWwg
PSB2YWx1ZSA9PiBjYXN0KEludDE2QXJyYXksIHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5hbGxWYWx1ZXMgPSBmdW5jdGlvbiooKSB7CisgICAgICAgICAgICAgICAgICAgICBmb3IgKGxl
dCBpID0gMDsgaSA8PSAweGZmZmY7ICsraSkgeworICAgICAgICAgICAgICAgICAgICAgICAgIGxl
dCB2YWx1ZSA9IGNhc3QoSW50MTZBcnJheSwgaSk7CisgICAgICAgICAgICAgICAgICAgICAgICAg
eWllbGQge3ZhbHVlOiB2YWx1ZSwgbmFtZTogdmFsdWV9OworICAgICAgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMu
X21hcC5zZXQoCisgICAgICAgICAgICAgIm5hdGl2ZSB0eXBlZGVmIGludCIsCisgICAgICAgICAg
ICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgIHRoaXMuaW50ID0gdHlwZTsKKyAgICAgICAg
ICAgICAgICAgdHlwZS5pc1ByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUu
aXNJbnQgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmlzTnVtYmVyID0gdHJ1ZTsKKyAg
ICAgICAgICAgICAgICAgdHlwZS5pc1NpZ25lZCA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5
cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudCh2YWx1ZSB8IDAs
IHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5zaXplID0gMTsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5kZWZhdWx0VmFsdWUgPSAwOworICAgICAgICAgICAgICAgICB0eXBlLmNyZWF0ZUxp
dGVyYWwgPSAob3JpZ2luLCB2YWx1ZSkgPT4gSW50TGl0ZXJhbC53aXRoVHlwZShvcmlnaW4sIHZh
bHVlIHwgMCwgdHlwZSk7CisgICAgICAgICAgICAgICAgIHR5cGUuc3VjY2Vzc29yVmFsdWUgPSB2
YWx1ZSA9PiAodmFsdWUgKyAxKSB8IDA7CisgICAgICAgICAgICAgICAgIHR5cGUudmFsdWVzRXF1
YWwgPSAoYSwgYikgPT4gYSA9PT0gYjsKKyAgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURl
ZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOwor
ICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9
PiB2YWx1ZSB8IDA7CisgICAgICAgICAgICAgICAgIHR5cGUuZm9ybWF0VmFsdWVGcm9tVWludExp
dGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZSB8IDA7CisgICAgICAgICAgICAgICAgIHR5cGUuYWxsVmFs
dWVzID0gZnVuY3Rpb24qKCkgeworICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7
IGkgPD0gMHhmZmZmZmZmZjsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZh
bHVlID0gaSB8IDA7CisgICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQge3ZhbHVlOiB2YWx1
ZSwgbmFtZTogdmFsdWV9OworICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ICB9OworICAgICAgICAgICAgIH0pOworCisgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAg
ICAgICAgICJuYXRpdmUgdHlwZWRlZiBoYWxmIiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAg
ICAgICAgICAgICAgICAgdGhpcy5oYWxmID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5p
c1ByaW1pdGl2ZSA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5cGUuc2l6ZSA9IDE7CisgICAg
ICAgICAgICAgICAgIHR5cGUuaXNGbG9hdGluZyA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5
cGUuaXNOdW1iZXIgPSB0cnVlOworICAgICAgICAgICAgICAgICB0eXBlLmNhblJlcHJlc2VudCA9
IHZhbHVlID0+IGlzQml0d2lzZUVxdWl2YWxlbnQoY2FzdFRvSGFsZih2YWx1ZSksIHZhbHVlKTsK
KyAgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZSA9IChidWZmZXIsIG9m
ZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOworICAgICAgICAgICAgICAgICB0eXBlLmZv
cm1hdFZhbHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1ZTsKKyAgICAgICAgICAgICAg
ICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZhbHVlID0+IHZhbHVlOworICAg
ICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUZsb2F0TGl0ZXJhbCA9IHZhbHVlID0+
IGNhc3RUb0hhbGYodmFsdWUpOworICAgICAgICAgICAgIH0pOworCisgICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBmbG9hdCIsCisgICAgICAgICAg
ICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgIHRoaXMuZmxvYXQgPSB0eXBlOworICAgICAg
ICAgICAgICAgICB0eXBlLmlzUHJpbWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgdHlw
ZS5zaXplID0gMTsKKyAgICAgICAgICAgICAgICAgdHlwZS5pc0Zsb2F0aW5nID0gdHJ1ZTsKKyAg
ICAgICAgICAgICAgICAgdHlwZS5pc051bWJlciA9IHRydWU7CisgICAgICAgICAgICAgICAgIHR5
cGUuY2FuUmVwcmVzZW50ID0gdmFsdWUgPT4gaXNCaXR3aXNlRXF1aXZhbGVudChNYXRoLmZyb3Vu
ZCh2YWx1ZSksIHZhbHVlKTsKKyAgICAgICAgICAgICAgICAgdHlwZS5wb3B1bGF0ZURlZmF1bHRW
YWx1ZSA9IChidWZmZXIsIG9mZnNldCkgPT4gYnVmZmVyLnNldChvZmZzZXQsIDApOworICAgICAg
ICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUludExpdGVyYWwgPSB2YWx1ZSA9PiB2YWx1
ZTsKKyAgICAgICAgICAgICAgICAgdHlwZS5mb3JtYXRWYWx1ZUZyb21VaW50TGl0ZXJhbCA9IHZh
bHVlID0+IHZhbHVlOworICAgICAgICAgICAgICAgICB0eXBlLmZvcm1hdFZhbHVlRnJvbUZsb2F0
TGl0ZXJhbCA9IHZhbHVlID0+IE1hdGguZnJvdW5kKHZhbHVlKTsKKyAgICAgICAgICAgICB9KTsK
KworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBh
dG9taWNfaW50IiwKKyAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICAgdGhp
cy5hdG9taWNfaW50ID0gdHlwZTsKKyAgICAgICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgICJuYXRpdmUgdHlwZWRlZiBhdG9taWNfdWludCIsCisgICAg
ICAgICAgICAgdHlwZSA9PiB7CisgICAgICAgICAgICAgICAgIHRoaXMuYXRvbWljX3VpbnQgPSB0
eXBlOworICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIGZvciAobGV0IHZlY3RvclR5cGUgb2Yg
VmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0gICAgICAgICAgICBmb3IgKGxldCB2ZWN0b3JTaXplIG9m
IFZlY3RvckVsZW1lbnRTaXplcykKLSAgICAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGBuYXRp
dmUgdHlwZWRlZiB2ZWN0b3I8JHt2ZWN0b3JUeXBlfSwgJHt2ZWN0b3JTaXplfT5gLCB0eXBlID0+
IHt9KTsKKyAgICAgICAgICAgIGZvciAobGV0IHZlY3RvclNpemUgb2YgVmVjdG9yRWxlbWVudFNp
emVzKSB7CisgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYgdmVj
dG9yPCR7dmVjdG9yVHlwZX0sICR7dmVjdG9yU2l6ZX0+YCwgdHlwZSA9PiB7CisgICAgICAgICAg
ICAgICAgICAgIHRoaXNbYHZlY3Rvcjwke3ZlY3RvclR5cGV9LCAke3ZlY3RvclNpemV9PmBdID0g
dHlwZTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQotICAg
ICAgICAKKworICAgICAgICBmb3IgKGxldCB0eXBlIG9mIFsiaGFsZiIsICJmbG9hdCJdKSB7Cisg
ICAgICAgICAgICBmb3IgKGxldCBoZWlnaHQgPSAyOyBoZWlnaHQgPD0gNDsgKytoZWlnaHQpIHsK
KyAgICAgICAgICAgICAgICBmb3IgKGxldCB3aWR0aCA9IDI7IHdpZHRoIDw9IDQ7ICsrd2lkdGgp
IHsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYgbWF0
cml4PCR7dHlwZX0sICR7aGVpZ2h0fSwgJHt3aWR0aH0+YCwgdHlwZSA9PiB7CisgICAgICAgICAg
ICAgICAgICAgICAgICB0aGlzW2BtYXRyaXg8JHt0eXBlfSwgJHtoZWlnaHR9LCAke3dpZHRofT5g
XSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIG9wZXJhdG9yIGludCh1aW50KSIsCi0gICAgICAgICAgICBmdW5jID0+IHsK
LSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIu
Ym94KHZhbHVlLmxvYWRWYWx1ZSgpIHwgMCk7CisgICAgICAgICAgICAibmF0aXZlIHR5cGVkZWYg
c2FtcGxlciIsCisgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAgICAgICAgICAgICB0aGlzLnNh
bXBsZXIgPSB0eXBlOworICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBGaWd1cmUgb3V0IHdoYXQg
dG8gcHV0IGhlcmUuCiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKKyAgICAgICAgZm9yIChs
ZXQgdGV4dHVyZVR5cGUgb2YgWyJUZXh0dXJlMUQiLCAiUldUZXh0dXJlMUQiLCAiVGV4dHVyZTFE
QXJyYXkiLCAiUldUZXh0dXJlMURBcnJheSIsICJUZXh0dXJlMkQiLCAiUldUZXh0dXJlMkQiLCAi
VGV4dHVyZTJEQXJyYXkiLCAiUldUZXh0dXJlMkRBcnJheSIsICJUZXh0dXJlM0QiLCAiUldUZXh0
dXJlM0QiLCAiVGV4dHVyZUN1YmUiXSkgeworICAgICAgICAgICAgZm9yIChsZXQgdHlwZUFyZ3Vt
ZW50IG9mIFsiYm9vbCIsICJ1Y2hhciIsICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNob3J0
IiwgImludCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgICAgICAgICBgbmF0aXZlIHR5cGVkZWYgJHt0ZXh0dXJlVHlwZX08
JHt0eXBlQXJndW1lbnR9PmAsCisgICAgICAgICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAg
ICAgICAgICAgICAgICAgICAgdGhpc1tgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1lbnR9PmBd
ID0gdHlwZTsKKyAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgICAgZm9yIChs
ZXQgaSA9IDI7IGkgPD0gNDsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgIHRoaXMuX21hcC5z
ZXQoCisgICAgICAgICAgICAgICAgICAgICAgICBgbmF0aXZlIHR5cGVkZWYgJHt0ZXh0dXJlVHlw
ZX08JHt0eXBlQXJndW1lbnR9JHtpfT5gLAorICAgICAgICAgICAgICAgICAgICAgICAgdHlwZSA9
PiB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpc1tgJHt0ZXh0dXJlVHlwZX08JHt0
eXBlQXJndW1lbnR9JHtpfT5gXSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsK
KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBm
b3IgKGxldCB0ZXh0dXJlVHlwZSBvZiBbIlRleHR1cmVEZXB0aDJEIiwgIlJXVGV4dHVyZURlcHRo
MkQiLCAiVGV4dHVyZURlcHRoMkRBcnJheSIsICJSV1RleHR1cmVEZXB0aDJEQXJyYXkiLCAiVGV4
dHVyZURlcHRoQ3ViZSJdKSB7CisgICAgICAgICAgICBmb3IgKGxldCB0eXBlQXJndW1lbnQgb2Yg
WyJmbG9hdCIsICJoYWxmIl0pIHsKKyAgICAgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAg
ICAgICAgICAgICAgICAgICBgbmF0aXZlIHR5cGVkZWYgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJn
dW1lbnR9PmAsCisgICAgICAgICAgICAgICAgICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAg
ICAgICAgICAgdGhpc1tgJHt0ZXh0dXJlVHlwZX08JHt0eXBlQXJndW1lbnR9PmBdID0gdHlwZTsK
KyAgICAgICAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAg
ICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidXNob3J0IiwgInVpbnQiLCAiY2hhciIs
ICJzaG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgdWNoYXIoJHtwcmltaXRp
dmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRW
YWx1ZSgpICYgMHhmZik7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKworICAgICAg
ICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAidWludCIsICJjaGFyIiwgInNo
b3J0IiwgImludCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5z
ZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciB1c2hvcnQoJHtwcmltaXRpdmVU
eXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1
ZSgpICYgMHhmZmZmKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAgICAg
IGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAiY2hhciIsICJz
aG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgdWludCgke3ByaW1pdGl2ZVR5
cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVl
KCkgPj4+IDApOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9y
IChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIsICJ1aW50IiwgInNob3J0
IiwgImludCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQo
CisgICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBjaGFyKCR7cHJpbWl0aXZlVHlwZX0p
YCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChjYXN0KEludDhBcnJheSwgdmFs
dWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisgICAg
ICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAidWludCIs
ICJjaGFyIiwgImludCIsICJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21h
cC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBzaG9ydCgke3ByaW1pdGl2
ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goY2FzdChJbnQxNkFy
cmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9
CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVjaGFyIiwgInVzaG9ydCIs
ICJ1aW50IiwgImNoYXIiLCAic2hvcnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAg
ICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgaW50KCR7
cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChjYXN0
KEludDMyQXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgfSk7Cisg
ICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAi
dXNob3J0IiwgInVpbnQiLCAiY2hhciIsICJzaG9ydCIsICJpbnQiLCAiZmxvYXQiXSkgeworICAg
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9y
IGhhbGYoJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAg
ICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIu
Ym94KGNhc3RUb0hhbGYodmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9KTsK
KyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIs
ICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNob3J0IiwgImludCIsICJoYWxmIl0pIHsKKyAg
ICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRv
ciBmbG9hdCgke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7Cisg
ICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0
ci5ib3goTWF0aC5mcm91bmQodmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9
KTsKKyAgICAgICAgfQorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIG9wZXJhdG9yIGludCh1Y2hhcikiLAorICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciBp
bnQoYXRvbWljX2ludClgLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFs
dWUoKSB8IDApOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkpOwogICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJh
dG9yIGludChmbG9hdCkiLAorICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciB1aW50KGF0b21p
Y191aW50KWAsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpIHwg
MCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBF
UHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgdWlu
dChpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KGJvb2wsYm9vbCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSA+Pj4gMCk7Cisg
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9Pgor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0Lmxv
YWRWYWx1ZSgpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKworICAgICAgICBmb3IgKGxl
dCBwcmltaXRpdmVUeXBlIG9mIFsidWludCIsICJpbnQiLCAiZmxvYXQiXSkgeworICAgICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I9
PSgke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBm
dW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVm
dCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2Fk
VmFsdWUoKSA9PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgfSk7CisKKyAg
ICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9w
ZXJhdG9yPCgke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9
IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVm
dC5sb2FkVmFsdWUoKSA8IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICB9KTsK
KworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIGJv
b2wgb3BlcmF0b3I8PSgke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAg
ICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAg
ICAgfSk7CisKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5h
dGl2ZSBib29sIG9wZXJhdG9yPigke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlwZX0pYCwK
KyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAg
ICAgICAgICB9KTsKKworICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAg
ICBgbmF0aXZlIGJvb2wgb3BlcmF0b3I+PSgke3ByaW1pdGl2ZVR5cGV9LCR7cHJpbWl0aXZlVHlw
ZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVu
Yy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+PSByaWdodC5sb2FkVmFsdWUoKSk7Cisg
ICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0KKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1aW50KHVjaGFyKSIsCisgICAgICAgICAgICAi
bmF0aXZlIGludCBvcGVyYXRvci0oaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZh
bHVlLmxvYWRWYWx1ZSgpID4+PiAwKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KCgtdmFsdWUu
bG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAg
dGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCki
LAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgPj4+IDApOworICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3goTWF0aC5mcm91bmQoLXZhbHVlLmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAg
ICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJu
YXRpdmUgb3BlcmF0b3IgdWNoYXIoaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVy
YXRvcisoaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFs
dWUoKSAmIDB4ZmYpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZh
bHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAg
ICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRv
ciB1Y2hhcih1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvci0oaW50LGlu
dCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSAmIDB4ZmYp
OworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkg
PT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSByaWdo
dC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAg
ICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hhcihmbG9h
dCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3IqKGludCxpbnQpIiwKICAgICAg
ICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgJiAweGZmKTsKKyAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICogcmlnaHQubG9hZFZhbHVl
KCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFw
LnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGludCBvcGVyYXRvci8oaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9
PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBF
UHRyLmJveChNYXRoLmZyb3VuZCh2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkgfCAw
KTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciBmbG9hdCh1aW50KSIsCisgICAgICAgICAgICAi
bmF0aXZlIHVpbnQgb3BlcmF0b3IrKHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7
Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRy
LmJveChNYXRoLmZyb3VuZCh2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDAp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9yIGZsb2F0KHVjaGFyKSIsCisgICAgICAgICAgICAi
bmF0aXZlIHVpbnQgb3BlcmF0b3ItKHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7
Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRy
LmJveChNYXRoLmZyb3VuZCh2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDAp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcisoaW50LGludCkiLAorICAgICAgICAgICAg
Im5hdGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4g
ewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkg
PT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKyByaWdo
dC5sb2FkVmFsdWUoKSkgfCAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQu
bG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7
Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IHVpbnQgb3BlcmF0b3IrKHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9w
ZXJhdG9yLyh1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2FkVmFsdWUoKSkg
Pj4+IDApOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAv
IHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgb3BlcmF0
b3IrKGZsb2F0LGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAg
ICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKyByaWdodC5sb2Fk
VmFsdWUoKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21h
cC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvci0oaW50LGludCkiLAorICAg
ICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsZmxvYXQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZh
bHVlKCkgLSByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0
ci5ib3goTWF0aC5mcm91bmQobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7
CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAg
ICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvci0odWludCx1aW50KSIsCisgICAgICAgICAg
ICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yKihmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVu
YyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmln
aHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAt
IHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUoKSkpOwogICAg
ICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAg
Im5hdGl2ZSBmbG9hdCBvcGVyYXRvci8oZmxvYXQsZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMg
PT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQobGVmdC5sb2Fk
VmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIu
Ym94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkpOwog
ICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAg
ICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvciooaW50LGludCkiLAorICAgICAgICAgICAgIm5h
dGl2ZSBpbnQgb3BlcmF0b3ImKGludCxpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4gewot
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgKiBy
aWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKLSAgICAgICAgICAgICAgICB9OworICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgJiByaWdodC5sb2FkVmFsdWUoKSkg
fCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LHVpbnQpIiwKKyAgICAg
ICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yfChpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5j
ID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdo
dF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICog
cmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
KGxlZnQubG9hZFZhbHVlKCkgfCByaWdodC5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAg
IH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSBmbG9hdCBvcGVyYXRvciooZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJuYXRpdmUg
aW50IG9wZXJhdG9yXihpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKiByaWdo
dC5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2Fk
VmFsdWUoKSBeIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7Ci0gICAg
ICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBv
cGVyYXRvci8oaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3J+KGlu
dCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJv
eCgobGVmdC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOworICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goKH52YWx1
ZS5sb2FkVmFsdWUoKSkgfCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAg
ICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yLyh1aW50
LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yPDwoaW50LHVpbnQpIiwK
ICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxl
ZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOworICAgICAgICAgICAg
ICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSA8PCByaWdodC5sb2FkVmFsdWUoKSkg
fCAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3ImKGludCxpbnQpIiwKKyAgICAgICAg
ICAgICJuYXRpdmUgaW50IG9wZXJhdG9yPj4oaW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMg
PT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSAmIHJp
Z2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9h
ZFZhbHVlKCkgPj4gcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKLSAg
ICAgICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWlu
dCBvcGVyYXRvciYodWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICYgcmlnaHQubG9hZFZhbHVl
KCkpID4+PiAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKLSAgICAgICAgdGhpcy5fbWFw
LnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yfChpbnQsaW50KSIsCi0gICAg
ICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9h
ZFZhbHVlKCkgfCByaWdodC5sb2FkVmFsdWUoKSk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAg
CisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVy
YXRvcnwodWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAg
ICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAg
ICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIHwgcmlnaHQubG9hZFZhbHVlKCkpID4+
PiAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKLSAgICAgICAgdGhpcy5fbWFwLnNldCgK
LSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yXihpbnQsaW50KSIsCi0gICAgICAgICAg
ICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0
LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVl
KCkgXiByaWdodC5sb2FkVmFsdWUoKSk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAg
ICAgICAgdGhpcy5fbWFwLnNldCgKICAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcl4o
dWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CiAgICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIF4gcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsK
ICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAg
ICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3I8PChpbnQsdWludCkiLAorICAgICAgICAgICAg
Im5hdGl2ZSB1aW50IG9wZXJhdG9yfih1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0g
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPDwgcmlnaHQubG9h
ZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4gRVB0ci5ib3goKH52YWx1ZS5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCiAgICAgICAgICAgICAibmF0
aXZlIHVpbnQgb3BlcmF0b3I8PCh1aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewog
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
ICAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgPDwgcmlnaHQu
bG9hZFZhbHVlKCkpID4+PiAwKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAg
ICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3I+PihpbnQs
dWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCx1aW50KSIs
CiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxl
ZnQubG9hZFZhbHVlKCkgPj4gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgICAg
ICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSA+Pj4gcmlnaHQubG9hZFZhbHVlKCkpID4+PiAw
KTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCx1aW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGZsb2F0IGNvcyhmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0g
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9Pgot
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID4+PiByaWdodC5s
b2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmNv
cyh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAg
ICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3J+KGlu
dCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBzaW4oZmxvYXQpIiwKICAgICAgICAgICAg
IGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4gRVB0ci5ib3gofnZhbHVlLmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIu
Ym94KE1hdGguZnJvdW5kKE1hdGguc2luKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAg
ICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAi
bmF0aXZlIHVpbnQgb3BlcmF0b3J+KHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQg
dGFuKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KCh+dmFsdWUubG9hZFZhbHVl
KCkpID4+PiAwKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1
ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgudGFu
KHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAg
ICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yLyhm
bG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhY29zKGZsb2F0KSIsCiAg
ICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGgu
ZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgLyByaWdodC5sb2FkVmFsdWUoKSkpOworICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5hY29zKHZhbHVlLmxvYWRWYWx1ZSgpKSkp
OwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0g
ICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I9PShpbnQsaW50KSIsCisgICAgICAgICAg
ICAibmF0aXZlIGZsb2F0IGFzaW4oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAg
ICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAg
ICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA9PSByaWdodC5sb2Fk
VmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVd
KSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmFzaW4o
dmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KHVp
bnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhdGFuKGZsb2F0KSIsCiAgICAg
ICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9h
ZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
TWF0aC5mcm91bmQoTWF0aC5hdGFuKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAg
fSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIGJvb2wgb3BlcmF0b3I9PShib29sLGJvb2wpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxv
YXQgY29zaChmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguY29zaCh2YWx1ZS5sb2FkVmFs
dWUoKSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAu
c2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPT0oZmxvYXQsZmxvYXQpIiwK
KyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgc2luaChmbG9hdCkiLAogICAgICAgICAgICAgZnVu
YyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmln
aHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID09
IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5k
KE1hdGguc2luaCh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAg
ICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9w
ZXJhdG9yPChpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHRhbmgoZmxvYXQp
IiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50
YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
bGVmdC5sb2FkVmFsdWUoKSA8IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBm
dW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQ
dHIuYm94KE1hdGguZnJvdW5kKE1hdGgudGFuaCh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAg
ICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAg
ICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPCh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRp
dmUgZmxvYXQgY2VpbChmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpIDwgcmlnaHQubG9hZFZhbHVlKCkp
OworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAg
ICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5jZWlsKHZhbHVlLmxv
YWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8KGZsb2F0LGZsb2F0
KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGV4cChmbG9hdCkiLAogICAgICAgICAgICAg
ZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwg
cmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgp
IDwgcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91
bmQoTWF0aC5leHAodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAg
ICAgCisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBv
cGVyYXRvcjw9KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgZmxvb3IoZmxv
YXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5i
b3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAg
ICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmZsb29yKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwog
ICAgICAgICAgICAgfSk7Ci0gICAgICAgIAorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAg
ICAgICAgICAibmF0aXZlIGJvb2wgb3BlcmF0b3I8PSh1aW50LHVpbnQpIiwKKyAgICAgICAgICAg
ICJuYXRpdmUgZmxvYXQgbG9nKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAg
ICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPD0gcmlnaHQubG9hZFZh
bHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkg
PT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5sb2codmFs
dWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisKICAgICAgICAg
dGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcjw9KGZsb2F0
LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHJvdW5kKGZsb2F0KSIsCiAgICAg
ICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9h
ZFZhbHVlKCkgPD0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
TWF0aC5mcm91bmQoTWF0aC5yb3VuZCh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAg
IH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSBib29sIG9wZXJhdG9yPihpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0
IHNxcnQoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguc3FydCh2YWx1ZS5sb2FkVmFsdWUo
KSkpKTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPih1aW50LHVpbnQpIiwKKyAgICAg
ICAgICAgICJuYXRpdmUgZmxvYXQgdHJ1bmMoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4g
ewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkg
PT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0
LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgu
dHJ1bmModmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9KTsKLSAgICAgICAgCisK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRv
cj4oZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgZGR4KGZsb2F0KSIs
CiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0
aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxl
ZnQubG9hZFZhbHVlKCkgPiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVu
Yy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgwKTsKICAgICAgICAgICAg
IH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSBib29sIG9wZXJhdG9yPj0oaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9h
dCBkZHkoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgw
KTsKICAgICAgICAgICAgIH0pOwotICAgICAgICAKKwogICAgICAgICB0aGlzLl9tYXAuc2V0KAot
ICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPj0odWludCx1aW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGZsb2F0IHBvdyhmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9
PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRd
KSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID49IHJp
Z2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91
bmQoTWF0aC5wb3cobGVmdC5sb2FkVmFsdWUoKSwgcmlnaHQubG9hZFZhbHVlKCkpKSk7CiAgICAg
ICAgICAgICB9KTsKLSAgICAgICAgCisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAg
ICAgICJuYXRpdmUgYm9vbCBpc2Zpbml0ZShmbG9hdCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7
CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveChOdW1iZXIuaXNGaW5pdGUodmFsdWUubG9hZFZhbHVl
KCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAg
ICAgICAibmF0aXZlIGJvb2wgaXNpbmYoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4gewor
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAg
ICAgICAgICAgICAgICAgRVB0ci5ib3goKHZhbHVlLmxvYWRWYWx1ZSgpID09IE51bWJlci5QT1NJ
VElWRV9JTkZJTklUWSkgfHwgKHZhbHVlLmxvYWRWYWx1ZSgpID09IE51bWJlci5ORUdBVElWRV9J
TkZJTklUWSkpOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAg
ICAgICAgICAgICJuYXRpdmUgYm9vbCBpc25hbihmbG9hdCkiLAorICAgICAgICAgICAgZnVuYyA9
PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9Pgor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChOdW1iZXIuaXNOYU4odmFsdWUubG9hZFZhbHVl
KCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhp
cy4KICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVy
YXRvcj49KGZsb2F0LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGJvb2wgaXNub3JtYWwo
aGFsZikiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChp
c05hTih2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgLy8g
RklYTUU6IEltcGxlbWVudCB0aGlzLgorICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAg
ICAgIm5hdGl2ZSBib29sIGlzbm9ybWFsKGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsK
KyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAg
ICAgICAgICAgICAgICAgIEVQdHIuYm94KGlzTmFOKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAg
ICAgICAgICB9KTsKKworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2
ZSBmbG9hdCBhdGFuMihmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID49IHJpZ2h0LmxvYWRW
YWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5h
dGFuMihsZWZ0LmxvYWRWYWx1ZSgpLCByaWdodC5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAg
IH0pOwogCi0gICAgICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5cGVOYW1lIG9mIGFsbFZlY3Rv
clR5cGVOYW1lcygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYg
JHtuYXRpdmVWZWN0b3JUeXBlTmFtZX1gLCB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0eXBl
LmlzUHJpbWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAg
ICJuYXRpdmUgaW50IGFzaW50KGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KEZsb2F0MzJBcnJheSwgSW50MzJBcnJheSwg
dmFsdWUubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwogCi0gICAgICAgIGZvciAobGV0
IHN3aXp6bGUgb2YgU3dpenpsZU9wLmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFw
LnNldChzd2l6emxlLnRvU3RyaW5nKCksIGZ1bmMgPT4gc3dpenpsZS5pbnN0YW50aWF0ZUltcGxl
bWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJu
YXRpdmUgdWludCBhc3VpbnQoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goYml0d2lzZUNhc3QoRmxvYXQzMkFycmF5LCBVaW50MzJBcnJheSwg
dmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21h
cC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGFzZmxvYXQoaW50KSIsCisgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KEludDMy
QXJyYXksIEZsb2F0MzJBcnJheSwgdmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0p
OwogCi0gICAgICAgIGZvciAobGV0IGJvb2xPcCBvZiBPcGVyYXRvckJvb2wuZnVuY3Rpb25zKCkp
Ci0gICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGJvb2xPcC50b1N0cmluZygpLCBmdW5jID0+IGJv
b2xPcC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgdGhpcy5fbWFw
LnNldCgKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgYXNmbG9hdCh1aW50KSIsCisgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KFVpbnQz
MkFycmF5LCBGbG9hdDMyQXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICB9
KTsKIAotICAgICAgICBmb3IgKGxldCBhbmRlckluZGV4IG9mIE9wZXJhdG9yQW5kZXJJbmRleGVy
LmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChhbmRlckluZGV4LnRvU3Ry
aW5nKCksIGZ1bmMgPT4gYW5kZXJJbmRleC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMp
KTsKKyAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGlzLgorICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBmMTZ0b2YzMih1aW50KSIsCisgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KDApOworICAgICAgICAgICAg
fSk7CiAKLSAgICAgICAgZm9yIChsZXQgY2FzdCBvZiBCdWlsdGluVmVjdG9yQ29uc3RydWN0b3Jz
LmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChjYXN0LnRvU3RyaW5nKCks
IGZ1bmMgPT4gY2FzdC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAg
Ly8gRklYTUU6IEltcGxlbWVudCB0aGlzLgorICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAg
ICAgICAgIm5hdGl2ZSB1aW50IGYzMnRvZjE2KGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+
IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+Cisg
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KDApOworICAgICAgICAgICAgfSk7CiAKLSAgICAg
ICAgZm9yIChsZXQgZ2V0dGVyIG9mIEJ1aWx0aW5WZWN0b3JJbmRleEdldHRlci5mdW5jdGlvbnMo
KSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZ2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMgPT4g
Z2V0dGVyLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworICAgICAgICB0aGlzLl9t
YXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSB2b2lkIEFsbE1lbW9yeUJhcnJpZXJXaXRoR3Jv
dXBTeW5jKCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IGZ1bmN0aW9uKCkge307CisgICAgICAgICAgICB9KTsKIAotICAgICAg
ICBmb3IgKGxldCBzZXR0ZXIgb2YgQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmZ1bmN0aW9ucygp
KQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwgZnVuYyA9PiBz
ZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisgICAgICAgIHRoaXMuX21h
cC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIHZvaWQgRGV2aWNlTWVtb3J5QmFycmllcldpdGhH
cm91cFN5bmMoKSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gZnVuY3Rpb24oKSB7fTsKKyAgICAgICAgICAgIH0pOwogCi0gICAg
ICAgIGZvciAobGV0IGVxdWFsaXR5T3BlcmF0b3Igb2YgQnVpbHRpblZlY3RvckVxdWFsaXR5T3Bl
cmF0b3IuZnVuY3Rpb25zKCkpCi0gICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGVxdWFsaXR5T3Bl
cmF0b3IudG9TdHJpbmcoKSwgZnVuYyA9PiBlcXVhbGl0eU9wZXJhdG9yLmluc3RhbnRpYXRlSW1w
bGVtZW50YXRpb24oZnVuYykpOworICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAg
Im5hdGl2ZSB2b2lkIEdyb3VwTWVtb3J5QmFycmllcldpdGhHcm91cFN5bmMoKSIsCisgICAgICAg
ICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gZnVu
Y3Rpb24oKSB7fTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIGZvciAobGV0IG5hdGl2ZVZl
Y3RvclR5cGVOYW1lIG9mIGFsbFZlY3RvclR5cGVOYW1lcygpKSB7CisgICAgICAgICAgICB0aGlz
Ll9tYXAuc2V0KGBuYXRpdmUgdHlwZWRlZiAke25hdGl2ZVZlY3RvclR5cGVOYW1lfWAsIHR5cGUg
PT4geworICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOworICAgICAgICAg
ICAgfSk7CisgICAgICAgIH0KIAogICAgICAgICBmb3IgKGxldCBnZXR0ZXIgb2YgQnVpbHRpblZl
Y3RvckdldHRlci5mdW5jdGlvbnMoKSkKICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZ2V0dGVy
LnRvU3RyaW5nKCksIGZ1bmMgPT4gZ2V0dGVyLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykpOwogCiAgICAgICAgIGZvciAobGV0IHNldHRlciBvZiBCdWlsdGluVmVjdG9yU2V0dGVyLmZ1
bmN0aW9ucygpKQogICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwg
ZnVuYyA9PiBzZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisKKyAgICAg
ICAgZm9yIChsZXQgZ2V0dGVyIG9mIEJ1aWx0aW5NYXRyaXhHZXR0ZXIuZnVuY3Rpb25zKCkpCisg
ICAgICAgICAgICB0aGlzLl9tYXAuc2V0KGdldHRlci50b1N0cmluZygpLCBmdW5jID0+IGdldHRl
ci5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKworICAgICAgICBmb3IgKGxldCBz
ZXR0ZXIgb2YgQnVpbHRpbk1hdHJpeFNldHRlci5mdW5jdGlvbnMoKSkKKyAgICAgICAgICAgIHRo
aXMuX21hcC5zZXQoc2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMgPT4gc2V0dGVyLmluc3RhbnRpYXRl
SW1wbGVtZW50YXRpb24oZnVuYykpOworCisgICAgICAgIGZvciAobGV0IHR5cGUgb2YgWyJoYWxm
IiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAg
ICAgYG5hdGl2ZSAke3R5cGV9IG9wZXJhdG9yW10oJHt0eXBlfTJ4MilgLAorICAgICAgICAgICAg
ICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0g
KFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2Fk
VmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOworICAgICAgICAgICAgICAgIH0pOwor
ICAgICAgICB9CisKKyAgICAgICAgZm9yIChsZXQgc3dpenpsZSBvZiBTd2l6emxlT3AuZnVuY3Rp
b25zKCkpCisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KHN3aXp6bGUudG9TdHJpbmcoKSwgZnVu
YyA9PiBzd2l6emxlLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworCisgICAgICAg
IGZvciAobGV0IGNhc3Qgb2YgQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5mdW5jdGlvbnMoKSkK
KyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoY2FzdC50b1N0cmluZygpLCBmdW5jID0+IGNhc3Qu
aW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CiAgICAgfQotICAgIAorCiAgICAgYWRk
KHRoaW5nKQogICAgIHsKICAgICAgICAgbGV0IGludHJpbnNpYyA9IHRoaXMuX21hcC5nZXQodGhp
bmcudG9TdHJpbmcoKSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9NYXRyaXhUeXBlLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4VHlw
ZS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5lMTY5N2MzMTA2ZDYxNzg4NzNkNDNkNWFhZmYxZTY3ODI0NTE0ZjI2
Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4
VHlwZS5qcwpAQCAtMCwwICsxLDYyIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF
CisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKworY2xhc3MgTWF0cml4VHlwZSBleHRlbmRzIE5h
dGl2ZVR5cGUgeworICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cykK
KyAgICB7CisgICAgICAgIHN1cGVyKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CisgICAg
fQorCisgICAgZ2V0IGVsZW1lbnRUeXBlKCkgeyByZXR1cm4gdGhpcy50eXBlQXJndW1lbnRzWzBd
OyB9CisgICAgZ2V0IG51bVJvd3MoKSB7IHJldHVybiB0aGlzLnR5cGVBcmd1bWVudHNbMV07IH0K
KyAgICBnZXQgbnVtQ29sdW1ucygpIHsgcmV0dXJuIHRoaXMudHlwZUFyZ3VtZW50c1syXTsgfQor
ICAgIGdldCBudW1Sb3dzVmFsdWUoKSB7IHJldHVybiB0aGlzLm51bVJvd3MudmFsdWU7IH0KKyAg
ICBnZXQgbnVtQ29sdW1uc1ZhbHVlKCkgeyByZXR1cm4gdGhpcy5udW1Db2x1bW5zLnZhbHVlOyB9
CisgICAgZ2V0IHNpemUoKSB7IHJldHVybiB0aGlzLmVsZW1lbnRUeXBlLnNpemUgKiB0aGlzLm51
bVJvd3NWYWx1ZSAqIHRoaXMubnVtQ29sdW1uc1ZhbHVlOyB9CisKKyAgICB1bmlmeUltcGwodW5p
ZmljYXRpb25Db250ZXh0LCBvdGhlcikKKyAgICB7CisgICAgICAgIGlmICghKG90aGVyIGluc3Rh
bmNlb2YgTWF0cml4VHlwZSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICAgICAg
aWYgKHRoaXMubnVtUm93c1ZhbHVlICE9PSBvdGhlci5udW1Sb3dzVmFsdWUgfHwgdGhpcy5udW1D
b2x1bW5zVmFsdWUgIT09IG90aGVyLm51bUNvbHVtbnNWYWx1ZSkKKyAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKKworICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50VHlwZS51bmlmeSh1bmlmaWNh
dGlvbkNvbnRleHQsIG90aGVyLmVsZW1lbnRUeXBlKTsKKyAgICB9CisKKyAgICBwb3B1bGF0ZURl
ZmF1bHRWYWx1ZShidWZmZXIsIG9mZnNldCkKKyAgICB7CisgICAgICAgIGZvciAobGV0IGkgPSAw
OyBpIDwgdGhpcy5udW1Sb3dzVmFsdWUgKiB0aGlzLnJ1bkNvbHVtbnNWYWx1ZTsgKytpKQorICAg
ICAgICAgICAgdGhpcy5lbGVtZW50VHlwZS5wb3B1bGF0ZURlZmF1bHRWYWx1ZShidWZmZXIsIG9m
ZnNldCArIGkgKiB0aGlzLmVsZW1lbnRUeXBlLnNpemUpOworICAgIH0KKworICAgIHRvU3RyaW5n
KCkKKyAgICB7CisgICAgICAgIHJldHVybiBgbmF0aXZlIHR5cGVkZWYgbWF0cml4PCR7dGhpcy5l
bGVtZW50VHlwZX0sICR7dGhpcy5udW1Sb3dzVmFsdWV9LCAke3RoaXMubnVtQ29sdW1uc1ZhbHVl
fT5gOworICAgIH0KK30KKwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvTmFtZUNvbnRleHQuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29u
dGV4dC5qcwppbmRleCAxYmFiM2ZjNTYwMjYwMTA3N2IzZmE4ODVhNjA1NGFiODYwYjBhMTkzLi5j
ODk5NjhjNzc5NjA3YjdjYWJjYzZhNWY5NjliNGFiOTEzZTcyNjNlIDEwMDY0NAotLS0gYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5qcworKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5qcwpAQCAtNjksMTEgKzY5LDMzIEBAIGNs
YXNzIE5hbWVDb250ZXh0IHsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQogCisgICAg
ICAgIGlmICh0aGluZy5raW5kID09IFR5cGUpIHsKKyAgICAgICAgICAgIHRoaXMuX3NldC5hZGQo
dGhpbmcpOworICAgICAgICAgICAgaWYgKHRoaW5nLnR5cGVBcmd1bWVudHMgJiYgdGhpbmcudHlw
ZUFyZ3VtZW50cy5sZW5ndGggIT0gMCkgeworICAgICAgICAgICAgICAgIGxldCBhcnJheSA9IHRo
aXMuX21hcC5nZXQodGhpbmcubmFtZSk7CisgICAgICAgICAgICAgICAgaWYgKCFhcnJheSkgewor
ICAgICAgICAgICAgICAgICAgICBhcnJheSA9IFtdOworICAgICAgICAgICAgICAgICAgICBhcnJh
eS5raW5kID0gVHlwZTsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldCh0aGluZy5u
YW1lLCBhcnJheSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGlmIChhcnJh
eS5raW5kICE9IFR5cGUpCisgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9y
KHRoaW5nLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJDYW5ub3QgcmV1c2UgdHlwZSBuYW1lIGZvciBm
dW5jdGlvbjogIiArIHRoaW5nLm5hbWUpOworICAgICAgICAgICAgICAgIGFycmF5LnB1c2godGhp
bmcpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICAgICAgaWYgKHRoaXMuX21hcC5oYXModGhpbmcubmFtZSkpCisgICAgICAgICAgICAg
ICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRoaW5nLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJE
dXBsaWNhdGUgbmFtZTogIiArIHRoaW5nLm5hbWUpOworICAgICAgICAgICAgICAgIHRoaXMuX21h
cC5zZXQodGhpbmcubmFtZSwgdGhpbmcpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICB9CisgICAgICAgIAogICAgICAgICBpZiAodGhpcy5fbWFwLmhhcyh0aGlu
Zy5uYW1lKSkKICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRoaW5nLm9yaWdpbi5v
cmlnaW5TdHJpbmcsICJEdXBsaWNhdGUgbmFtZTogIiArIHRoaW5nLm5hbWUpOwogCiAgICAgICAg
IHRoaXMuX3NldC5hZGQodGhpbmcpOwogICAgICAgICB0aGlzLl9tYXAuc2V0KHRoaW5nLm5hbWUs
IHRoaW5nKTsKKwogICAgIH0KICAgICAKICAgICBnZXQoa2luZCwgbmFtZSkKQEAgLTEwMiw2ICsx
MjQsMTAgQEAgY2xhc3MgTmFtZUNvbnRleHQgewogICAgICAgICAgICAgZm9yIChsZXQgZnVuYyBv
ZiB0aGluZykKICAgICAgICAgICAgICAgICB5aWVsZCBmdW5jOwogICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9IGVsc2UgaWYgKHRoaW5nLmtpbmQgPT09IFR5cGUgJiYgKHRoaW5nIGluc3Rh
bmNlb2YgQXJyYXkpKSB7CisgICAgICAgICAgICBmb3IgKGxldCB0eXBlIG9mIHRoaW5nKQorICAg
ICAgICAgICAgICAgIHlpZWxkIHR5cGU7CisgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0K
ICAgICAgICAgeWllbGQgdGhpbmc7CiAgICAgfQpAQCAtMTYzLDggKzE4OSw4IEBAIGNsYXNzIE5h
bWVDb250ZXh0IHsKICAgICB7CiAgICAgICAgIGZvciAobGV0IHZhbHVlIG9mIHRoaXMuX21hcC52
YWx1ZXMoKSkgewogICAgICAgICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgQXJyYXkpIHsKLSAg
ICAgICAgICAgICAgICBmb3IgKGxldCBmdW5jIG9mIHZhbHVlKQotICAgICAgICAgICAgICAgICAg
ICB5aWVsZCBmdW5jOworICAgICAgICAgICAgICAgIGZvciAobGV0IHRoaW5nIG9mIHZhbHVlKQor
ICAgICAgICAgICAgICAgICAgICB5aWVsZCB0aGluZzsKICAgICAgICAgICAgICAgICBjb250aW51
ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHlpZWxkIHZhbHVlOwpkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZVJlc29sdmVyLmpzIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZVJlc29sdmVyLmpzCmluZGV4IGY2MTVhMmZiNGU4N2Rj
MWRlYjdiMDFiNTcyZmI3YWY2MjZhYmQwOTUuLjlhMDk5ZjQ4NWU2ZTkyN2UxNjQzN2JiZjgyNjQx
ZjYxZTQ1MjVjZjEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05h
bWVSZXNvbHZlci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lUmVz
b2x2ZXIuanMKQEAgLTEyMCwxMiArMTIwLDE5IEBAIGNsYXNzIE5hbWVSZXNvbHZlciBleHRlbmRz
IFZpc2l0b3IgewogICAgIAogICAgIHZpc2l0VHlwZVJlZihub2RlKQogICAgIHsKKyAgICAgICAg
c3VwZXIudmlzaXRUeXBlUmVmKG5vZGUpOwogICAgICAgICBsZXQgdHlwZSA9IG5vZGUudHlwZTsK
ICAgICAgICAgaWYgKCF0eXBlKSB7CiAgICAgICAgICAgICB0eXBlID0gdGhpcy5fbmFtZUNvbnRl
eHQuZ2V0KFR5cGUsIG5vZGUubmFtZSk7CiAgICAgICAgICAgICBpZiAoIXR5cGUpCiAgICAgICAg
ICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3Iobm9kZS5vcmlnaW4ub3JpZ2luU3RyaW5nLCAi
Q291bGQgbm90IGZpbmQgdHlwZSBuYW1lZCAiICsgbm9kZS5uYW1lKTsKLSAgICAgICAgICAgIG5v
ZGUudHlwZSA9IHR5cGU7CisgICAgICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9mIEFycmF5KSB7
CisgICAgICAgICAgICAgICAgLy8gVHlwZSB1bmlmaWNhdGlvbiByZXF1aXJlcyB0aGUgLnR5cGUg
dmFsdWUgdG8gYmUgc2V0IGFscmVhZHksIHNvIHdlIGNhbiBlYWdlcmx5IHNldCBpdCBub3cuCisg
ICAgICAgICAgICAgICAgZm9yIChsZXQgb3ZlcmxvYWQgb2YgdHlwZSkKKyAgICAgICAgICAgICAg
ICAgICAgTm9kZS52aXNpdChvdmVybG9hZCwgdGhpcyk7CisgICAgICAgICAgICAgICAgbm9kZS5y
ZXNvbHZlKHR5cGUpOworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgbm9kZS50
eXBlID0gdHlwZTsKICAgICAgICAgfQogICAgIH0KICAgICAKQEAgLTIwOCw5ICsyMTUsNCBAQCBj
bGFzcyBOYW1lUmVzb2x2ZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgCiAgICAgICAgIHN1
cGVyLnZpc2l0Q2FsbEV4cHJlc3Npb24obm9kZSk7CiAgICAgfQotCi0gICAgdmlzaXRWZWN0b3JU
eXBlKG5vZGUpCi0gICAgewotICAgICAgICBub2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOwot
ICAgIH0KIH0KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hdGl2
ZVR5cGUuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYXRpdmVUeXBlLmpzCmlu
ZGV4IGUyZDg1MWNiY2NiYTNhOTcyMzRjN2JkMzkyOTA3ODI5Y2E5ZTA1ZjIuLmIzNjhhMmU4YjI0
ZjU0OGVhYjg4YTI4MjRiNDk1YmUyM2M4N2NiODUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL05hdGl2ZVR5cGUuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvTmF0aXZlVHlwZS5qcwpAQCAtMjUsMTEgKzI1LDE0IEBACiAidXNlIHN0cmljdCI7
CiAKIGNsYXNzIE5hdGl2ZVR5cGUgZXh0ZW5kcyBUeXBlIHsKLSAgICBjb25zdHJ1Y3Rvcihvcmln
aW4sIG5hbWUpCisgICAgY29uc3RydWN0b3Iob3JpZ2luLCBuYW1lLCB0eXBlQXJndW1lbnRzKQog
ICAgIHsKKyAgICAgICAgaWYgKCEodHlwZUFyZ3VtZW50cyBpbnN0YW5jZW9mIEFycmF5KSkKKyAg
ICAgICAgICAgIHRocm93IG5ldyBFcnJvcigidHlwZSBwYXJhbWV0ZXJzIG5vdCBhcnJheTogIiAr
IHR5cGVBcmd1bWVudHMpOwogICAgICAgICBzdXBlcigpOwogICAgICAgICB0aGlzLl9vcmlnaW4g
PSBvcmlnaW47CiAgICAgICAgIHRoaXMuX25hbWUgPSBuYW1lOworICAgICAgICB0aGlzLl90eXBl
QXJndW1lbnRzID0gdHlwZUFyZ3VtZW50czsKICAgICAgICAgdGhpcy5faXNOdW1iZXIgPSBmYWxz
ZTsKICAgICAgICAgdGhpcy5faXNJbnQgPSBmYWxzZTsKICAgICAgICAgdGhpcy5faXNGbG9hdGlu
ZyA9IGZhbHNlOwpAQCAtMzgsNiArNDEsNyBAQCBjbGFzcyBOYXRpdmVUeXBlIGV4dGVuZHMgVHlw
ZSB7CiAgICAgCiAgICAgZ2V0IG9yaWdpbigpIHsgcmV0dXJuIHRoaXMuX29yaWdpbjsgfQogICAg
IGdldCBuYW1lKCkgeyByZXR1cm4gdGhpcy5fbmFtZTsgfQorICAgIGdldCB0eXBlQXJndW1lbnRz
KCkgeyByZXR1cm4gdGhpcy5fdHlwZUFyZ3VtZW50czsgfQogICAgIGdldCBpc05hdGl2ZSgpIHsg
cmV0dXJuIHRydWU7IH0KICAgICAKICAgICAvLyBXZSBsZXQgSW50cmluc2ljcy5qcyBzZXQgdGhl
c2UgYXMgaXQgbGlrZXMuCkBAIC01MiwxOSArNTYsMjAgQEAgY2xhc3MgTmF0aXZlVHlwZSBleHRl
bmRzIFR5cGUgewogICAgIAogICAgIHRvU3RyaW5nKCkKICAgICB7Ci0gICAgICAgIHJldHVybiBg
bmF0aXZlIHR5cGVkZWYgJHt0aGlzLm5hbWV9YDsKKyAgICAgICAgbGV0IHJlc3VsdCA9IGBuYXRp
dmUgdHlwZWRlZiAke3RoaXMubmFtZX1gOworICAgICAgICBpZiAodGhpcy50eXBlQXJndW1lbnRz
Lmxlbmd0aCkKKyAgICAgICAgICAgIHJlc3VsdCArPSAiPCIgKyB0aGlzLnR5cGVBcmd1bWVudHMu
am9pbigiLCIpICsgIj4iOworICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KICAgICAKICAg
ICBzdGF0aWMgY3JlYXRlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cykKICAgICB7Ci0gICAg
ICAgIC8vIEZJWE1FOiBGb3IgbmF0aXZlIHR5cGVzIGxpa2UgVGV4dHVyZTFEIHRoaXMgc2hvdWxk
IHJlc29sdmUgdGhlIHR5cGUgdG8gc29tZXRoaW5nIGNvbmNyZXRlIGJ5IGNoYW5naW5nIHRoZSB0
eXBlIG5hbWUuCi0gICAgICAgIGlmICh0eXBlQXJndW1lbnRzLmxlbmd0aCkKLSAgICAgICAgICAg
IHRocm93IG5ldyBXVHlwZUVycm9yKG9yaWdpbi5vcmlnaW5TdHJpbmcsIGAke25hbWV9PCR7dHlw
ZUFyZ3VtZW50cy5qb2luKCIsIil9PjogU3VwcG9ydCBmb3IgbmF0aXZlIHR5cGVzIHdpdGggdHlw
ZSBhcmd1bWVudHMgaXMgY3VycmVudGx5IHVuaW1wbGVtZW50ZWQuYCk7CisgICAgICAgIGlmIChu
YW1lID09ICJ2ZWN0b3IiKQorICAgICAgICAgICAgcmV0dXJuIG5ldyBWZWN0b3JUeXBlKG9yaWdp
biwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CisgICAgICAgIGlmIChuYW1lID09ICJtYXRyaXgiKQor
ICAgICAgICAgICAgcmV0dXJuIG5ldyBNYXRyaXhUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3Vt
ZW50cyk7CiAKLSAgICAgICAgaWYgKGFsbFZlY3RvclR5cGVOYW1lcygpLmluZGV4T2YobmFtZSkg
PiAtMSkKLSAgICAgICAgICAgIHJldHVybiBuZXcgVmVjdG9yVHlwZShvcmlnaW4sIG5hbWUpOwot
Ci0gICAgICAgIHJldHVybiBuZXcgTmF0aXZlVHlwZShvcmlnaW4sIG5hbWUpOworICAgICAgICBy
ZXR1cm4gbmV3IE5hdGl2ZVR5cGUob3JpZ2luLCBuYW1lLCB0eXBlQXJndW1lbnRzKTsKICAgICB9
CiB9CiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9y
QW5kZXJJbmRleC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5k
ZXJJbmRleC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjcwMzcxZmI5MGYyYTFm
ZDE1YzJkZGY2YzRhMzk2YzBmMjM5Y2ViZi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9PcGVyYXRvckFu
ZGVySW5kZXguanMKKysrIC9kZXYvbnVsbApAQCAtMSw3MSArMCwwIEBACi0vKgotICogQ29weXJp
Z2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFO
RCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsKLQotY2xhc3MgT3Bl
cmF0b3JBbmRlckluZGV4ZXIgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwgYWRkcmVz
c1NwYWNlKQotICAgIHsKLSAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0gYmFzZVR5cGVOYW1l
OwotICAgICAgICB0aGlzLl9hZGRyZXNzU3BhY2UgPSBhZGRyZXNzU3BhY2U7Ci0gICAgfQotCi0g
ICAgZ2V0IGFkZHJlc3NTcGFjZSgpIHsgcmV0dXJuIHRoaXMuX2FkZHJlc3NTcGFjZTsgfQotICAg
IGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KLQotICAg
IHRvU3RyaW5nKCkKLSAgICB7Ci0gICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlw
ZU5hbWV9KiAke3RoaXMuYWRkcmVzc1NwYWNlfSBvcGVyYXRvciZbXSgke3RoaXMuYmFzZVR5cGVO
YW1lfVtdICR7dGhpcy5hZGRyZXNzU3BhY2V9LHVpbnQpYDsKLSAgICB9Ci0KLSAgICBzdGF0aWMg
ZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fZnVuY3Rpb25zKSB7Ci0gICAg
ICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKLQotICAgICAgICAgICAgY29uc3QgdHlwZU5h
bWVzID0gWyAidWludCIsICJpbnQiLCAiZmxvYXQiLCAiYm9vbCIgXS5jb25jYXQoYWxsVmVjdG9y
VHlwZU5hbWVzKCkpOwotICAgICAgICAgICAgY29uc3QgYWRkcmVzc1NwYWNlcyA9IFsgInRocmVh
ZCIsICJ0aHJlYWRncm91cCIsICJkZXZpY2UiLCAiY29uc3RhbnQiIF07Ci0KLSAgICAgICAgICAg
IGZvciAobGV0IGFkZHJlc3NTcGFjZSBvZiBhZGRyZXNzU3BhY2VzKSB7Ci0gICAgICAgICAgICAg
ICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgdHlwZU5hbWVzKQotICAgICAgICAgICAgICAgICAgICB0
aGlzLl9mdW5jdGlvbnMucHVzaChuZXcgT3BlcmF0b3JBbmRlckluZGV4ZXIodHlwZU5hbWUsIGFk
ZHJlc3NTcGFjZSkpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIHJldHVybiB0
aGlzLl9mdW5jdGlvbnM7Ci0gICAgfQotCi0gICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihm
dW5jKQotICAgIHsKLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbcmVmLCBpbmRleF0s
IG5vZGUpID0+IHsKLSAgICAgICAgICAgIHJlZiA9IHJlZi5sb2FkVmFsdWUoKTsKLSAgICAgICAg
ICAgIGlmICghcmVmKQotICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHJhcEVycm9yKG5vZGUu
b3JpZ2luLm9yaWdpblN0cmluZywgIk51bGwgZGVyZWZlcmVuY2UiKTsKLSAgICAgICAgICAgIGlu
ZGV4ID0gaW5kZXgubG9hZFZhbHVlKCk7Ci0gICAgICAgICAgICBpZiAoaW5kZXggPiByZWYubGVu
Z3RoKQotICAgICAgICAgICAgICAgIHRocm93IG5ldyBXVHJhcEVycm9yKG5vZGUub3JpZ2luLm9y
aWdpblN0cmluZywgIkFycmF5IGluZGV4ICIgKyBpbmRleCArICIgaXMgb3V0IG9mIGJvdW5kcyBv
ZiAiICsgcmVmKTsKLSAgICAgICAgICAgIHJldHVybiBFUHRyLmJveChyZWYucHRyLnBsdXMoaW5k
ZXggKiBub2RlLmFyZ3VtZW50VHlwZXNbMF0uZWxlbWVudFR5cGUuc2l6ZSkpOwotICAgICAgICB9
OwotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7Ci0gICAgfQotfQpcIE5v
IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRleGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDEyZjA2NzgwZjdh
ZDkzMjJkNmM3YmU0NzkwY2Q0NDYxODFmODliNAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRleGVyLmpzCkBAIC0wLDAgKzEs
NTUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IK
KyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworInVzZSBz
dHJpY3QiOworCitjbGFzcyBPcGVyYXRvckFuZGVySW5kZXhlciB7CisgICAgY29uc3RydWN0b3Io
YmFzZVR5cGVOYW1lLCBhZGRyZXNzU3BhY2UpCisgICAgeworICAgICAgICB0aGlzLl9iYXNlVHlw
ZU5hbWUgPSBiYXNlVHlwZU5hbWU7CisgICAgICAgIHRoaXMuX2FkZHJlc3NTcGFjZSA9IGFkZHJl
c3NTcGFjZTsKKyAgICB9CisKKyAgICBnZXQgYWRkcmVzc1NwYWNlKCkgeyByZXR1cm4gdGhpcy5f
YWRkcmVzc1NwYWNlOyB9CisgICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jh
c2VUeXBlTmFtZTsgfQorCisgICAgdG9TdHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGBu
YXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0qICR7dGhpcy5hZGRyZXNzU3BhY2V9IG9wZXJhdG9y
JltdKCR7dGhpcy5iYXNlVHlwZU5hbWV9W10gJHt0aGlzLmFkZHJlc3NTcGFjZX0sdWludClgOwor
ICAgIH0KKworICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykKKyAgICB7CisgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3JlZiwgaW5kZXhdLCBub2RlKSA9PiB7CisgICAg
ICAgICAgICByZWYgPSByZWYubG9hZFZhbHVlKCk7CisgICAgICAgICAgICBpZiAoIXJlZikKKyAg
ICAgICAgICAgICAgICB0aHJvdyBuZXcgV1RyYXBFcnJvcihub2RlLm9yaWdpbi5vcmlnaW5TdHJp
bmcsICJOdWxsIGRlcmVmZXJlbmNlIik7CisgICAgICAgICAgICBpbmRleCA9IGluZGV4LmxvYWRW
YWx1ZSgpOworICAgICAgICAgICAgaWYgKGluZGV4ID4gcmVmLmxlbmd0aCkKKyAgICAgICAgICAg
ICAgICB0aHJvdyBuZXcgV1RyYXBFcnJvcihub2RlLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJBcnJh
eSBpbmRleCAiICsgaW5kZXggKyAiIGlzIG91dCBvZiBib3VuZHMgb2YgIiArIHJlZik7CisgICAg
ICAgICAgICByZXR1cm4gRVB0ci5ib3gocmVmLnB0ci5wbHVzKGluZGV4ICogbm9kZS5hcmd1bWVu
dFR5cGVzWzBdLmVsZW1lbnRUeXBlLnNpemUpKTsKKyAgICAgICAgfTsKKyAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbkRhdGEgPSB0aGlzOworICAgIH0KK30KZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQm9vbC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL09wZXJhdG9yQm9vbC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggNThiYjBlMDliODBiZWUxMDcwODliMWM5ZDIwMGNiYzY4YTVjYjlkMy4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9PcGVyYXRvckJvb2wuanMKKysrIC9kZXYvbnVsbApAQCAtMSw2OCArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
YGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICog
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsK
LQotY2xhc3MgT3BlcmF0b3JCb29sIHsKLSAgICBjb25zdHJ1Y3RvcihiYXNlVHlwZU5hbWUpCi0g
ICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5hbWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAgfQot
Ci0gICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQot
Ci0gICAgdG9TdHJpbmcoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGBuYXRpdmUgb3BlcmF0b3Ig
Ym9vbCgke3RoaXMuYmFzZVR5cGVOYW1lfSlgOwotICAgIH0KLQotICAgIHN0YXRpYyBmdW5jdGlv
bnMoKQotICAgIHsKLSAgICAgICAgLy8gRklYTUU6IFRoZXNlIG9wZXJhdG9ycyBzaG91bGQgYmUg
aW4gdGhlIHN0YW5kYXJkIGxpYnJhcnkgd2hlcmUgcG9zc2libGUuCi0gICAgICAgIGlmICghT3Bl
cmF0b3JCb29sLl9mdW5jdGlvbnMpIHsKLSAgICAgICAgICAgIE9wZXJhdG9yQm9vbC5fZnVuY3Rp
b25zID0gW107Ci0KLSAgICAgICAgICAgIC8vIGJvb2wgaXMgbm90IGluY2x1ZGVkIGJlY2F1c2Ug
dGhpcyBpcyBnZW5lcmF0ZWQgYnkgdGhlIGNvcHkgY29uc3RydWN0b3IuCi0gICAgICAgICAgICAv
LyBGSVhNRTogSW5jbHVkZSBhbGwgbmF0aXZlIHR5cGVzLgotICAgICAgICAgICAgY29uc3QgdHlw
ZU5hbWVzID0gWyAidWNoYXIiLCAidWludCIsICJpbnQiLCAiZmxvYXQiIF0uY29uY2F0KGFsbFZl
Y3RvclR5cGVOYW1lcygpKTsKLQotICAgICAgICAgICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgdHlw
ZU5hbWVzKQotICAgICAgICAgICAgICAgIE9wZXJhdG9yQm9vbC5fZnVuY3Rpb25zLnB1c2gobmV3
IE9wZXJhdG9yQm9vbCh0eXBlTmFtZSkpOwotICAgICAgICB9Ci0gICAgICAgIHJldHVybiBPcGVy
YXRvckJvb2wuX2Z1bmN0aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUltcGxlbWVudGF0
aW9uKGZ1bmMpCi0gICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtyZWZdLCBu
b2RlKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCBzaXplID0gbm9kZS5hcmd1bWVudFR5cGVzWzBd
LnNpemU7Ci0gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpemU7ICsraSkgewotICAg
ICAgICAgICAgICAgIGlmICghIXJlZi5nZXQoaSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVy
biBFUHRyLmJveCh0cnVlKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJldHVybiBFUHRy
LmJveChmYWxzZSk7Ci0gICAgICAgIH0KLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbkRhdGEg
PSB0aGlzOwotICAgIH0KLX0KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5qcwppbmRleCA3YjE2MTM5ZTk1YjgxZTJlOGRhODM1
NGJkOGMxNzliMTkwYmFlZmEwLi44MzQ1OTJkMzZmMzQ1N2RmYTg2YjU3NTFiYjcyNjI0NzJhM2Yw
YTJkIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpz
CisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1ByZXBhcmUuanMKQEAgLTQwLDIw
ICs0MCwxOSBAQCBsZXQgcHJlcGFyZSA9ICgoKSA9PiB7CiAgICAgICAgIH0KICAgICAgICAgCiAg
ICAgICAgIGZvbGRDb25zdGV4cHJzKHByb2dyYW0pOwotICAgICAgICByZW1vdmVUeXBlQXJndW1l
bnRzKHByb2dyYW0pOwogCiAgICAgICAgIGxldCBuYW1lUmVzb2x2ZXIgPSBjcmVhdGVOYW1lUmVz
b2x2ZXIocHJvZ3JhbSk7CiAgICAgICAgIHJlc29sdmVOYW1lc0luVHlwZXMocHJvZ3JhbSwgbmFt
ZVJlc29sdmVyKTsKICAgICAgICAgcmVzb2x2ZVR5cGVEZWZzSW5UeXBlcyhwcm9ncmFtKTsKICAg
ICAgICAgY2hlY2tSZWN1cnNpdmVUeXBlcyhwcm9ncmFtKTsKICAgICAgICAgc3ludGhlc2l6ZVN0
cnVjdEFjY2Vzc29ycyhwcm9ncmFtKTsKLSAgICAgICAgc3ludGhlc2l6ZU9wZXJhdG9yQm9vbChw
cm9ncmFtKTsKICAgICAgICAgc3ludGhlc2l6ZUVudW1GdW5jdGlvbnMocHJvZ3JhbSk7CiAgICAg
ICAgIHN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoKHByb2dyYW0pOwogICAgICAgICBzeW50
aGVzaXplQ29weUNvbnN0cnVjdG9yT3BlcmF0b3IocHJvZ3JhbSk7CiAgICAgICAgIHN5bnRoZXNp
emVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcihwcm9ncmFtKTsKICAgICAgICAgcmVzb2x2ZU5h
bWVzSW5GdW5jdGlvbnMocHJvZ3JhbSwgbmFtZVJlc29sdmVyKTsKICAgICAgICAgcmVzb2x2ZVR5
cGVEZWZzSW5GdW5jdGlvbnMocHJvZ3JhbSk7CisgICAgICAgIGNoZWNrVHlwZXNXaXRoQXJndW1l
bnRzKHByb2dyYW0pOwogICAgICAgICAKICAgICAgICAgY2hlY2socHJvZ3JhbSk7CiAgICAgICAg
IGNoZWNrTGl0ZXJhbFR5cGVzKHByb2dyYW0pOwpAQCAtNjYsNiArNjUsNyBAQCBsZXQgcHJlcGFy
ZSA9ICgoKSA9PiB7CiAgICAgICAgIGNoZWNrTG9vcHMocHJvZ3JhbSk7CiAgICAgICAgIGNoZWNr
UmVjdXJzaW9uKHByb2dyYW0pOwogICAgICAgICBjaGVja1Byb2dyYW1XcmFwcGVkKHByb2dyYW0p
OworICAgICAgICBjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9ncmFtKTsKICAgICAgICAgZmlu
ZEhpZ2hab21iaWVzKHByb2dyYW0pOwogICAgICAgICBwcm9ncmFtLnZpc2l0KG5ldyBTdHJ1Y3RM
YXlvdXRCdWlsZGVyKCkpOwogICAgICAgICBpbmxpbmUocHJvZ3JhbSk7CmRpZmYgLS1naXQgYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvUHJvZ3JhbS5qcwppbmRleCAwNjYyNWQ5OGZjNDFlNzRjOTNkZWNlODBi
NzBjZTU1YzdhZjc0ZGQ1Li5hYzFkZWZiNGZiYWFhNmU4ZTEzNDI5NzM0Y2NmNDkxNTMzOWJhNTM5
IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzCisr
KyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Byb2dyYW0uanMKQEAgLTQ4LDE5ICs0
OCwyNSBAQCBjbGFzcyBQcm9ncmFtIGV4dGVuZHMgTm9kZSB7CiAgICAgICAgIGlmIChzdGF0ZW1l
bnQgaW5zdGFuY2VvZiBGdW5jKSB7CiAgICAgICAgICAgICBsZXQgYXJyYXkgPSB0aGlzLl9mdW5j
dGlvbnMuZ2V0KHN0YXRlbWVudC5uYW1lKTsKICAgICAgICAgICAgIGlmICghYXJyYXkpCi0gICAg
ICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zLnNldChzdGF0ZW1lbnQubmFtZSwgYXJyYXkgPSBb
XSk7CisgICAgICAgICAgICAgICAgdGhpcy5mdW5jdGlvbnMuc2V0KHN0YXRlbWVudC5uYW1lLCBh
cnJheSA9IFtdKTsKICAgICAgICAgICAgIGFycmF5LnB1c2goc3RhdGVtZW50KTsKLSAgICAgICAg
fSBlbHNlIGlmIChzdGF0ZW1lbnQgaW5zdGFuY2VvZiBUeXBlKQotICAgICAgICAgICAgdGhpcy5f
dHlwZXMuc2V0KHN0YXRlbWVudC5uYW1lLCBzdGF0ZW1lbnQpOwotICAgICAgICBlbHNlCisgICAg
ICAgIH0gZWxzZSBpZiAoc3RhdGVtZW50IGluc3RhbmNlb2YgVHlwZSkgeworICAgICAgICAgICAg
aWYgKHN0YXRlbWVudC5pc05hdGl2ZSAmJiBzdGF0ZW1lbnQudHlwZUFyZ3VtZW50cy5sZW5ndGgg
IT0gMCkgeworICAgICAgICAgICAgICAgIGxldCBhcnJheSA9IHRoaXMudHlwZXMuZ2V0KHN0YXRl
bWVudC5uYW1lKTsKKyAgICAgICAgICAgICAgICBpZiAoIWFycmF5KQorICAgICAgICAgICAgICAg
ICAgICB0aGlzLnR5cGVzLnNldChzdGF0ZW1lbnQubmFtZSwgYXJyYXkgPSBbXSk7CisgICAgICAg
ICAgICAgICAgYXJyYXkucHVzaChzdGF0ZW1lbnQpOworICAgICAgICAgICAgfSBlbHNlCisgICAg
ICAgICAgICAgICAgdGhpcy50eXBlcy5zZXQoc3RhdGVtZW50Lm5hbWUsIHN0YXRlbWVudCk7Cisg
ICAgICAgIH0gZWxzZQogICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJTdGF0ZW1lbnQgaXMg
bm90IGEgZnVuY3Rpb24gb3IgdHlwZTogIiArIHN0YXRlbWVudCk7Ci0gICAgICAgIHRoaXMuX3Rv
cExldmVsU3RhdGVtZW50cy5wdXNoKHN0YXRlbWVudCk7Ci0gICAgICAgIHRoaXMuX2dsb2JhbE5h
bWVDb250ZXh0LmFkZChzdGF0ZW1lbnQpOworICAgICAgICB0aGlzLnRvcExldmVsU3RhdGVtZW50
cy5wdXNoKHN0YXRlbWVudCk7CisgICAgICAgIHRoaXMuZ2xvYmFsTmFtZUNvbnRleHQuYWRkKHN0
YXRlbWVudCk7CiAgICAgfQogICAgIAogICAgIHRvU3RyaW5nKCkKICAgICB7Ci0gICAgICAgIGlm
ICghdGhpcy5fdG9wTGV2ZWxTdGF0ZW1lbnRzLmxlbmd0aCkKKyAgICAgICAgaWYgKCF0aGlzLnRv
cExldmVsU3RhdGVtZW50cy5sZW5ndGgpCiAgICAgICAgICAgICByZXR1cm4gIiI7CiAgICAgICAg
IHJldHVybiB0aGlzLl90b3BMZXZlbFN0YXRlbWVudHMuam9pbigiOyIpICsgIjsiOwogICAgIH0K
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1JlbW92ZVR5cGVBcmd1
bWVudHMuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZW1vdmVUeXBlQXJndW1l
bnRzLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5M2RiOWU2NDdjOTIxYzk1NGU4
OTk4Y2UxNjc1ZGU3Y2I2MWYxNDJiLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1JlbW92ZVR5cGVBcmd1
bWVudHMuanMKKysrIC9kZXYvbnVsbApAQCAtMSw2NSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsKLQotZnVuY3Rpb24gcmVt
b3ZlVHlwZUFyZ3VtZW50cyhwcm9ncmFtKQotewotICAgIGNsYXNzIFJlbW92ZVR5cGVBcmd1bWVu
dHMgZXh0ZW5kcyBWaXNpdG9yIHsKLSAgICAgICAgc3RhdGljIHJlc29sdmVOYW1lQW5kQXJndW1l
bnRzKG5vZGUpCi0gICAgICAgIHsKLSAgICAgICAgICAgIGlmICghbm9kZS50eXBlQXJndW1lbnRz
KQotICAgICAgICAgICAgICAgIHJldHVybiBub2RlLm5hbWU7Ci0KLSAgICAgICAgICAgIHN3aXRj
aCAobm9kZS5uYW1lKSB7Ci0gICAgICAgICAgICBjYXNlICJ2ZWN0b3IiOgotICAgICAgICAgICAg
ICAgIGlmIChub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDIpCi0gICAgICAgICAgICAgICAg
ICAgIHRocm93IG5ldyBXU3ludGF4RXJyb3Iobm9kZS5vcmlnaW5TdHJpbmcsIGAke25vZGUubmFt
ZX0gc2hvdWxkIGhhdmUgMiB0eXBlIGFyZ3VtZW50cywgZ290ICR7bm9kZS50eXBlQXJndW1lbnRz
Lmxlbmd0aH0uYCk7Ci0KLSAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50VHlwZU5hbWUgPSBu
b2RlLnR5cGVBcmd1bWVudHNbMF0ubmFtZTsKLSAgICAgICAgICAgICAgICBjb25zdCBsZW5ndGhW
YWx1ZSA9IG5vZGUudHlwZUFyZ3VtZW50c1sxXS52YWx1ZTsKLQotICAgICAgICAgICAgICAgIGlm
IChWZWN0b3JFbGVtZW50VHlwZXMuaW5kZXhPZihlbGVtZW50VHlwZU5hbWUpIDwgMCkKLSAgICAg
ICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdTeW50YXhFcnJvcihub2RlLm9yaWdpblN0cmluZywg
YCR7ZWxlbWVudFR5cGVOYW1lfSBpcyBub3QgYSB2YWxpZCB2ZWN0b3IgZWxlbWVudCB0eXBlLmAp
OwotICAgICAgICAgICAgICAgIGlmIChWZWN0b3JFbGVtZW50U2l6ZXMuaW5kZXhPZihsZW5ndGhW
YWx1ZSkgPCAwKQotICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1N5bnRheEVycm9yKG5v
ZGUub3JpZ2luU3RyaW5nLCBgJHtsZW5ndGhWYWx1ZX0gaXMgbm90IGEgdmFsaWQgc2l6ZSBmb3Ig
dmVjdG9ycyB3aXRoIGVsZW1lbnQgdHlwZSAke2VsZW1lbnRUeXBlTmFtZX0uYCk7Ci0KLSAgICAg
ICAgICAgICAgICByZXR1cm4gYCR7ZWxlbWVudFR5cGVOYW1lfSR7bGVuZ3RoVmFsdWV9YDsKLSAg
ICAgICAgICAgIC8vIEZJWE1FOiBGdXJ0aGVyIGNhc2VzIGZvciBtYXRyaWNlcywgdGV4dHVyZXMs
IGV0Yy4KLSAgICAgICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICAgICAgaWYgKG5vZGUudHlw
ZUFyZ3VtZW50cy5sZW5ndGgpCi0gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBXU3ludGF4
RXJyb3IoYCR7bm9kZS5uYW1lfSR7YXJndW1lbnRzLmpvaW4oIiwgIil9IGlzIG5vdCBhIHBlcm1p
dHRlZCBnZW5lcmljIHR5cGUgb3IgZnVuY3Rpb25gKTsKLSAgICAgICAgICAgICAgICByZXR1cm4g
bm9kZS5uYW1lOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0KLSAgICAgICAgdmlzaXRUeXBl
UmVmKG5vZGUpCi0gICAgICAgIHsKLSAgICAgICAgICAgIG5vZGUuX25hbWUgPSBSZW1vdmVUeXBl
QXJndW1lbnRzLnJlc29sdmVOYW1lQW5kQXJndW1lbnRzKG5vZGUpOwotICAgICAgICAgICAgbm9k
ZS5fdHlwZUFyZ3VtZW50cyA9IG51bGw7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBwcm9ncmFt
LnZpc2l0KG5ldyBSZW1vdmVUeXBlQXJndW1lbnRzKCkpOwotfQpkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU5hbWVzLmpzIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU5hbWVzLmpzCmluZGV4IDJlNDAyYzhkNmMwYTM2MDk4NTYx
ZTAyNzVlZTUzZTc3OGZkMzg0YjguLmI4YjUzMzQyNDU5YWU4MzlhY2Y3ZjA3YzJiYmFlYTk2ZThh
NTRjZGYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVO
YW1lcy5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXNvbHZlTmFtZXMu
anMKQEAgLTMxLDggKzMxLDEzIEBAIGZ1bmN0aW9uIGNyZWF0ZU5hbWVSZXNvbHZlcihwcm9ncmFt
KQogCiBmdW5jdGlvbiByZXNvbHZlTmFtZXNJblR5cGVzKHByb2dyYW0sIG5hbWVSZXNvbHZlcikK
IHsKLSAgICBmb3IgKGxldCB0eXBlIG9mIHByb2dyYW0udHlwZXMudmFsdWVzKCkpCi0gICAgICAg
IG5hbWVSZXNvbHZlci5kb1N0YXRlbWVudCh0eXBlKTsKKyAgICBmb3IgKGxldCB0eXBlIG9mIHBy
b2dyYW0udHlwZXMudmFsdWVzKCkpIHsKKyAgICAgICAgaWYgKHR5cGUgaW5zdGFuY2VvZiBBcnJh
eSkgeworICAgICAgICAgICAgZm9yIChsZXQgY29uc3RpdHVlbnRUeXBlIG9mIHR5cGUpCisgICAg
ICAgICAgICAgICAgbmFtZVJlc29sdmVyLmRvU3RhdGVtZW50KGNvbnN0aXR1ZW50VHlwZSk7Cisg
ICAgICAgIH0gZWxzZQorICAgICAgICAgICAgbmFtZVJlc29sdmVyLmRvU3RhdGVtZW50KHR5cGUp
OworICAgIH0KIH0KIAogZnVuY3Rpb24gcmVzb2x2ZU5hbWVzSW5GdW5jdGlvbnMocHJvZ3JhbSwg
bmFtZVJlc29sdmVyKQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UmVzb2x2ZU92ZXJsb2FkSW1wbC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jl
c29sdmVPdmVybG9hZEltcGwuanMKaW5kZXggZDBmMWUzNGQ2MTdlYTI3MjY2NDY3YzE2MTcwNzE1
NDY2NGE0NDlhZC4uN2EwOTdiY2E0NzBlY2I1NmE2ZWUzZGVmNTJhYWY1Zjc4YjUwNjUxMSAxMDA2
NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmVzb2x2ZU92ZXJsb2FkSW1w
bC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9SZXNvbHZlT3ZlcmxvYWRJ
bXBsLmpzCkBAIC0xMDAsMyArMTAwLDI4IEBAIGZ1bmN0aW9uIHJlc29sdmVPdmVybG9hZEltcGwo
ZnVuY3Rpb25zLCBhcmd1bWVudFR5cGVzLCByZXR1cm5UeXBlLCBhbGxvd0VudHJ5UG9pCiAgICAg
CiAgICAgcmV0dXJuIHtmYWlsdXJlczogYW1iaWd1aXR5TGlzdC5tYXAob3ZlcmxvYWQgPT4gbmV3
IE92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUob3ZlcmxvYWQuZnVuYywgbWVzc2FnZSkpfTsKIH0K
KworZnVuY3Rpb24gcmVzb2x2ZVR5cGVPdmVybG9hZEltcGwodHlwZXMsIHR5cGVBcmd1bWVudHMp
Cit7CisgICAgaWYgKCF0eXBlcykKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJOdWxsIHR5cGVz
OyB0aGF0IHNob3VsZCBoYXZlIGJlZW4gY2F1Z2h0IGJ5IHRoZSBjYWxsZXIuIik7CisKKyAgICBs
ZXQgZmFpbHVyZXMgPSBbXTsKKyAgICBsZXQgc3VjY2Vzc2VzID0gW107CisgICAgZm9yIChsZXQg
dHlwZSBvZiB0eXBlcykgeworICAgICAgICBsZXQgb3ZlcmxvYWQgPSBpbmZlclR5cGVzRm9yVHlw
ZUFyZ3VtZW50cyh0eXBlLCB0eXBlQXJndW1lbnRzKTsKKyAgICAgICAgaWYgKG92ZXJsb2FkLmZh
aWx1cmUpCisgICAgICAgICAgICBmYWlsdXJlcy5wdXNoKG92ZXJsb2FkLmZhaWx1cmUpOworICAg
ICAgICBlbHNlCisgICAgICAgICAgICBzdWNjZXNzZXMucHVzaChvdmVybG9hZCk7CisgICAgfQor
ICAgIAorICAgIGlmICghc3VjY2Vzc2VzLmxlbmd0aCkKKyAgICAgICAgcmV0dXJuIHtmYWlsdXJl
czogZmFpbHVyZXN9OworICAgIAorICAgIGlmIChzdWNjZXNzZXMubGVuZ3RoID09IDEpCisgICAg
ICAgIHJldHVybiBzdWNjZXNzZXNbMF07CisgICAgCisgICAgbGV0IG1lc3NhZ2UgPSAiQW1iaWd1
b3VzIG92ZXJsb2FkIC0gdHlwZXMgbXV0dWFsbHkgYXBwbGljYWJsZSI7CisgICAgcmV0dXJuIHtm
YWlsdXJlczogc3VjY2Vzc2VzLm1hcChvdmVybG9hZCA9PiBuZXcgVHlwZU92ZXJsb2FkUmVzb2x1
dGlvbkZhaWx1cmUob3ZlcmxvYWQudHlwZSwgbWVzc2FnZSkpfTsKK30KZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVUeXBlRGVmcy5qcyBiL1Rvb2xzL1dl
YkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jlc29sdmVUeXBlRGVmcy5qcwppbmRleCA5MTQzZjhlMWUw
MGEwNDk4MTRiOTBhMzQ1YzVhZjQ1MTQ1OWQ4NTc0Li4wNTc0YmVjZDU1MzE1MDk0NzhhMmRlZmRj
MmZlN2M2OGU2MWMzZDM1IDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9SZXNvbHZlVHlwZURlZnMuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
UmVzb2x2ZVR5cGVEZWZzLmpzCkBAIC0yNyw4ICsyNywxMyBAQAogZnVuY3Rpb24gcmVzb2x2ZVR5
cGVEZWZzSW5UeXBlcyhwcm9ncmFtKQogewogICAgIGxldCByZXNvbHZlciA9IG5ldyBUeXBlRGVm
UmVzb2x2ZXIoKTsKLSAgICBmb3IgKGxldCB0eXBlIG9mIHByb2dyYW0udHlwZXMudmFsdWVzKCkp
Ci0gICAgICAgIHR5cGUudmlzaXQocmVzb2x2ZXIpOworICAgIGZvciAobGV0IHR5cGUgb2YgcHJv
Z3JhbS50eXBlcy52YWx1ZXMoKSkgeworICAgICAgICBpZiAodHlwZSBpbnN0YW5jZW9mIEFycmF5
KSB7CisgICAgICAgICAgICBmb3IgKGxldCBjb25zdGl0dWVudFR5cGUgb2YgdHlwZSkKKyAgICAg
ICAgICAgICAgICBjb25zdGl0dWVudFR5cGUudmlzaXQocmVzb2x2ZXIpOworICAgICAgICB9IGVs
c2UKKyAgICAgICAgICAgIHR5cGUudmlzaXQocmVzb2x2ZXIpOworICAgIH0KIH0KIAogZnVuY3Rp
b24gcmVzb2x2ZVR5cGVEZWZzSW5GdW5jdGlvbnMocHJvZ3JhbSkKZGlmZiAtLWdpdCBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvUmV3cml0ZXIuanMKaW5kZXggZDU0N2QyMDNmMGRiZjhjYWJlZTQzNzc4MDNi
ZDViMDg0ZTk4MDdiYy4uYmQ4M2MzN2Q5YzQ3NzcxN2UzNTIzNzI4ZDE1ZGY0Mjc5MGRhMWIyZiAx
MDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanMKKysr
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUmV3cml0ZXIuanMKQEAgLTk3LDcgKzk3
LDcgQEAgY2xhc3MgUmV3cml0ZXIgewogICAgIAogICAgIHZpc2l0VHlwZVJlZihub2RlKQogICAg
IHsKLSAgICAgICAgbGV0IHJlc3VsdCA9IG5ldyBUeXBlUmVmKG5vZGUub3JpZ2luLCBub2RlLm5h
bWUpOworICAgICAgICBsZXQgcmVzdWx0ID0gbmV3IFR5cGVSZWYobm9kZS5vcmlnaW4sIG5vZGUu
bmFtZSwgbm9kZS50eXBlQXJndW1lbnRzLm1hcChhcmd1bWVudCA9PiBhcmd1bWVudC52aXNpdCh0
aGlzKSkpOwogICAgICAgICBpZiAobm9kZS50eXBlKQogICAgICAgICAgICAgcmVzdWx0LnR5cGUg
PSBOb2RlLnZpc2l0KG5vZGUudHlwZSwgdGhpcyk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CkBA
IC0zODIsOSArMzgyLDE0IEBAIGNsYXNzIFJld3JpdGVyIHsKIAogICAgIHZpc2l0VmVjdG9yVHlw
ZShub2RlKQogICAgIHsKLSAgICAgICAgY29uc3QgdmVjVHlwZSA9IG5ldyBWZWN0b3JUeXBlKG5v
ZGUub3JpZ2luLCBub2RlLm5hbWUpOwotICAgICAgICB2ZWNUeXBlLl9lbGVtZW50VHlwZSA9IG5v
ZGUuZWxlbWVudFR5cGUudmlzaXQodGhpcyk7CisgICAgICAgIGNvbnN0IHZlY1R5cGUgPSBuZXcg
VmVjdG9yVHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lLCBub2RlLnR5cGVBcmd1bWVudHMubWFw
KGFyZ3VtZW50ID0+IGFyZ3VtZW50LnZpc2l0KHRoaXMpKSk7CiAgICAgICAgIHJldHVybiB2ZWNU
eXBlOwogICAgIH0KKworICAgIHZpc2l0TWF0cml4VHlwZShub2RlKQorICAgIHsKKyAgICAgICAg
Y29uc3QgbWF0VHlwZSA9IG5ldyBNYXRyaXhUeXBlKG5vZGUub3JpZ2luLCBub2RlLm5hbWUsIG5v
ZGUudHlwZUFyZ3VtZW50cy5tYXAoYXJndW1lbnQgPT4gYXJndW1lbnQudmlzaXQodGhpcykpKTsK
KyAgICAgICAgcmV0dXJuIG1hdFR5cGU7CisgICAgfQogfQogCmRpZmYgLS1naXQgYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TUElSVi5odG1sIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvU1BJUlYuaHRtbAppbmRleCBjN2IzOTQwZjJiMTFiZDg5NjE0ZjE0YTliNTJjNDdh
NTYxNjZhYjE0Li4yNjA2ZDNmZGJhMjRhNDZmMTQ2ZmI1OWIwY2ZmY2I2Y2NiN2FiYjU3IDEwMDY0
NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TUElSVi5odG1sCisrKyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1NQSVJWLmh0bWwKQEAgLTI5LDEyICsyOSwxMSBA
QCB0ZCB7CiAgICAgPHNjcmlwdCBzcmM9IkJsb2NrLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iQm9vbExpdGVyYWwuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJCcmVhay5q
cyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9IkJ1aWx0aW5NYXRyaXhHZXR0ZXIuanMiPjwv
c2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJCdWlsdGluTWF0cml4U2V0dGVyLmpzIj48L3Njcmlw
dD4KICAgICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcyI+PC9zY3Jp
cHQ+CiAgICAgPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9yU2V0dGVyLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4R2V0dGVyLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQgc3JjPSJDYWxsRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlw
dCBzcmM9IkNhbGxGdW5jdGlvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNr
LmpzIj48L3NjcmlwdD4KQEAgLTQzLDYgKzQyLDcgQEAgdGQgewogICAgIDxzY3JpcHQgc3JjPSJD
aGVja1JlY3Vyc2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNrUmVjdXJz
aXZlVHlwZXMuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJDaGVja1JldHVybnMuanMi
Pjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJDaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcyI+
PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNoZWNrVW5yZWFjaGFibGVDb2RlLmpzIj48L3Nj
cmlwdD4KICAgICA8c2NyaXB0IHNyYz0iQ2hlY2tXcmFwcGVkLmpzIj48L3NjcmlwdD4KICAgICA8
c2NyaXB0IHNyYz0iQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CkBAIC05NSw2ICs5NSw3IEBAIHRkIHsK
ICAgICA8c2NyaXB0IHNyYz0iTG9vcENoZWNrZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQg
c3JjPSJNYWtlQXJyYXlSZWZFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNy
Yz0iTWFrZVB0ckV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJNYXRy
aXhUeXBlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTmFtZUNvbnRleHQuanMiPjwv
c2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJOYW1lRmluZGVyLmpzIj48L3NjcmlwdD4KICAgICA8
c2NyaXB0IHNyYz0iTmFtZVJlc29sdmVyLmpzIj48L3NjcmlwdD4KQEAgLTEwMiw5ICsxMDMsOCBA
QCB0ZCB7CiAgICAgPHNjcmlwdCBzcmM9Ik5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMiPjwv
c2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJOdWxsTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiAgICAg
PHNjcmlwdCBzcmM9Ik51bGxUeXBlLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iT3Bl
cmF0b3JBbmRlckluZGV4LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JB
bmRlckluZGV4ZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFycmF5
UmVmTGVuZ3RoLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iT3BlcmF0b3JCb29sLmpz
Ij48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iT3JpZ2luS2luZC5qcyI+PC9zY3JpcHQ+CiAg
ICAgPHNjcmlwdCBzcmM9Ik92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiPjwvc2NyaXB0Pgog
ICAgIDxzY3JpcHQgc3JjPSJQYXJzZS5qcyI+PC9zY3JpcHQ+CkBAIC0xMTYsNyArMTE2LDYgQEAg
dGQgewogICAgIDxzY3JpcHQgc3JjPSJSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzIj48L3Nj
cmlwdD4KICAgICA8c2NyaXB0IHNyYz0iUmVjdXJzaW9uQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiAg
ICAgPHNjcmlwdCBzcmM9IlJlY3Vyc2l2ZVR5cGVDaGVja2VyLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iUmVtb3ZlVHlwZUFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlw
dCBzcmM9IlJlc29sdmVOYW1lcy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlJlc29s
dmVPdmVybG9hZEltcGwuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJSZXNvbHZlUHJv
cGVydGllcy5qcyI+PC9zY3JpcHQ+CkBAIC0xMzMsMTMgKzEzMiwxMyBAQCB0ZCB7CiAgICAgPHNj
cmlwdCBzcmM9IlN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KICAg
ICA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogICAg
IDxzY3JpcHQgc3JjPSJTeW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzIj48L3NjcmlwdD4KLSAg
ICA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiAgICAg
PHNjcmlwdCBzcmM9IlN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3Jp
cHQ+CiAgICAgPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRv
ci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlRyYXBTdGF0ZW1lbnQuanMiPjwvc2Ny
aXB0PgogICAgIDxzY3JpcHQgc3JjPSJUeXBlRGVmLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0
IHNyYz0iVHlwZURlZlJlc29sdmVyLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlw
ZVJlZi5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9IlR5cGVPdmVybG9hZFJlc29sdXRp
b25GYWlsdXJlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iVHlwZWRWYWx1ZS5qcyI+
PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlVpbnRMaXRlcmFsLmpzIj48L3NjcmlwdD4KICAg
ICA8c2NyaXB0IHNyYz0iVWludExpdGVyYWxUeXBlLmpzIj48L3NjcmlwdD4KZGlmZiAtLWdpdCBh
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFyeS5qcyBiL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFyeS5qcwppbmRleCAwNmIyNTFj
ZjBhMjQ4MTljYWI1MDY1ZWY1NDQ1ZTE0ODlkNWVhYWZjLi5mMTgzMTY3Y2NhMzQ1ZGQzZWI5NTM3
YjVjNmQyNDdiMWUzZGQyOTYzIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9TdGFuZGFyZExpYnJhcnkuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvU3RhbmRhcmRMaWJyYXJ5LmpzCkBAIC0zMyw1MiArMzMsNjQzIEBAIGxldCBzdGFuZGFyZExp
YnJhcnkgPSBgCiBuYXRpdmUgdHlwZWRlZiB2b2lkOwogbmF0aXZlIHR5cGVkZWYgYm9vbDsKIG5h
dGl2ZSB0eXBlZGVmIHVjaGFyOworbmF0aXZlIHR5cGVkZWYgdXNob3J0OwogbmF0aXZlIHR5cGVk
ZWYgdWludDsKK25hdGl2ZSB0eXBlZGVmIGNoYXI7CituYXRpdmUgdHlwZWRlZiBzaG9ydDsKIG5h
dGl2ZSB0eXBlZGVmIGludDsKK25hdGl2ZSB0eXBlZGVmIGhhbGY7CiBuYXRpdmUgdHlwZWRlZiBm
bG9hdDsKK25hdGl2ZSB0eXBlZGVmIGF0b21pY19pbnQ7CituYXRpdmUgdHlwZWRlZiBhdG9taWNf
dWludDsKIAotLy8gRklYTUU6IEFkZCBzdXBwb3J0IGZvciB0aGVzZSB0eXBlcyB0byBJbnRyaW5z
aWNzLmpzCi0vLyBuYXRpdmUgdHlwZWRlZiB1c2hvcnQ7Ci0vLyBuYXRpdmUgdHlwZWRlZiBjaGFy
OwotLy8gbmF0aXZlIHR5cGVkZWYgc2hvcnQ7Ci0vLyBuYXRpdmUgdHlwZWRlZiBoYWxmOwotLy8g
bmF0aXZlIHR5cGVkZWYgYXRvbWljX2ludDsKLS8vIG5hdGl2ZSB0eXBlZGVmIGF0b21pY191aW50
OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGJvb2wsIDI+OwordHlwZWRlZiBib29sMiA9IHZlY3Rv
cjxib29sLCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjxib29sLCAzPjsKK3R5cGVkZWYgYm9v
bDMgPSB2ZWN0b3I8Ym9vbCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8Ym9vbCwgND47Cit0
eXBlZGVmIGJvb2w0ID0gdmVjdG9yPGJvb2wsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVj
aGFyLCAyPjsKK3R5cGVkZWYgdWNoYXIyID0gdmVjdG9yPHVjaGFyLCAyPjsKK25hdGl2ZSB0eXBl
ZGVmIHZlY3Rvcjx1Y2hhciwgMz47Cit0eXBlZGVmIHVjaGFyMyA9IHZlY3Rvcjx1Y2hhciwgMz47
CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8dWNoYXIsIDQ+OwordHlwZWRlZiB1Y2hhcjQgPSB2ZWN0
b3I8dWNoYXIsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVzaG9ydCwgMj47Cit0eXBlZGVm
IHVzaG9ydDIgPSB2ZWN0b3I8dXNob3J0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjx1c2hv
cnQsIDM+OwordHlwZWRlZiB1c2hvcnQzID0gdmVjdG9yPHVzaG9ydCwgMz47CituYXRpdmUgdHlw
ZWRlZiB2ZWN0b3I8dXNob3J0LCA0PjsKK3R5cGVkZWYgdXNob3J0NCA9IHZlY3Rvcjx1c2hvcnQs
IDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHVpbnQsIDI+OwordHlwZWRlZiB1aW50MiA9IHZl
Y3Rvcjx1aW50LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3Rvcjx1aW50LCAzPjsKK3R5cGVkZWYg
dWludDMgPSB2ZWN0b3I8dWludCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8dWludCwgND47
Cit0eXBlZGVmIHVpbnQ0ID0gdmVjdG9yPHVpbnQsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9y
PGNoYXIsIDI+OwordHlwZWRlZiBjaGFyMiA9IHZlY3RvcjxjaGFyLCAyPjsKK25hdGl2ZSB0eXBl
ZGVmIHZlY3RvcjxjaGFyLCAzPjsKK3R5cGVkZWYgY2hhcjMgPSB2ZWN0b3I8Y2hhciwgMz47Citu
YXRpdmUgdHlwZWRlZiB2ZWN0b3I8Y2hhciwgND47Cit0eXBlZGVmIGNoYXI0ID0gdmVjdG9yPGNo
YXIsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPHNob3J0LCAyPjsKK3R5cGVkZWYgc2hvcnQy
ID0gdmVjdG9yPHNob3J0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxzaG9ydCwgMz47Cit0
eXBlZGVmIHNob3J0MyA9IHZlY3RvcjxzaG9ydCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8
c2hvcnQsIDQ+OwordHlwZWRlZiBzaG9ydDQgPSB2ZWN0b3I8c2hvcnQsIDQ+OworbmF0aXZlIHR5
cGVkZWYgdmVjdG9yPGludCwgMj47Cit0eXBlZGVmIGludDIgPSB2ZWN0b3I8aW50LCAyPjsKK25h
dGl2ZSB0eXBlZGVmIHZlY3RvcjxpbnQsIDM+OwordHlwZWRlZiBpbnQzID0gdmVjdG9yPGludCwg
Mz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8aW50LCA0PjsKK3R5cGVkZWYgaW50NCA9IHZlY3Rv
cjxpbnQsIDQ+OworbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGhhbGYsIDI+OwordHlwZWRlZiBoYWxm
MiA9IHZlY3RvcjxoYWxmLCAyPjsKK25hdGl2ZSB0eXBlZGVmIHZlY3RvcjxoYWxmLCAzPjsKK3R5
cGVkZWYgaGFsZjMgPSB2ZWN0b3I8aGFsZiwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8aGFs
ZiwgND47Cit0eXBlZGVmIGhhbGY0ID0gdmVjdG9yPGhhbGYsIDQ+OworbmF0aXZlIHR5cGVkZWYg
dmVjdG9yPGZsb2F0LCAyPjsKK3R5cGVkZWYgZmxvYXQyID0gdmVjdG9yPGZsb2F0LCAyPjsKK25h
dGl2ZSB0eXBlZGVmIHZlY3RvcjxmbG9hdCwgMz47Cit0eXBlZGVmIGZsb2F0MyA9IHZlY3Rvcjxm
bG9hdCwgMz47CituYXRpdmUgdHlwZWRlZiB2ZWN0b3I8ZmxvYXQsIDQ+OwordHlwZWRlZiBmbG9h
dDQgPSB2ZWN0b3I8ZmxvYXQsIDQ+OwogCi1uYXRpdmUgb3BlcmF0b3IgaW50KHVpbnQpOwotbmF0
aXZlIG9wZXJhdG9yIGludCh1Y2hhcik7Ci1uYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKLW5h
dGl2ZSBvcGVyYXRvciB1aW50KGludCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWludCh1Y2hhcik7Ci1u
YXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWNoYXIoaW50KTsK
K25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCAyPjsKK3R5cGVkZWYgaGFsZjJ4MiA9IG1h
dHJpeDxoYWxmLCAyLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCAzPjsKK3R5
cGVkZWYgaGFsZjJ4MyA9IG1hdHJpeDxoYWxmLCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJp
eDxoYWxmLCAyLCA0PjsKK3R5cGVkZWYgaGFsZjJ4NCA9IG1hdHJpeDxoYWxmLCAyLCA0PjsKK25h
dGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCAyPjsKK3R5cGVkZWYgaGFsZjN4MiA9IG1hdHJp
eDxoYWxmLCAzLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCAzPjsKK3R5cGVk
ZWYgaGFsZjN4MyA9IG1hdHJpeDxoYWxmLCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxo
YWxmLCAzLCA0PjsKK3R5cGVkZWYgaGFsZjN4NCA9IG1hdHJpeDxoYWxmLCAzLCA0PjsKK25hdGl2
ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCAyPjsKK3R5cGVkZWYgaGFsZjR4MiA9IG1hdHJpeDxo
YWxmLCA0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCAzPjsKK3R5cGVkZWYg
aGFsZjR4MyA9IG1hdHJpeDxoYWxmLCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxm
LCA0LCA0PjsKK3R5cGVkZWYgaGFsZjR4NCA9IG1hdHJpeDxoYWxmLCA0LCA0PjsKK25hdGl2ZSB0
eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgMj47Cit0eXBlZGVmIGZsb2F0MngyID0gbWF0cml4PGZs
b2F0LCAyLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgMz47Cit0eXBlZGVm
IGZsb2F0MngzID0gbWF0cml4PGZsb2F0LCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxm
bG9hdCwgMiwgND47Cit0eXBlZGVmIGZsb2F0Mng0ID0gbWF0cml4PGZsb2F0LCAyLCA0PjsKK25h
dGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgMj47Cit0eXBlZGVmIGZsb2F0M3gyID0gbWF0
cml4PGZsb2F0LCAzLCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgMz47Cit0
eXBlZGVmIGZsb2F0M3gzID0gbWF0cml4PGZsb2F0LCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1h
dHJpeDxmbG9hdCwgMywgND47Cit0eXBlZGVmIGZsb2F0M3g0ID0gbWF0cml4PGZsb2F0LCAzLCA0
PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgNCwgMj47Cit0eXBlZGVmIGZsb2F0NHgy
ID0gbWF0cml4PGZsb2F0LCA0LCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgNCwg
Mz47Cit0eXBlZGVmIGZsb2F0NHgzID0gbWF0cml4PGZsb2F0LCA0LCAzPjsKK25hdGl2ZSB0eXBl
ZGVmIG1hdHJpeDxmbG9hdCwgNCwgND47Cit0eXBlZGVmIGZsb2F0NHg0ID0gbWF0cml4PGZsb2F0
LCA0LCA0PjsKKworbmF0aXZlIHR5cGVkZWYgc2FtcGxlcjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUxRDxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxib29sMj47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMUQ8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGJvb2w0PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MUQ8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1Y2hhcjM+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTFEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1c2hvcnQ0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1
aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dWludDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTFEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxjaGFyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxRDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Y2hh
cjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8c2hvcnQyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxRDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHNo
b3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxRDxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxpbnQzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxRDxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxoYWxmPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MUQ8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGhhbGY0PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUxRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8ZmxvYXQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTFEPGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxib29sPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGJv
b2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTFEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVjaGFyMj47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMUQ8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVzaG9ydD47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8dXNob3J0ND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTFEPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVpbnQzPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNo
YXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMUQ8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8Y2hhcjQ+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHNob3J0Mz47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MUQ8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGludDI+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMUQ8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxpbnQ0PjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aGFsZjM+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMUQ8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8
ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8ZmxvYXQyPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTFEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxmbG9h
dDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbD47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMURBcnJheTxib29sMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxi
b29sMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxib29sND47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMURBcnJheTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJh
eTx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWNoYXIzPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MURBcnJheTx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dXNob3J0Mj47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8
dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1aW50Mj47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMURBcnJheTx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJh
eTx1aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxREFycmF5PGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFy
cmF5PGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGNoYXI0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUx
REFycmF5PHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxzaG9ydDM+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxREFycmF5PGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxpbnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTFEQXJyYXk8aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUxREFycmF5PGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGhhbGY0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxm
bG9hdDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8ZmxvYXQ0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUx
REFycmF5PGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Ym9vbDM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxib29sND47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUxREFycmF5PHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8
dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWNoYXIzPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEQXJyYXk8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dXNo
b3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydDM+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEQXJyYXk8dWludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVpbnQy
PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8dWludDM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTx1aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFy
cmF5PGNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxjaGFyMj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEQXJyYXk8Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxzaG9y
dD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHNob3J0Mj47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxREFycmF5PHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUx
REFycmF5PHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGludD47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGludDI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMURBcnJheTxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aW50
ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGhhbGY+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFy
cmF5PGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aGFsZjQ+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUxREFycmF5PGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGZs
b2F0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGZsb2F0ND47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMkQ8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Ym9vbDI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUyRDxib29sND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWNoYXI+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEPHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWNoYXIz
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEPHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dXNob3J0Mj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8
dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8dWludD47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkQ8dWludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVpbnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8
Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxjaGFyND47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHNo
b3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUyRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGludD47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkQ8aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aW50
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMkQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aGFsZjI+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEPGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxoYWxmND47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTJEPGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8ZmxvYXQzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUyRDxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9v
bD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxib29sMj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUyRDxib29sMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxib29sND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUyRDx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWNoYXIzPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
RDx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dXNob3J0Mj47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyRDx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJE
PHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWludD47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUyRDx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1aW50
Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1aW50ND47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUyRDxjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGNoYXIyPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEPGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHNob3J0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxz
aG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8c2hvcnQ0PjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEPGludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxpbnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkQ8aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxoYWxmPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGhh
bGYzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGZsb2F0Mj47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMkQ8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2w+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEQXJyYXk8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Ym9vbDQ+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEQXJyYXk8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVj
aGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEQXJyYXk8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFy
cmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dXNob3J0Mz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyREFycmF5PHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWludDI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8dWludDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEQXJyYXk8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hh
cj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxjaGFyMj47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlMkRBcnJheTxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxj
aGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxzaG9ydD47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlMkRBcnJheTxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJy
YXk8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHNob3J0ND47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxpbnQzPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxoYWxmMj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkRBcnJheTxoYWxmND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdD47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEQXJyYXk8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGZsb2F0
ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGJvb2w+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMkRBcnJheTxib29sMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFy
cmF5PGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8Ym9vbDQ+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyREFycmF5PHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVj
aGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVjaGFyND47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUyREFycmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1c2hv
cnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dXNob3J0ND47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MkRBcnJheTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHVpbnQzPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dWludDQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkRBcnJheTxjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8
Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxjaGFyMz47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEQXJyYXk8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxzaG9ydDI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxzaG9ydDM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMkRBcnJheTxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTxpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxpbnQyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUyREFycmF5PGludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxoYWxmPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkRBcnJheTxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5
PGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkRBcnJheTxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxmbG9h
dDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGJvb2w+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTNEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxib29sMz47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlM0Q8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVjaGFy
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTNEPHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWNoYXI0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUzRDx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVz
aG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVzaG9ydDM+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTNEPHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVpbnQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUz
RDx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWludDQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTNEPGNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGNoYXIyPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8
Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUzRDxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHNob3J0Mz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUz
RDxpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGludDI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTNEPGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGludDQ+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTNEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGhhbGYy
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlM0Q8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGZsb2F0PjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUzRDxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGZsb2F0
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTNEPGJvb2w+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Ym9vbDI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
M0Q8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWNoYXI+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlM0Q8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVj
aGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlM0Q8dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVzaG9y
dDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dXNob3J0Mz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUzRDx1c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWludDI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlM0Q8dWludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dWludDQ+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUz
RDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxjaGFyMz47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUzRDxjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9y
dD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlM0Q8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHNob3J0ND47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlM0Q8aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxpbnQzPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTNEPGludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFs
Zj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUzRDxoYWxmMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxoYWxmND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUzRDxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8ZmxvYXQzPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3Vi
ZTxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGJvb2wyPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmVDdWJlPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGJvb2w0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmVDdWJlPHVjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1Y2hhcjM+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmVDdWJlPHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1c2hvcnQyPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZUN1YmU8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1aW50PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJl
PHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVpbnQ0PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmVDdWJlPGNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Y2hhcjI+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZUN1YmU8Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVD
dWJlPHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxzaG9ydDQ+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZUN1YmU8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGlu
dDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aW50Mz47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlQ3ViZTxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGhhbGY+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1
YmU8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aGFsZjQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZUN1YmU8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Zmxv
YXQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGZsb2F0Mz47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlQ3ViZTxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoMkQ8Zmxv
YXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoMkQ8aGFsZj47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmVEZXB0aDJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZURlcHRo
MkQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlRGVwdGgyREFycmF5PGZsb2F0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVEZXB0aDJEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmVEZXB0aDJEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVw
dGgyREFycmF5PGhhbGY+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZURlcHRoQ3ViZTxmbG9hdD47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlRGVwdGhDdWJlPGhhbGY+OworCituYXRpdmUgb3BlcmF0
b3IgdWNoYXIodXNob3J0KTsKIG5hdGl2ZSBvcGVyYXRvciB1Y2hhcih1aW50KTsKK25hdGl2ZSBv
cGVyYXRvciB1Y2hhcihjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciB1Y2hhcihzaG9ydCk7CituYXRp
dmUgb3BlcmF0b3IgdWNoYXIoaW50KTsKK25hdGl2ZSBvcGVyYXRvciB1Y2hhcihoYWxmKTsKIG5h
dGl2ZSBvcGVyYXRvciB1Y2hhcihmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KTsK
LW5hdGl2ZSBvcGVyYXRvciBmbG9hdCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQodWNo
YXIpOworbmF0aXZlIG9wZXJhdG9yIHVzaG9ydCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hv
cnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRv
ciB1c2hvcnQoaW50KTsKK25hdGl2ZSBvcGVyYXRvciB1c2hvcnQoaGFsZik7CituYXRpdmUgb3Bl
cmF0b3IgdXNob3J0KGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KHVjaGFyKTsKK25hdGl2
ZSBvcGVyYXRvciB1aW50KHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdWludChjaGFyKTsKK25h
dGl2ZSBvcGVyYXRvciB1aW50KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGludCk7Citu
YXRpdmUgb3BlcmF0b3IgdWludChoYWxmKTsKK25hdGl2ZSBvcGVyYXRvciB1aW50KGZsb2F0KTsK
K25hdGl2ZSBvcGVyYXRvciBjaGFyKHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKHVzaG9y
dCk7CituYXRpdmUgb3BlcmF0b3IgY2hhcih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKHNo
b3J0KTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKGludCk7CituYXRpdmUgb3BlcmF0b3IgY2hhciho
YWxmKTsKK25hdGl2ZSBvcGVyYXRvciBjaGFyKGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciBzaG9y
dCh1Y2hhcik7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQodXNob3J0KTsKK25hdGl2ZSBvcGVyYXRv
ciBzaG9ydCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydChjaGFyKTsKK25hdGl2ZSBvcGVy
YXRvciBzaG9ydChpbnQpOworbmF0aXZlIG9wZXJhdG9yIHNob3J0KGhhbGYpOworbmF0aXZlIG9w
ZXJhdG9yIHNob3J0KGZsb2F0KTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodWNoYXIpOworbmF0aXZl
IG9wZXJhdG9yIGludCh1c2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGludCh1aW50KTsKK25hdGl2
ZSBvcGVyYXRvciBpbnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgaW50KHNob3J0KTsKK25hdGl2
ZSBvcGVyYXRvciBpbnQoaGFsZik7CituYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKK25hdGl2
ZSBvcGVyYXRvciBoYWxmKHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKHVzaG9ydCk7Citu
YXRpdmUgb3BlcmF0b3IgaGFsZih1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKGNoYXIpOwor
bmF0aXZlIG9wZXJhdG9yIGhhbGYoc2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGhhbGYoaW50KTsK
K25hdGl2ZSBvcGVyYXRvciBoYWxmKGZsb2F0KTsKIG5hdGl2ZSBvcGVyYXRvciBmbG9hdCh1Y2hh
cik7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQodXNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBmbG9h
dCh1aW50KTsKK25hdGl2ZSBvcGVyYXRvciBmbG9hdChjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBm
bG9hdChzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQoaW50KTsKK25hdGl2ZSBvcGVyYXRv
ciBmbG9hdChoYWxmKTsKKworb3BlcmF0b3IgYm9vbCh1Y2hhciB4KSB7CisgICAgcmV0dXJuIHgg
IT0gMDsKK30KK29wZXJhdG9yIGJvb2wodXNob3J0IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOwor
fQorb3BlcmF0b3IgYm9vbCh1aW50IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0
b3IgYm9vbChjaGFyIHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChz
aG9ydCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woaW50IHgpIHsK
KyAgICByZXR1cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChoYWxmIHgpIHsKKyAgICByZXR1
cm4geCAhPSAwOworfQorb3BlcmF0b3IgYm9vbChmbG9hdCB4KSB7CisgICAgcmV0dXJuIHggIT0g
MDsKK30KKworbmF0aXZlIG9wZXJhdG9yIGludChhdG9taWNfaW50KTsKK25hdGl2ZSBvcGVyYXRv
ciB1aW50KGF0b21pY191aW50KTsKIAorbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShib29sLCBib29s
KTsKK2Jvb2wgb3BlcmF0b3ImKGJvb2wgYSwgYm9vbCBiKSB7CisgICAgcmV0dXJuIGEgJiYgYjsK
K30KK2Jvb2wgb3BlcmF0b3J8KGJvb2wgYSwgYm9vbCBiKSB7CisgICAgcmV0dXJuIGEgfHwgYjsK
K30KK2Jvb2wgb3BlcmF0b3JeKGJvb2wgYSwgYm9vbCBiKSB7CisgICAgaWYgKGEpCisgICAgICAg
IHJldHVybiAhYjsKKyAgICByZXR1cm4gYjsKK30KK2Jvb2wgb3BlcmF0b3J+KGJvb2wgdmFsdWUp
IHsKKyAgICByZXR1cm4gIXZhbHVlOworfQogbmF0aXZlIGludCBvcGVyYXRvcisoaW50LCBpbnQp
OwotbmF0aXZlIHVpbnQgb3BlcmF0b3IrKHVpbnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3IrKHVj
aGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgKyB1aW50KGIpKTsgfQotbmF0
aXZlIGZsb2F0IG9wZXJhdG9yKyhmbG9hdCwgZmxvYXQpOwotaW50IG9wZXJhdG9yKysoaW50IHZh
bHVlKSB7IHJldHVybiB2YWx1ZSArIDE7IH0KLXVpbnQgb3BlcmF0b3IrKyh1aW50IHZhbHVlKSB7
IHJldHVybiB2YWx1ZSArIDE7IH0KLXVjaGFyIG9wZXJhdG9yKysodWNoYXIgdmFsdWUpIHsgcmV0
dXJuIHZhbHVlICsgMTsgfQogbmF0aXZlIGludCBvcGVyYXRvci0oaW50LCBpbnQpOwotbmF0aXZl
IHVpbnQgb3BlcmF0b3ItKHVpbnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3ItKHVjaGFyIGEsIHVj
aGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgLSB1aW50KGIpKTsgfQotbmF0aXZlIGZsb2F0
IG9wZXJhdG9yLShmbG9hdCwgZmxvYXQpOwotaW50IG9wZXJhdG9yLS0oaW50IHZhbHVlKSB7IHJl
dHVybiB2YWx1ZSAtIDE7IH0KLXVpbnQgb3BlcmF0b3ItLSh1aW50IHZhbHVlKSB7IHJldHVybiB2
YWx1ZSAtIDE7IH0KLXVjaGFyIG9wZXJhdG9yLS0odWNoYXIgdmFsdWUpIHsgcmV0dXJuIHZhbHVl
IC0gMTsgfQogbmF0aXZlIGludCBvcGVyYXRvciooaW50LCBpbnQpOwotbmF0aXZlIHVpbnQgb3Bl
cmF0b3IqKHVpbnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyIGIpIHsg
cmV0dXJuIHVjaGFyKHVpbnQoYSkgKiB1aW50KGIpKTsgfQotbmF0aXZlIGZsb2F0IG9wZXJhdG9y
KihmbG9hdCwgZmxvYXQpOwogbmF0aXZlIGludCBvcGVyYXRvci8oaW50LCBpbnQpOworbmF0aXZl
IGJvb2wgb3BlcmF0b3I9PShpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjwoaW50LCBp
bnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8PShpbnQsIGludCk7CituYXRpdmUgYm9vbCBvcGVy
YXRvcj4oaW50LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+PShpbnQsIGludCk7CituYXRp
dmUgdWludCBvcGVyYXRvcisodWludCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvci0odWlu
dCwgdWludCk7CituYXRpdmUgdWludCBvcGVyYXRvcioodWludCwgdWludCk7CiBuYXRpdmUgdWlu
dCBvcGVyYXRvci8odWludCwgdWludCk7Ci11Y2hhciBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIg
YikgeyByZXR1cm4gdWNoYXIodWludChhKSAvIHVpbnQoYikpOyB9CituYXRpdmUgYm9vbCBvcGVy
YXRvcj09KHVpbnQsIHVpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8KHVpbnQsIHVpbnQpOwor
bmF0aXZlIGJvb2wgb3BlcmF0b3I8PSh1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9y
Pih1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPj0odWludCwgdWludCk7CituYXRp
dmUgZmxvYXQgb3BlcmF0b3IrKGZsb2F0LCBmbG9hdCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3It
KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IqKGZsb2F0LCBmbG9hdCk7Citu
YXRpdmUgZmxvYXQgb3BlcmF0b3IvKGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRv
cj09KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcjwoZmxvYXQsIGZsb2F0KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPD0oZmxvYXQsIGZsb2F0KTsKK25hdGl2ZSBib29sIG9wZXJh
dG9yPihmbG9hdCwgZmxvYXQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+PShmbG9hdCwgZmxvYXQp
OwogbmF0aXZlIGludCBvcGVyYXRvciYoaW50LCBpbnQpOwogbmF0aXZlIGludCBvcGVyYXRvcnwo
aW50LCBpbnQpOwogbmF0aXZlIGludCBvcGVyYXRvcl4oaW50LCBpbnQpOwpAQCAtOTEsMTEwICs2
ODIsMjc4NSBAQCBuYXRpdmUgdWludCBvcGVyYXRvcl4odWludCwgdWludCk7CiBuYXRpdmUgdWlu
dCBvcGVyYXRvcn4odWludCk7CiBuYXRpdmUgdWludCBvcGVyYXRvcjw8KHVpbnQsIHVpbnQpOwog
bmF0aXZlIHVpbnQgb3BlcmF0b3I+Pih1aW50LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yJih1Y2hh
ciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpICYgdWludChiKSk7IH0KLXVjaGFy
IG9wZXJhdG9yfCh1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpIHwgdWlu
dChiKSk7IH0KLXVjaGFyIG9wZXJhdG9yXih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hh
cih1aW50KGEpIF4gdWludChiKSk7IH0KLXVjaGFyIG9wZXJhdG9yfih1Y2hhciB2YWx1ZSkgeyBy
ZXR1cm4gdWNoYXIofnVpbnQodmFsdWUpKTsgfQotdWNoYXIgb3BlcmF0b3I8PCh1Y2hhciBhLCB1
aW50IGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgPDwgKGIgJiA3KSk7IH0KLXVjaGFyIG9wZXJh
dG9yPj4odWNoYXIgYSwgdWludCBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEpID4+IChiICYgNykp
OyB9Ci1uYXRpdmUgZmxvYXQgb3BlcmF0b3IvKGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBv
cGVyYXRvcj09KGludCwgaW50KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPT0odWludCwgdWludCk7
Ci1ib29sIG9wZXJhdG9yPT0odWNoYXIgYSwgdWNoYXIgYikgeyByZXR1cm4gdWludChhKSA9PSB1
aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGJvb2wsIGJvb2wpOwotbmF0aXZlIGJv
b2wgb3BlcmF0b3I9PShmbG9hdCwgZmxvYXQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCwg
aW50KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPCh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I8
KHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVpbnQoYSkgPCB1aW50KGIpOyB9Ci1uYXRpdmUg
Ym9vbCBvcGVyYXRvcjwoZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPD0oaW50
LCBpbnQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8PSh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0
b3I8PSh1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1aW50KGEpIDw9IHVpbnQoYik7IH0KLW5h
dGl2ZSBib29sIG9wZXJhdG9yPD0oZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9y
PihpbnQsIGludCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj4odWludCwgdWludCk7Ci1ib29sIG9w
ZXJhdG9yPih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1aW50KGEpID4gdWludChiKTsgfQot
bmF0aXZlIGJvb2wgb3BlcmF0b3I+KGZsb2F0LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRv
cj49KGludCwgaW50KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPj0odWludCwgdWludCk7Ci1ib29s
IG9wZXJhdG9yPj0odWNoYXIgYSwgdWNoYXIgYikgeyByZXR1cm4gdWludChhKSA+PSB1aW50KGIp
OyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj49KGZsb2F0LCBmbG9hdCk7Ci0KLWJvb2wgb3BlcmF0
b3ImKGJvb2wgYSwgYm9vbCBiKQotewotICAgIGlmIChhKQotICAgICAgICByZXR1cm4gYjsKLSAg
ICByZXR1cm4gZmFsc2U7Cit1Y2hhciBvcGVyYXRvcisodWNoYXIgYSwgdWNoYXIgYikgeworICAg
IHJldHVybiB1Y2hhcih1aW50KGEpICsgdWludChiKSk7CiB9Ci0KLWJvb2wgb3BlcmF0b3J8KGJv
b2wgYSwgYm9vbCBiKQotewotICAgIGlmIChhKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBp
ZiAoYikKLSAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgcmV0dXJuIGZhbHNlOwordWNoYXIgb3Bl
cmF0b3ItKHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSAtIHVp
bnQoYikpOwogfQotCi1ib29sIG9wZXJhdG9yXihib29sIGEsIGJvb2wgYikKLXsKLSAgICBpZiAo
YSkKLSAgICAgICAgcmV0dXJuICFiOwotICAgIHJldHVybiBiOwordWNoYXIgb3BlcmF0b3IqKHVj
aGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSAqIHVpbnQoYikpOwog
fQotCi1ib29sIG9wZXJhdG9yfihib29sIHZhbHVlKQotewotICAgIHJldHVybiAhdmFsdWU7Cit1
Y2hhciBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50
KGEpIC8gdWludChiKSk7CiB9Ci0KLW5hdGl2ZSB0eXBlZGVmIHVjaGFyMjsKLW5hdGl2ZSB0eXBl
ZGVmIHVjaGFyMzsKLW5hdGl2ZSB0eXBlZGVmIHVjaGFyNDsKLQotbmF0aXZlIHR5cGVkZWYgdWlu
dDI7Ci1uYXRpdmUgdHlwZWRlZiB1aW50MzsKLW5hdGl2ZSB0eXBlZGVmIHVpbnQ0OwotCi1uYXRp
dmUgdHlwZWRlZiBpbnQyOwotbmF0aXZlIHR5cGVkZWYgaW50MzsKLW5hdGl2ZSB0eXBlZGVmIGlu
dDQ7Ci0KLW5hdGl2ZSB0eXBlZGVmIGZsb2F0MjsKLW5hdGl2ZSB0eXBlZGVmIGZsb2F0MzsKLW5h
dGl2ZSB0eXBlZGVmIGZsb2F0NDsKLWA7Ci0KLS8vIEZJWE1FOiBPbmNlIHRoZSBzdGFuZGFyZCBs
aWJyYXJ5IGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggYSBuZXcgdmVyc2lvbiwgdGhpcyBjb21tZW50
cyBzaG91bGQgYmUgcmVtb3ZlZC4KLS8vIFRoaXMgbGlzdCBpcyB1c2VkIHRvIHJlc3RyaWN0IHRo
ZSBhdmFpbGFiaWxpdHkgb2YgdmVjdG9yIHR5cGVzIGF2YWlsYWJsZSBpbiB0aGUgbGFuZ2F1Z2Uu
Ci0vLyBQZXJtaXNzaWJsZSB2ZWN0b3IgZWxlbWVudCB0eXBlcyBtdXN0IGFwcGVhciBpbiB0aGlz
IGxpc3QgYW5kIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5Ci1jb25zdCBWZWN0b3JFbGVtZW50VHlw
ZXMgPSBbIC8qImJvb2wiLCovICJ1Y2hhciIsIC8qImNoYXIiLCAidXNob3J0IiwgInNob3J0Iiwq
LyAidWludCIsICJpbnQiLCAvKiAiaGFsZiIsICovImZsb2F0IiBdOwotY29uc3QgVmVjdG9yRWxl
bWVudFNpemVzID0gWyAyLCAzLCA0IF07Ci0KLWZ1bmN0aW9uIGFsbFZlY3RvclR5cGVOYW1lcygp
Ci17Ci0gICAgY29uc3QgbmFtZXMgPSBbXTsKLSAgICBmb3IgKGxldCBlbGVtZW50VHlwZSBvZiBW
ZWN0b3JFbGVtZW50VHlwZXMpIHsKLSAgICAgICAgZm9yIChsZXQgc2l6ZSBvZiBWZWN0b3JFbGVt
ZW50U2l6ZXMpCi0gICAgICAgICAgICBuYW1lcy5wdXNoKGAke2VsZW1lbnRUeXBlfSR7c2l6ZX1g
KTsKLSAgICB9Ci0gICAgcmV0dXJuIG5hbWVzOwordWNoYXIgb3BlcmF0b3ImKHVjaGFyIGEsIHVj
aGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSAmIHVpbnQoYikpOwogfQordWNoYXIg
b3BlcmF0b3J8KHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSB8
IHVpbnQoYikpOworfQordWNoYXIgb3BlcmF0b3JeKHVjaGFyIGEsIHVjaGFyIGIpIHsKKyAgICBy
ZXR1cm4gdWNoYXIodWludChhKSBeIHVpbnQoYikpOworfQordWNoYXIgb3BlcmF0b3J+KHVjaGFy
IGEpIHsKKyAgICByZXR1cm4gdWNoYXIofnVpbnQoYSkpOworfQorYm9vbCBvcGVyYXRvcj09KHVj
aGFyIGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWludChhKSA9PSB1aW50KGIpOworfQorYm9v
bCBvcGVyYXRvcjwodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEpIDwgdWlu
dChiKTsKK30KK2Jvb2wgb3BlcmF0b3I8PSh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJu
IHVpbnQoYSkgPD0gdWludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+KHVjaGFyIGEsIHVjaGFyIGIp
IHsKKyAgICByZXR1cm4gdWludChhKSA+IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0odWNo
YXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEpID49IHVpbnQoYik7Cit9Cit1c2hv
cnQgb3BlcmF0b3IrKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWlu
dChhKSArIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yLSh1c2hvcnQgYSwgdXNob3J0IGIp
IHsKKyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgLSB1aW50KGIpKTsKK30KK3VzaG9ydCBvcGVy
YXRvcioodXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpICog
dWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3IvKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAg
IHJldHVybiB1c2hvcnQodWludChhKSAvIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yJih1
c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgJiB1aW50KGIp
KTsKK30KK3VzaG9ydCBvcGVyYXRvcnwodXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJu
IHVzaG9ydCh1aW50KGEpIHwgdWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3JeKHVzaG9ydCBh
LCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWludChhKSBeIHVpbnQoYikpOworfQor
dXNob3J0IG9wZXJhdG9yfih1c2hvcnQgYSkgeworICAgIHJldHVybiB1c2hvcnQofnVpbnQoYSkp
OworfQorYm9vbCBvcGVyYXRvcj09KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1
aW50KGEpID09IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPCh1c2hvcnQgYSwgdXNob3J0IGIp
IHsKKyAgICByZXR1cm4gdWludChhKSA8IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPD0odXNo
b3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVpbnQoYSkgPD0gdWludChiKTsKK30KK2Jv
b2wgb3BlcmF0b3I+KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpID4g
dWludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+PSh1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICBy
ZXR1cm4gdWludChhKSA+PSB1aW50KGIpOworfQordWNoYXIgb3BlcmF0b3I8PCh1Y2hhciBhLCB1
aW50IGIpIHsKKyAgICByZXR1cm4gdWNoYXIodWludChhKSA8PCAoYiAmIDI1NSkpOworfQordXNo
b3J0IG9wZXJhdG9yPDwodXNob3J0IGEsIHVpbnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWlu
dChhKSA8PCAoYiAmIDY1NTM1KSk7Cit9Cit1Y2hhciBvcGVyYXRvcj4+KHVjaGFyIGEsIHVpbnQg
YikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpID4+IChiICYgMjU1KSk7Cit9Cit1c2hvcnQg
b3BlcmF0b3I+Pih1c2hvcnQgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEp
ID4+IChiICYgNjU1MzUpKTsKK30KK2NoYXIgb3BlcmF0b3IrKGNoYXIgYSwgY2hhciBiKSB7Cisg
ICAgcmV0dXJuIGNoYXIoaW50KGEpICsgaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3ItKGNoYXIg
YSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIC0gaW50KGIpKTsKK30KK2NoYXIg
b3BlcmF0b3IqKGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpICogaW50
KGIpKTsKK30KK2NoYXIgb3BlcmF0b3IvKGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNo
YXIoaW50KGEpIC8gaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3ImKGNoYXIgYSwgY2hhciBiKSB7
CisgICAgcmV0dXJuIGNoYXIoaW50KGEpICYgaW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3J8KGNo
YXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIHwgaW50KGIpKTsKK30KK2No
YXIgb3BlcmF0b3JeKGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIF4g
aW50KGIpKTsKK30KK2NoYXIgb3BlcmF0b3J+KGNoYXIgYSkgeworICAgIHJldHVybiBjaGFyKH5p
bnQoYSkpOworfQorYm9vbCBvcGVyYXRvcj09KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJu
IGludChhKSA9PSBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPihjaGFyIGEsIGNoYXIgYikgewor
ICAgIHJldHVybiBpbnQoYSkgPiBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0oY2hhciBhLCBj
aGFyIGIpIHsKKyAgICByZXR1cm4gaW50KGEpID49IGludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I8
KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGludChhKSA8IGludChiKTsKK30KK2Jvb2wg
b3BlcmF0b3I8PShjaGFyIGEsIGNoYXIgYikgeworICAgIHJldHVybiBpbnQoYSkgPD0gaW50KGIp
OworfQorc2hvcnQgb3BlcmF0b3IrKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hv
cnQoaW50KGEpICsgaW50KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yLShzaG9ydCBhLCBzaG9ydCBi
KSB7CisgICAgcmV0dXJuIHNob3J0KGludChhKSAtIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRv
ciooc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgKiBpbnQoYikp
OworfQorc2hvcnQgb3BlcmF0b3IvKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hv
cnQoaW50KGEpIC8gaW50KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yJihzaG9ydCBhLCBzaG9ydCBi
KSB7CisgICAgcmV0dXJuIHNob3J0KGludChhKSAmIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRv
cnwoc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgfCBpbnQoYikp
OworfQorc2hvcnQgb3BlcmF0b3JeKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hv
cnQoaW50KGEpIF4gaW50KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yfihzaG9ydCBhKSB7CisgICAg
cmV0dXJuIHNob3J0KH5pbnQoYSkpOworfQorYm9vbCBvcGVyYXRvcj09KHNob3J0IGEsIHNob3J0
IGIpIHsKKyAgICByZXR1cm4gaW50KGEpID09IGludChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+KHNo
b3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gaW50KGEpID4gaW50KGIpOworfQorYm9vbCBv
cGVyYXRvcj49KHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gaW50KGEpID49IGludChi
KTsKK30KK2Jvb2wgb3BlcmF0b3I8KHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gaW50
KGEpIDwgaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KHNob3J0IGEsIHNob3J0IGIpIHsKKyAg
ICByZXR1cm4gaW50KGEpIDw9IGludChiKTsKK30KK2NoYXIgb3BlcmF0b3I8PChjaGFyIGEsIHVp
bnQgYikgeworICAgIHJldHVybiBjaGFyKGludChhKSA8PCAoYiAmIDI1NSkpOworfQorc2hvcnQg
b3BlcmF0b3I8PChzaG9ydCBhLCB1aW50IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpIDw8
IChiICYgNjU1MzUpKTsKK30KK2NoYXIgb3BlcmF0b3I+PihjaGFyIGEsIHVpbnQgYikgeworICAg
IHJldHVybiBjaGFyKGludChhKSA+PiAoYiAmIDI1NSkpOworfQorc2hvcnQgb3BlcmF0b3I+Pihz
aG9ydCBhLCB1aW50IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpID4+IChiICYgNjU1MzUp
KTsKK30KK3VjaGFyIG9wZXJhdG9yKysodWNoYXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUg
KyAxOworfQordWNoYXIgb3BlcmF0b3ItLSh1Y2hhciB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1
ZSAtIDE7Cit9Cit1c2hvcnQgb3BlcmF0b3IrKyh1c2hvcnQgdmFsdWUpIHsKKyAgICByZXR1cm4g
dmFsdWUgKyAxOworfQordXNob3J0IG9wZXJhdG9yLS0odXNob3J0IHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK3VpbnQgb3BlcmF0b3IrKyh1aW50IHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlICsgMTsKK30KK3VpbnQgb3BlcmF0b3ItLSh1aW50IHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK2NoYXIgb3BlcmF0b3IrKyhjaGFyIHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlICsgMTsKK30KK2NoYXIgb3BlcmF0b3ItLShjaGFyIHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK3Nob3J0IG9wZXJhdG9yKysoc2hvcnQgdmFsdWUpIHsKKyAgICBy
ZXR1cm4gdmFsdWUgKyAxOworfQorc2hvcnQgb3BlcmF0b3ItLShzaG9ydCB2YWx1ZSkgeworICAg
IHJldHVybiB2YWx1ZSAtIDE7Cit9CitpbnQgb3BlcmF0b3IrKyhpbnQgdmFsdWUpIHsKKyAgICBy
ZXR1cm4gdmFsdWUgKyAxOworfQoraW50IG9wZXJhdG9yLS0oaW50IHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK2hhbGYgb3BlcmF0b3IrKyhoYWxmIHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlICsgMTsKK30KK2hhbGYgb3BlcmF0b3ItLShoYWxmIHZhbHVlKSB7CisgICAgcmV0
dXJuIHZhbHVlIC0gMTsKK30KK2Zsb2F0IG9wZXJhdG9yKysoZmxvYXQgdmFsdWUpIHsKKyAgICBy
ZXR1cm4gdmFsdWUgKyAxOworfQorZmxvYXQgb3BlcmF0b3ItLShmbG9hdCB2YWx1ZSkgeworICAg
IHJldHVybiB2YWx1ZSAtIDE7Cit9CitoYWxmIG9wZXJhdG9yKyhoYWxmIGEsIGhhbGYgYikgewor
ICAgIHJldHVybiBoYWxmKGZsb2F0KGEpICsgZmxvYXQoYikpOworfQoraGFsZiBvcGVyYXRvci0o
aGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gaGFsZihmbG9hdChhKSAtIGZsb2F0KGIpKTsK
K30KK2hhbGYgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxv
YXQoYSkgKiBmbG9hdChiKSk7Cit9CitoYWxmIG9wZXJhdG9yLyhoYWxmIGEsIGhhbGYgYikgewor
ICAgIHJldHVybiBoYWxmKGZsb2F0KGEpIC8gZmxvYXQoYikpOworfQorYm9vbCBvcGVyYXRvcj09
KGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGZsb2F0KGEpID09IGZsb2F0KGIpOworfQor
Ym9vbCBvcGVyYXRvcjwoaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQoYSkgPCBm
bG9hdChiKTsKK30KK2Jvb2wgb3BlcmF0b3I8PShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVy
biBmbG9hdChhKSA8PSBmbG9hdChiKTsKK30KK2Jvb2wgb3BlcmF0b3I+KGhhbGYgYSwgaGFsZiBi
KSB7CisgICAgcmV0dXJuIGZsb2F0KGEpIDwgZmxvYXQoYik7Cit9Citib29sIG9wZXJhdG9yPj0o
aGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQoYSkgPD0gZmxvYXQoYik7Cit9Citj
aGFyIG9wZXJhdG9yLShjaGFyIHgpIHsKKyAgICByZXR1cm4gY2hhcigtaW50KHgpKTsKK30KK3No
b3J0IG9wZXJhdG9yLShzaG9ydCB4KSB7CisgICAgcmV0dXJuIHNob3J0KC1pbnQoeCkpOworfQor
aGFsZiBvcGVyYXRvci0oaGFsZiB4KSB7CisgICAgcmV0dXJuIGhhbGYoLWZsb2F0KHgpKTsKK30K
K25hdGl2ZSBpbnQgb3BlcmF0b3ItKGludCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3ItKGZsb2F0
KTsKIAotLy8gUHJvdmlkZXMgb3BlcmF0b3ImW10KLXN0YW5kYXJkTGlicmFyeSArPSBPcGVyYXRv
ckFuZGVySW5kZXhlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotCi0vLyBOYXRp
dmUgdmVjdG9yIHR5cGVzIGFyZSBsaWtlIHN0cnVjdHMgaW4gdGhlIGxhbmdhdWdlLCBidXQgdGhl
eSBkbyBub3QgaGF2ZSB0aGUgYW5kZXIgZmllbGQgYWNjZXNzLgotLy8gSXQgaXMgbm90IHBvc3Np
YmxlIHRvIHRha2UgdGhlIGFkZHJlc3Mgb2YgYSB2ZWN0b3IgZmllbGQuCi1zdGFuZGFyZExpYnJh
cnkgKz0gQnVpbHRpblZlY3RvckdldHRlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4i
Owotc3RhbmRhcmRMaWJyYXJ5ICs9IEJ1aWx0aW5WZWN0b3JTZXR0ZXIuZnVuY3Rpb25zKCkuam9p
bigiO1xuIikgKyAiO1xuIjsKLXN0YW5kYXJkTGlicmFyeSArPSBCdWlsdGluVmVjdG9ySW5kZXhH
ZXR0ZXIuZnVuY3Rpb25zKCkuam9pbigiO1xuIikgKyAiO1xuIjsKLXN0YW5kYXJkTGlicmFyeSAr
PSBCdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuZnVuY3Rpb25zKCkuam9pbigiO1xuIikgKyAiO1xu
IjsKLQotLy8gRklYTUU6IEZvciBuYXRpdmUgdHlwZXMgdGhlc2UgY291bGQgYmUgaW5jbHVkZWQg
YXMgc291cmNlIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5LgotLy8gaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4ODY4NQotc3RhbmRhcmRMaWJyYXJ5ICs9IE9wZXJhdG9y
Qm9vbC5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotc3RhbmRhcmRMaWJyYXJ5ICs9
IEJ1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmZ1bmN0aW9ucygpLmpvaW4oIjtcbiIpICsg
IjtcbiI7Cit1Y2hhcjIgb3BlcmF0b3IrKHVjaGFyMiBhLCB1Y2hhcjIgYikgeworICAgIHVjaGFy
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBvcGVyYXRvci0odWNo
YXIyIGEsIHVjaGFyMiBiKSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXIyIG9wZXJhdG9yKih1Y2hhcjIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hh
cjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IqKHVj
aGFyMiBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXIyIG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhcjIgYikgeworICAgIHVjaGFyMiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBvcGVyYXRvci8odWNoYXIyIGEsIHVjaGFy
MiBiKSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXIyIG9wZXJhdG9yLyh1Y2hhcjIgYSwgdWNoYXIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIyIGIpIHsK
KyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Ir
KHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0
WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRv
ci0odWNoYXIzIGEsIHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJh
dG9yKih1Y2hhcjMgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJl
c3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3Bl
cmF0b3IqKHVjaGFyMyBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yKih1
Y2hhciBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAq
IGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci8odWNoYXIzIGEs
IHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLyh1Y2hhcjMg
YSwgdWNoYXIgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAv
IGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci8odWNoYXIgYSwgdWNoYXIz
IGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IrKHVjaGFyNCBhLCB1Y2hhcjQgYikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAg
cmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci0odWNoYXI0IGEsIHVjaGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yKih1Y2hhcjQgYSwgdWNoYXI0
IGIpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJd
OworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IqKHVjaGFyNCBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhcjQgYikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNd
ID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci8odWNo
YXI0IGEsIHVjaGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLyh1Y2hhcjQgYSwgdWNoYXIgYikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0g
YVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVsz
XSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci8odWNoYXIgYSwg
dWNoYXI0IGIpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOwor
ICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQy
IG9wZXJhdG9yKyh1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLSh1c2hvcnQyIGEsIHVz
aG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQyIG9wZXJhdG9yKih1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yKih1c2hv
cnQyIGEsIHVzaG9ydCBiKSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDIgb3BlcmF0b3IqKHVzaG9ydCBhLCB1c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICog
YlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci8odXNob3J0MiBh
LCB1c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0MiBvcGVyYXRvci8odXNob3J0MiBhLCB1c2hvcnQgYikgeworICAgIHVzaG9y
dDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLyh1c2hvcnQg
YSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAv
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDMgb3BlcmF0b3IrKHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7CisgICAgdXNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsx
XSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDMgb3BlcmF0b3ItKHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7CisgICAgdXNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IqKHVzaG9ydDMgYSwgdXNob3J0MyBiKSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IqKHVzaG9ydDMgYSwgdXNob3J0IGIp
IHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvcioodXNob3J0IGEsIHVzaG9ydDMgYikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLyh1c2hvcnQzIGEsIHVzaG9ydDMgYikgeworICAg
IHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLyh1c2hvcnQzIGEsIHVzaG9ydCBiKSB7
CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IvKHVzaG9ydCBhLCB1c2hvcnQzIGIpIHsKKyAg
ICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvcisodXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1
bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci0odXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvcioodXNob3J0NCBhLCB1c2hv
cnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICog
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvcioodXNob3J0NCBhLCB1c2hvcnQgYikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
KiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBi
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKih1c2hvcnQgYSwgdXNo
b3J0NCBiKSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07Cisg
ICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IvKHVzaG9ydDQgYSwgdXNob3J0NCBiKSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IvKHVzaG9ydDQgYSwg
dXNob3J0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsK
KyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci8odXNob3J0IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvcisodWludDIgYSwgdWludDIgYikgeworICAg
IHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3It
KHVpbnQyIGEsIHVpbnQyIGIpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yKih1aW50MiBhLCB1aW50MiBiKSB7CisgICAgdWludDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvcioodWludDIg
YSwgdWludCBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBi
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MiBvcGVyYXRvcioodWludCBhLCB1aW50MiBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci8odWludDIgYSwgdWludDIgYikgeworICAgIHVp
bnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IvKHVp
bnQyIGEsIHVpbnQgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDIgb3BlcmF0b3IvKHVpbnQgYSwgdWludDIgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IrKHVpbnQzIGEsIHVpbnQzIGIpIHsKKyAg
ICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLSh1aW50MyBhLCB1aW50MyBiKSB7CisgICAg
dWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvcioodWludDMgYSwgdWludDMgYikgeworICAgIHVp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDMgb3BlcmF0b3IqKHVpbnQzIGEsIHVpbnQgYikgeworICAgIHVpbnQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDMgb3BlcmF0b3IqKHVpbnQgYSwgdWludDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0
b3IvKHVpbnQzIGEsIHVpbnQzIGIpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0
WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9y
Lyh1aW50MyBhLCB1aW50IGIpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsy
XSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLyh1aW50IGEsIHVp
bnQzIGIpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yKyh1aW50NCBhLCB1aW50NCBiKSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJl
c3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci0odWludDQgYSwgdWludDQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IqKHVpbnQ0IGEsIHVpbnQ0IGIpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yKih1aW50NCBhLCB1aW50IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0g
YVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yKih1aW50IGEsIHVpbnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLyh1aW50NCBhLCB1aW50NCBiKSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJl
c3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci8odWludDQgYSwgdWludCBiKSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9
IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci8odWludCBhLCB1aW50NCBiKSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOwor
ICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvcisoY2hhcjIgYSwgY2hhcjIgYikgewor
ICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0
b3ItKGNoYXIyIGEsIGNoYXIyIGIpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yKihjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAgY2hh
cjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvciooY2hh
cjIgYSwgY2hhciBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMiBvcGVyYXRvciooY2hhciBhLCBjaGFyMiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci8oY2hhcjIgYSwgY2hhcjIgYikgeworICAg
IGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3Iv
KGNoYXIyIGEsIGNoYXIgYikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjIgb3BlcmF0b3IvKGNoYXIgYSwgY2hhcjIgYikgeworICAgIGNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IrKGNoYXIzIGEsIGNoYXIzIGIpIHsK
KyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLShjaGFyMyBhLCBjaGFyMyBiKSB7Cisg
ICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvciooY2hhcjMgYSwgY2hhcjMgYikgeworICAg
IGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IqKGNoYXIzIGEsIGNoYXIgYikgeworICAgIGNo
YXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBh
WzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjMgb3BlcmF0b3IqKGNoYXIgYSwgY2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAg
ICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3Bl
cmF0b3IvKGNoYXIzIGEsIGNoYXIzIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJh
dG9yLyhjaGFyMyBhLCBjaGFyIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0g
YVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLyhjaGFyIGEs
IGNoYXIzIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yKyhjaGFyNCBhLCBjaGFyNCBiKSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAg
IHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci0oY2hhcjQgYSwgY2hhcjQgYikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IqKGNoYXI0IGEsIGNoYXI0IGIpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAg
cmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yKihjaGFyNCBhLCBjaGFyIGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJd
ID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yKihjaGFyIGEsIGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLyhjaGFyNCBhLCBjaGFyNCBiKSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAg
IHJlc3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci8oY2hhcjQgYSwgY2hhciBiKSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci8oY2hhciBhLCBjaGFyNCBiKSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IrKHNob3J0MiBhLCBzaG9ydDIg
YikgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
MiBvcGVyYXRvci0oc2hvcnQyIGEsIHNob3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJhdG9yKihzaG9ydDIgYSwgc2hvcnQy
IGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDIgb3BlcmF0b3IqKHNob3J0MiBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydDIgYikgewor
ICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvci8o
c2hvcnQyIGEsIHNob3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQyIG9wZXJhdG9yLyhzaG9ydDIgYSwgc2hvcnQgYikgeworICAgIHNo
b3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0g
YVsxXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvci8oc2hvcnQg
YSwgc2hvcnQyIGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDMgb3BlcmF0b3IrKHNob3J0MyBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0MyBvcGVyYXRvci0oc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0g
YlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQzIG9wZXJhdG9yKihzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
KiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDMgb3BlcmF0b3IqKHNob3J0MyBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICog
YjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQzIG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAg
cmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVy
YXRvci8oc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9w
ZXJhdG9yLyhzaG9ydDMgYSwgc2hvcnQgYikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0
WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci8o
c2hvcnQgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEg
LyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IrKHNob3J0NCBh
LCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAr
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsy
XSArIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci0oc2hvcnQ0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10g
PSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yKihz
aG9ydDQgYSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IqKHNob3J0NCBhLCBzaG9ydCBiKSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBh
WzNdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yKihzaG9ydCBh
LCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07
CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci8oc2hvcnQ0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLyhzaG9ydDQgYSwgc2hv
cnQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAg
cmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci8oc2hvcnQgYSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsy
XSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQyIG9wZXJhdG9yKyhpbnQyIGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBi
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLShpbnQyIGEsIGludDIg
YikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9w
ZXJhdG9yKihpbnQyIGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yKihpbnQyIGEsIGludCBiKSB7CisgICAgaW50MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAq
IGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IqKGludCBhLCBpbnQyIGIp
IHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci8o
aW50MiBhLCBpbnQyIGIpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
IC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50MiBvcGVyYXRvci8oaW50MiBhLCBpbnQgYikgeworICAgIGludDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLyhpbnQgYSwgaW50MiBiKSB7CisgICAg
aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IrKGludDMgYSwg
aW50MyBiKSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3ItKGludDMgYSwgaW50MyBi
KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IqKGludDMgYSwgaW50MyBiKSB7Cisg
ICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IqKGludDMgYSwgaW50IGIpIHsKKyAgICBpbnQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50MyBvcGVyYXRvciooaW50IGEsIGludDMgYikgeworICAgIGludDMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLyhp
bnQzIGEsIGludDMgYikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
LyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFb
Ml0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLyhpbnQzIGEs
IGludCBiKSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IvKGludCBhLCBpbnQzIGIpIHsKKyAgICBp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
IC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvcisoaW50NCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci0oaW50NCBhLCBpbnQ0IGIp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAg
ICByZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvciooaW50NCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvciooaW50NCBhLCBpbnQgYikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10g
KiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yKihpbnQgYSwgaW50NCBi
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0
WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IvKGlu
dDQgYSwgaW50NCBiKSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAv
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsy
XSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3IvKGludDQgYSwgaW50IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci8oaW50IGEsIGludDQgYikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEg
LyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvcisoaGFsZjIgYSwgaGFs
ZjIgYikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjIgb3BlcmF0b3ItKGhhbGYyIGEsIGhhbGYyIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yKihoYWxmMiBhLCBoYWxmMiBiKSB7
CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVy
YXRvciooaGFsZjIgYSwgaGFsZiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMiBvcGVyYXRvciooaGFsZiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci8oaGFsZjIgYSwgaGFsZjIg
YikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIg
b3BlcmF0b3IvKGhhbGYyIGEsIGhhbGYgYikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IvKGhhbGYgYSwgaGFsZjIgYikgeworICAgIGhhbGYy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8g
YlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IrKGhhbGYzIGEsIGhh
bGYzIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLShoYWxmMyBhLCBoYWxm
MyBiKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvciooaGFsZjMgYSwgaGFsZjMg
YikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IqKGhhbGYzIGEsIGhhbGYgYikg
eworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1
bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjMgYikgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICog
YlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjMgb3BlcmF0b3IvKGhhbGYzIGEsIGhhbGYzIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzIG9wZXJhdG9yLyhoYWxmMyBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVz
dWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9y
LyhoYWxmIGEsIGhhbGYzIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAv
IGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yKyhoYWxmNCBhLCBo
YWxmNCBiKSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBi
WzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci0oaGFsZjQgYSwgaGFsZjQgYikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsx
XTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC0g
YlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IqKGhhbGY0IGEsIGhh
bGY0IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJb
Ml07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yKihoYWxmNCBhLCBoYWxmIGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAg
cmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGI7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yKihoYWxmIGEsIGhhbGY0IGIpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAq
IGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLyhoYWxmNCBhLCBo
YWxmNCBiKSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBi
WzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci8oaGFsZjQgYSwgaGFsZiBiKSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAg
IHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci8oaGFsZiBhLCBoYWxmNCBiKSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEg
LyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IrKGZsb2F0MiBh
LCBmbG9hdDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAr
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MiBvcGVyYXRvci0oZmxvYXQyIGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC0gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yKihmbG9hdDIg
YSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDIgb3BlcmF0b3IqKGZsb2F0MiBhLCBmbG9hdCBiKSB7CisgICAgZmxvYXQyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICog
YjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yKihmbG9hdCBhLCBmbG9h
dDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBv
cGVyYXRvci8oZmxvYXQyIGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yLyhmbG9hdDIgYSwgZmxvYXQgYikg
eworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRv
ci8oZmxvYXQgYSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IrKGZsb2F0MyBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJbMl07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci0oZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAgZmxv
YXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yKihmbG9hdDMgYSwgZmxvYXQzIGIpIHsKKyAgICBm
bG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IqKGZsb2F0MyBhLCBmbG9hdCBiKSB7CisgICAg
ZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzIG9wZXJhdG9yKihmbG9hdCBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MyBvcGVyYXRvci8oZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAgZmxvYXQzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsx
XTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzIG9wZXJhdG9yLyhmbG9hdDMgYSwgZmxvYXQgYikgeworICAgIGZsb2F0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBv
cGVyYXRvci8oZmxvYXQgYSwgZmxvYXQzIGIpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGEgLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Ir
KGZsb2F0NCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0
WzJdID0gYVsyXSArIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci0oZmxvYXQ0IGEsIGZsb2F0NCBiKSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsKKyAgICBy
ZXN1bHRbM10gPSBhWzNdIC0gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yKihmbG9hdDQgYSwgZmxvYXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IqKGZsb2F0NCBhLCBmbG9hdCBi
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1
bHRbM10gPSBhWzNdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
KihmbG9hdCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci8oZmxvYXQ0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBh
WzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLyhmbG9h
dDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAv
IGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci8oZmxvYXQgYSwgZmxvYXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGEgLyBiWzNdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci0oY2hhcjIgYSkgeworICAgIGNoYXIyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3ItKGNoYXIzIGEpIHsKKyAgICBjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07
CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLShjaGFyNCBhKSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1h
WzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAg
IHJlc3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0
b3ItKHNob3J0MiBhKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVsw
XTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQz
IG9wZXJhdG9yLShzaG9ydDMgYSkgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci0oc2hvcnQ0IGEpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9
IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJlc3VsdFszXSA9IC1hWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLShpbnQyIGEpIHsKKyAgICBpbnQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci0oaW50MyBhKSB7CisgICAgaW50
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07
CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3ItKGludDQgYSkgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBd
OworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJl
c3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci0o
aGFsZjIgYSkgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAg
ICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0
b3ItKGhhbGYzIGEpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07
CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLShoYWxmNCBhKSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAg
IHJlc3VsdFsyXSA9IC1hWzJdOworICAgIHJlc3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3ItKGZsb2F0MiBhKSB7CisgICAgZmxvYXQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLShmbG9hdDMgYSkgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07
CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci0oZmxvYXQ0IGEpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJlc3VsdFsyXSA9IC1hWzJdOwor
ICAgIHJlc3VsdFszXSA9IC1hWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2Jvb2wgb3Bl
cmF0b3I9PShib29sMiBhLCBib29sMiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55
ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShib29sMyBhLCBib29sMyBiKSB7CisgICAgcmV0
dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVy
YXRvcj09KGJvb2w0IGEsIGJvb2w0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkg
PT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBib29sIG9wZXJh
dG9yLngoYm9vbDIpOworbmF0aXZlIGJvb2wgb3BlcmF0b3IueShib29sMik7CituYXRpdmUgYm9v
bCBvcGVyYXRvci54KGJvb2wzKTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLnkoYm9vbDMpOworbmF0
aXZlIGJvb2wgb3BlcmF0b3Iueihib29sMyk7CituYXRpdmUgYm9vbCBvcGVyYXRvci54KGJvb2w0
KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLnkoYm9vbDQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3Iu
eihib29sNCk7CituYXRpdmUgYm9vbCBvcGVyYXRvci53KGJvb2w0KTsKK25hdGl2ZSBib29sMiBv
cGVyYXRvci54PShib29sMiwgYm9vbCk7CituYXRpdmUgYm9vbDIgb3BlcmF0b3IueT0oYm9vbDIs
IGJvb2wpOworbmF0aXZlIGJvb2wzIG9wZXJhdG9yLng9KGJvb2wzLCBib29sKTsKK25hdGl2ZSBi
b29sMyBvcGVyYXRvci55PShib29sMywgYm9vbCk7CituYXRpdmUgYm9vbDMgb3BlcmF0b3Iuej0o
Ym9vbDMsIGJvb2wpOworbmF0aXZlIGJvb2w0IG9wZXJhdG9yLng9KGJvb2w0LCBib29sKTsKK25h
dGl2ZSBib29sNCBvcGVyYXRvci55PShib29sNCwgYm9vbCk7CituYXRpdmUgYm9vbDQgb3BlcmF0
b3Iuej0oYm9vbDQsIGJvb2wpOworbmF0aXZlIGJvb2w0IG9wZXJhdG9yLnc9KGJvb2w0LCBib29s
KTsKK2Jvb2wgb3BlcmF0b3JbXShib29sMiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChp
bmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAg
ICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0OgorICAg
ICAgICAgICAgdHJhcDsKKyAgICB9Cit9Citib29sIG9wZXJhdG9yW10oYm9vbDMgdiwgdWludCBp
bmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAg
ICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsK
KyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQorYm9vbCBvcGVyYXRvcltdKGJvb2w0IHYs
IHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVy
biB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAg
IGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KK30KK2Jvb2wyIG9wZXJhdG9yW109KGJvb2wyIHYsIHVpbnQg
aW5kZXgsIGJvb2wgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgor
ICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6
CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wzIG9w
ZXJhdG9yW109KGJvb2wzIHYsIHVpbnQgaW5kZXgsIGJvb2wgYSkgeworICAgIHN3aXRjaCAoaW5k
ZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQor
ICAgIHJldHVybiB2OworfQorYm9vbDQgb3BlcmF0b3JbXT0oYm9vbDQgdiwgdWludCBpbmRleCwg
Ym9vbCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAg
ICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAg
ICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAg
ICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDM6Cisg
ICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wgb3BlcmF0
b3I9PSh1Y2hhcjIgYSwgdWNoYXIyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkg
PT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHJl
dHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3Bl
cmF0b3I9PSh1Y2hhcjQgYSwgdWNoYXI0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBh
LnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSB1Y2hhciBv
cGVyYXRvci54KHVjaGFyMik7CituYXRpdmUgdWNoYXIgb3BlcmF0b3IueSh1Y2hhcjIpOworbmF0
aXZlIHVjaGFyIG9wZXJhdG9yLngodWNoYXIzKTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRvci55KHVj
aGFyMyk7CituYXRpdmUgdWNoYXIgb3BlcmF0b3Iueih1Y2hhcjMpOworbmF0aXZlIHVjaGFyIG9w
ZXJhdG9yLngodWNoYXI0KTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRvci55KHVjaGFyNCk7CituYXRp
dmUgdWNoYXIgb3BlcmF0b3Iueih1Y2hhcjQpOworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLncodWNo
YXI0KTsKK25hdGl2ZSB1Y2hhcjIgb3BlcmF0b3IueD0odWNoYXIyLCB1Y2hhcik7CituYXRpdmUg
dWNoYXIyIG9wZXJhdG9yLnk9KHVjaGFyMiwgdWNoYXIpOworbmF0aXZlIHVjaGFyMyBvcGVyYXRv
ci54PSh1Y2hhcjMsIHVjaGFyKTsKK25hdGl2ZSB1Y2hhcjMgb3BlcmF0b3IueT0odWNoYXIzLCB1
Y2hhcik7CituYXRpdmUgdWNoYXIzIG9wZXJhdG9yLno9KHVjaGFyMywgdWNoYXIpOworbmF0aXZl
IHVjaGFyNCBvcGVyYXRvci54PSh1Y2hhcjQsIHVjaGFyKTsKK25hdGl2ZSB1Y2hhcjQgb3BlcmF0
b3IueT0odWNoYXI0LCB1Y2hhcik7CituYXRpdmUgdWNoYXI0IG9wZXJhdG9yLno9KHVjaGFyNCwg
dWNoYXIpOworbmF0aXZlIHVjaGFyNCBvcGVyYXRvci53PSh1Y2hhcjQsIHVjaGFyKTsKK3VjaGFy
IG9wZXJhdG9yW10odWNoYXIyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7
CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2Ug
MToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAg
ICB0cmFwOworICAgIH0KK30KK3VjaGFyIG9wZXJhdG9yW10odWNoYXIzIHYsIHVpbnQgaW5kZXgp
IHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJl
dHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAg
ICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3VjaGFyIG9wZXJhdG9yW10odWNoYXI0IHYsIHVp
bnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAg
ICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2
Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGNh
c2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICB0cmFwOworICAgIH0KK30KK3VjaGFyMiBvcGVyYXRvcltdPSh1Y2hhcjIgdiwgdWludCBp
bmRleCwgdWNoYXIgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgor
ICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6
CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK3VjaGFyMyBv
cGVyYXRvcltdPSh1Y2hhcjMgdiwgdWludCBpbmRleCwgdWNoYXIgYSkgeworICAgIHN3aXRjaCAo
aW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7CisgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAg
fQorICAgIHJldHVybiB2OworfQordWNoYXI0IG9wZXJhdG9yW109KHVjaGFyNCB2LCB1aW50IGlu
ZGV4LCB1Y2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAy
OgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNl
IDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wg
b3BlcmF0b3I9PSh1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54
ICYmIGEueSA9PSBiLnk7Cit9Citib29sIG9wZXJhdG9yPT0odXNob3J0MyBhLCB1c2hvcnQzIGIp
IHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9
Citib29sIG9wZXJhdG9yPT0odXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICByZXR1cm4gYS54
ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25h
dGl2ZSB1c2hvcnQgb3BlcmF0b3IueCh1c2hvcnQyKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iu
eSh1c2hvcnQyKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3IueCh1c2hvcnQzKTsKK25hdGl2ZSB1
c2hvcnQgb3BlcmF0b3IueSh1c2hvcnQzKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iueih1c2hv
cnQzKTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3IueCh1c2hvcnQ0KTsKK25hdGl2ZSB1c2hvcnQg
b3BlcmF0b3IueSh1c2hvcnQ0KTsKK25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iueih1c2hvcnQ0KTsK
K25hdGl2ZSB1c2hvcnQgb3BlcmF0b3Iudyh1c2hvcnQ0KTsKK25hdGl2ZSB1c2hvcnQyIG9wZXJh
dG9yLng9KHVzaG9ydDIsIHVzaG9ydCk7CituYXRpdmUgdXNob3J0MiBvcGVyYXRvci55PSh1c2hv
cnQyLCB1c2hvcnQpOworbmF0aXZlIHVzaG9ydDMgb3BlcmF0b3IueD0odXNob3J0MywgdXNob3J0
KTsKK25hdGl2ZSB1c2hvcnQzIG9wZXJhdG9yLnk9KHVzaG9ydDMsIHVzaG9ydCk7CituYXRpdmUg
dXNob3J0MyBvcGVyYXRvci56PSh1c2hvcnQzLCB1c2hvcnQpOworbmF0aXZlIHVzaG9ydDQgb3Bl
cmF0b3IueD0odXNob3J0NCwgdXNob3J0KTsKK25hdGl2ZSB1c2hvcnQ0IG9wZXJhdG9yLnk9KHVz
aG9ydDQsIHVzaG9ydCk7CituYXRpdmUgdXNob3J0NCBvcGVyYXRvci56PSh1c2hvcnQ0LCB1c2hv
cnQpOworbmF0aXZlIHVzaG9ydDQgb3BlcmF0b3Iudz0odXNob3J0NCwgdXNob3J0KTsKK3VzaG9y
dCBvcGVyYXRvcltdKHVzaG9ydDIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgp
IHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2Fz
ZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorfQordXNob3J0IG9wZXJhdG9yW10odXNob3J0MyB2LCB1aW50IGlu
ZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAg
ICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55Owor
ICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9Cit1c2hvcnQgb3BlcmF0b3JbXSh1c2hvcnQ0
IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoK
KyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJl
dHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAg
ICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3VzaG9ydDIgb3BlcmF0b3JbXT0odXNob3J0MiB2
LCB1aW50IGluZGV4LCB1c2hvcnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAg
Y2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30K
K3VzaG9ydDMgb3BlcmF0b3JbXT0odXNob3J0MyB2LCB1aW50IGluZGV4LCB1c2hvcnQgYSkgewor
ICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0g
YTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2Lnkg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYu
eiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordXNob3J0NCBvcGVyYXRvcltdPSh1c2hv
cnQ0IHYsIHVpbnQgaW5kZXgsIHVzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1
cm4gdjsKK30KK2Jvb2wgb3BlcmF0b3I9PSh1aW50MiBhLCB1aW50MiBiKSB7CisgICAgcmV0dXJu
IGEueCA9PSBiLnggJiYgYS55ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PSh1aW50MyBhLCB1
aW50MyBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0g
Yi56OworfQorYm9vbCBvcGVyYXRvcj09KHVpbnQ0IGEsIHVpbnQ0IGIpIHsKKyAgICByZXR1cm4g
YS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30K
K25hdGl2ZSB1aW50IG9wZXJhdG9yLngodWludDIpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IueSh1
aW50Mik7CituYXRpdmUgdWludCBvcGVyYXRvci54KHVpbnQzKTsKK25hdGl2ZSB1aW50IG9wZXJh
dG9yLnkodWludDMpOworbmF0aXZlIHVpbnQgb3BlcmF0b3Iueih1aW50Myk7CituYXRpdmUgdWlu
dCBvcGVyYXRvci54KHVpbnQ0KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLnkodWludDQpOworbmF0
aXZlIHVpbnQgb3BlcmF0b3Iueih1aW50NCk7CituYXRpdmUgdWludCBvcGVyYXRvci53KHVpbnQ0
KTsKK25hdGl2ZSB1aW50MiBvcGVyYXRvci54PSh1aW50MiwgdWludCk7CituYXRpdmUgdWludDIg
b3BlcmF0b3IueT0odWludDIsIHVpbnQpOworbmF0aXZlIHVpbnQzIG9wZXJhdG9yLng9KHVpbnQz
LCB1aW50KTsKK25hdGl2ZSB1aW50MyBvcGVyYXRvci55PSh1aW50MywgdWludCk7CituYXRpdmUg
dWludDMgb3BlcmF0b3Iuej0odWludDMsIHVpbnQpOworbmF0aXZlIHVpbnQ0IG9wZXJhdG9yLng9
KHVpbnQ0LCB1aW50KTsKK25hdGl2ZSB1aW50NCBvcGVyYXRvci55PSh1aW50NCwgdWludCk7Citu
YXRpdmUgdWludDQgb3BlcmF0b3Iuej0odWludDQsIHVpbnQpOworbmF0aXZlIHVpbnQ0IG9wZXJh
dG9yLnc9KHVpbnQ0LCB1aW50KTsKK3VpbnQgb3BlcmF0b3JbXSh1aW50MiB2LCB1aW50IGluZGV4
KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICBy
ZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAg
ICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9Cit1aW50IG9wZXJhdG9y
W10odWludDMgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAg
Y2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAg
ICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYu
ejsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQordWludCBv
cGVyYXRvcltdKHVpbnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7Cisg
ICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJl
dHVybiB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3VpbnQyIG9wZXJhdG9y
W109KHVpbnQyIHYsIHVpbnQgaW5kZXgsIHVpbnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsK
KyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1
cm4gdjsKK30KK3VpbnQzIG9wZXJhdG9yW109KHVpbnQzIHYsIHVpbnQgaW5kZXgsIHVpbnQgYSkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2
LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAg
IHYueiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordWludDQgb3BlcmF0b3JbXT0odWlu
dDQgdiwgdWludCBpbmRleCwgdWludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAg
ICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4g
djsKK30KK2Jvb2wgb3BlcmF0b3I9PShjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAgcmV0dXJuIGEu
eCA9PSBiLnggJiYgYS55ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShjaGFyMyBhLCBjaGFy
MyBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56
OworfQorYm9vbCBvcGVyYXRvcj09KGNoYXI0IGEsIGNoYXI0IGIpIHsKKyAgICByZXR1cm4gYS54
ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25h
dGl2ZSBjaGFyIG9wZXJhdG9yLngoY2hhcjIpOworbmF0aXZlIGNoYXIgb3BlcmF0b3IueShjaGFy
Mik7CituYXRpdmUgY2hhciBvcGVyYXRvci54KGNoYXIzKTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9y
LnkoY2hhcjMpOworbmF0aXZlIGNoYXIgb3BlcmF0b3IueihjaGFyMyk7CituYXRpdmUgY2hhciBv
cGVyYXRvci54KGNoYXI0KTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9yLnkoY2hhcjQpOworbmF0aXZl
IGNoYXIgb3BlcmF0b3IueihjaGFyNCk7CituYXRpdmUgY2hhciBvcGVyYXRvci53KGNoYXI0KTsK
K25hdGl2ZSBjaGFyMiBvcGVyYXRvci54PShjaGFyMiwgY2hhcik7CituYXRpdmUgY2hhcjIgb3Bl
cmF0b3IueT0oY2hhcjIsIGNoYXIpOworbmF0aXZlIGNoYXIzIG9wZXJhdG9yLng9KGNoYXIzLCBj
aGFyKTsKK25hdGl2ZSBjaGFyMyBvcGVyYXRvci55PShjaGFyMywgY2hhcik7CituYXRpdmUgY2hh
cjMgb3BlcmF0b3Iuej0oY2hhcjMsIGNoYXIpOworbmF0aXZlIGNoYXI0IG9wZXJhdG9yLng9KGNo
YXI0LCBjaGFyKTsKK25hdGl2ZSBjaGFyNCBvcGVyYXRvci55PShjaGFyNCwgY2hhcik7CituYXRp
dmUgY2hhcjQgb3BlcmF0b3Iuej0oY2hhcjQsIGNoYXIpOworbmF0aXZlIGNoYXI0IG9wZXJhdG9y
Lnc9KGNoYXI0LCBjaGFyKTsKK2NoYXIgb3BlcmF0b3JbXShjaGFyMiB2LCB1aW50IGluZGV4KSB7
CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1
cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAg
ICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitjaGFyIG9wZXJhdG9yW10o
Y2hhcjMgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2Fz
ZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAg
ICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsK
KyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQorY2hhciBvcGVy
YXRvcltdKGNoYXI0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAg
ICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAg
ICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVy
biB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAg
IGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2NoYXIyIG9wZXJhdG9yW109
KGNoYXIyIHYsIHVpbnQgaW5kZXgsIGNoYXIgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAg
ICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4g
djsKK30KK2NoYXIzIG9wZXJhdG9yW109KGNoYXIzIHYsIHVpbnQgaW5kZXgsIGNoYXIgYSkgewor
ICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0g
YTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2Lnkg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYu
eiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorY2hhcjQgb3BlcmF0b3JbXT0oY2hhcjQg
diwgdWludCBpbmRleCwgY2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBj
YXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsK
K30KK2Jvb2wgb3BlcmF0b3I9PShzaG9ydDIgYSwgc2hvcnQyIGIpIHsKKyAgICByZXR1cm4gYS54
ID09IGIueCAmJiBhLnkgPT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KHNob3J0MyBhLCBzaG9y
dDMgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIu
ejsKK30KK2Jvb2wgb3BlcmF0b3I9PShzaG9ydDQgYSwgc2hvcnQ0IGIpIHsKKyAgICByZXR1cm4g
YS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30K
K25hdGl2ZSBzaG9ydCBvcGVyYXRvci54KHNob3J0Mik7CituYXRpdmUgc2hvcnQgb3BlcmF0b3Iu
eShzaG9ydDIpOworbmF0aXZlIHNob3J0IG9wZXJhdG9yLngoc2hvcnQzKTsKK25hdGl2ZSBzaG9y
dCBvcGVyYXRvci55KHNob3J0Myk7CituYXRpdmUgc2hvcnQgb3BlcmF0b3IueihzaG9ydDMpOwor
bmF0aXZlIHNob3J0IG9wZXJhdG9yLngoc2hvcnQ0KTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci55
KHNob3J0NCk7CituYXRpdmUgc2hvcnQgb3BlcmF0b3IueihzaG9ydDQpOworbmF0aXZlIHNob3J0
IG9wZXJhdG9yLncoc2hvcnQ0KTsKK25hdGl2ZSBzaG9ydDIgb3BlcmF0b3IueD0oc2hvcnQyLCBz
aG9ydCk7CituYXRpdmUgc2hvcnQyIG9wZXJhdG9yLnk9KHNob3J0Miwgc2hvcnQpOworbmF0aXZl
IHNob3J0MyBvcGVyYXRvci54PShzaG9ydDMsIHNob3J0KTsKK25hdGl2ZSBzaG9ydDMgb3BlcmF0
b3IueT0oc2hvcnQzLCBzaG9ydCk7CituYXRpdmUgc2hvcnQzIG9wZXJhdG9yLno9KHNob3J0Mywg
c2hvcnQpOworbmF0aXZlIHNob3J0NCBvcGVyYXRvci54PShzaG9ydDQsIHNob3J0KTsKK25hdGl2
ZSBzaG9ydDQgb3BlcmF0b3IueT0oc2hvcnQ0LCBzaG9ydCk7CituYXRpdmUgc2hvcnQ0IG9wZXJh
dG9yLno9KHNob3J0NCwgc2hvcnQpOworbmF0aXZlIHNob3J0NCBvcGVyYXRvci53PShzaG9ydDQs
IHNob3J0KTsKK3Nob3J0IG9wZXJhdG9yW10oc2hvcnQyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBz
d2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7
CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3Nob3J0IG9wZXJhdG9yW10oc2hvcnQz
IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoK
KyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJl
dHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3Nob3J0IG9wZXJhdG9y
W10oc2hvcnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAg
IGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAg
ICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2
Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3Nob3J0MiBvcGVyYXRvcltdPShz
aG9ydDIgdiwgdWludCBpbmRleCwgc2hvcnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAg
ICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4g
djsKK30KK3Nob3J0MyBvcGVyYXRvcltdPShzaG9ydDMgdiwgdWludCBpbmRleCwgc2hvcnQgYSkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2
LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAg
IHYueiA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorc2hvcnQ0IG9wZXJhdG9yW109KHNo
b3J0NCB2LCB1aW50IGluZGV4LCBzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1
cm4gdjsKK30KK2Jvb2wgb3BlcmF0b3I9PShpbnQyIGEsIGludDIgYikgeworICAgIHJldHVybiBh
LnggPT0gYi54ICYmIGEueSA9PSBiLnk7Cit9Citib29sIG9wZXJhdG9yPT0oaW50MyBhLCBpbnQz
IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7
Cit9Citib29sIG9wZXJhdG9yPT0oaW50NCBhLCBpbnQ0IGIpIHsKKyAgICByZXR1cm4gYS54ID09
IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2
ZSBpbnQgb3BlcmF0b3IueChpbnQyKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueShpbnQyKTsKK25h
dGl2ZSBpbnQgb3BlcmF0b3IueChpbnQzKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueShpbnQzKTsK
K25hdGl2ZSBpbnQgb3BlcmF0b3IueihpbnQzKTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueChpbnQ0
KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IueShpbnQ0KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3Iueihp
bnQ0KTsKK25hdGl2ZSBpbnQgb3BlcmF0b3IudyhpbnQ0KTsKK25hdGl2ZSBpbnQyIG9wZXJhdG9y
Lng9KGludDIsIGludCk7CituYXRpdmUgaW50MiBvcGVyYXRvci55PShpbnQyLCBpbnQpOworbmF0
aXZlIGludDMgb3BlcmF0b3IueD0oaW50MywgaW50KTsKK25hdGl2ZSBpbnQzIG9wZXJhdG9yLnk9
KGludDMsIGludCk7CituYXRpdmUgaW50MyBvcGVyYXRvci56PShpbnQzLCBpbnQpOworbmF0aXZl
IGludDQgb3BlcmF0b3IueD0oaW50NCwgaW50KTsKK25hdGl2ZSBpbnQ0IG9wZXJhdG9yLnk9KGlu
dDQsIGludCk7CituYXRpdmUgaW50NCBvcGVyYXRvci56PShpbnQ0LCBpbnQpOworbmF0aXZlIGlu
dDQgb3BlcmF0b3Iudz0oaW50NCwgaW50KTsKK2ludCBvcGVyYXRvcltdKGludDIgdiwgdWludCBp
bmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAg
ICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsK
KyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQoraW50IG9wZXJh
dG9yW10oaW50MyB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAg
ICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAg
ICAgICAgICByZXR1cm4gdi55OworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICByZXR1cm4g
di56OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitpbnQg
b3BlcmF0b3JbXShpbnQ0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7Cisg
ICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJl
dHVybiB2Lno7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2ludDIgb3BlcmF0b3Jb
XT0oaW50MiB2LCB1aW50IGluZGV4LCBpbnQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAg
ICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4g
djsKK30KK2ludDMgb3BlcmF0b3JbXT0oaW50MyB2LCB1aW50IGluZGV4LCBpbnQgYSkgeworICAg
IHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBh
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRy
YXA7CisgICAgfQorICAgIHJldHVybiB2OworfQoraW50NCBvcGVyYXRvcltdPShpbnQ0IHYsIHVp
bnQgaW5kZXgsIGludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6
CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
MToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jv
b2wgb3BlcmF0b3I9PShoYWxmMiBhLCBoYWxmMiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLngg
JiYgYS55ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShoYWxmMyBhLCBoYWxmMyBiKSB7Cisg
ICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9v
bCBvcGVyYXRvcj09KGhhbGY0IGEsIGhhbGY0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAm
JiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBoYWxm
IG9wZXJhdG9yLngoaGFsZjIpOworbmF0aXZlIGhhbGYgb3BlcmF0b3IueShoYWxmMik7CituYXRp
dmUgaGFsZiBvcGVyYXRvci54KGhhbGYzKTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9yLnkoaGFsZjMp
OworbmF0aXZlIGhhbGYgb3BlcmF0b3IueihoYWxmMyk7CituYXRpdmUgaGFsZiBvcGVyYXRvci54
KGhhbGY0KTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9yLnkoaGFsZjQpOworbmF0aXZlIGhhbGYgb3Bl
cmF0b3IueihoYWxmNCk7CituYXRpdmUgaGFsZiBvcGVyYXRvci53KGhhbGY0KTsKK25hdGl2ZSBo
YWxmMiBvcGVyYXRvci54PShoYWxmMiwgaGFsZik7CituYXRpdmUgaGFsZjIgb3BlcmF0b3IueT0o
aGFsZjIsIGhhbGYpOworbmF0aXZlIGhhbGYzIG9wZXJhdG9yLng9KGhhbGYzLCBoYWxmKTsKK25h
dGl2ZSBoYWxmMyBvcGVyYXRvci55PShoYWxmMywgaGFsZik7CituYXRpdmUgaGFsZjMgb3BlcmF0
b3Iuej0oaGFsZjMsIGhhbGYpOworbmF0aXZlIGhhbGY0IG9wZXJhdG9yLng9KGhhbGY0LCBoYWxm
KTsKK25hdGl2ZSBoYWxmNCBvcGVyYXRvci55PShoYWxmNCwgaGFsZik7CituYXRpdmUgaGFsZjQg
b3BlcmF0b3Iuej0oaGFsZjQsIGhhbGYpOworbmF0aXZlIGhhbGY0IG9wZXJhdG9yLnc9KGhhbGY0
LCBoYWxmKTsKK2hhbGYgb3BlcmF0b3JbXShoYWxmMiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dp
dGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54Owor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitoYWxmIG9wZXJhdG9yW10oaGFsZjMgdiwg
dWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAg
ICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJu
IHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAg
ZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorfQoraGFsZiBvcGVyYXRvcltdKGhh
bGY0IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2Ug
MDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAg
IHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7Cisg
ICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6
CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2hhbGYyIG9wZXJhdG9yW109KGhhbGYyIHYs
IHVpbnQgaW5kZXgsIGhhbGYgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2Fz
ZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2hh
bGYzIG9wZXJhdG9yW109KGhhbGYzIHYsIHVpbnQgaW5kZXgsIGhhbGYgYSkgeworICAgIHN3aXRj
aCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7Cisg
ICAgfQorICAgIHJldHVybiB2OworfQoraGFsZjQgb3BlcmF0b3JbXT0oaGFsZjQgdiwgdWludCBp
bmRleCwgaGFsZiBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAy
OgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNl
IDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Jvb2wg
b3BlcmF0b3I9PShmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAm
JiBhLnkgPT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0MyBhLCBmbG9hdDMgYikgewor
ICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jv
b2wgb3BlcmF0b3I9PShmbG9hdDQgYSwgZmxvYXQ0IGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIu
eCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLnogJiYgYS53ID09IGIudzsKK30KK25hdGl2ZSBm
bG9hdCBvcGVyYXRvci54KGZsb2F0Mik7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueShmbG9hdDIp
OworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLngoZmxvYXQzKTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRv
ci55KGZsb2F0Myk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueihmbG9hdDMpOworbmF0aXZlIGZs
b2F0IG9wZXJhdG9yLngoZmxvYXQ0KTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvci55KGZsb2F0NCk7
CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueihmbG9hdDQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9y
LncoZmxvYXQ0KTsKK25hdGl2ZSBmbG9hdDIgb3BlcmF0b3IueD0oZmxvYXQyLCBmbG9hdCk7Citu
YXRpdmUgZmxvYXQyIG9wZXJhdG9yLnk9KGZsb2F0MiwgZmxvYXQpOworbmF0aXZlIGZsb2F0MyBv
cGVyYXRvci54PShmbG9hdDMsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDMgb3BlcmF0b3IueT0oZmxv
YXQzLCBmbG9hdCk7CituYXRpdmUgZmxvYXQzIG9wZXJhdG9yLno9KGZsb2F0MywgZmxvYXQpOwor
bmF0aXZlIGZsb2F0NCBvcGVyYXRvci54PShmbG9hdDQsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDQg
b3BlcmF0b3IueT0oZmxvYXQ0LCBmbG9hdCk7CituYXRpdmUgZmxvYXQ0IG9wZXJhdG9yLno9KGZs
b2F0NCwgZmxvYXQpOworbmF0aXZlIGZsb2F0NCBvcGVyYXRvci53PShmbG9hdDQsIGZsb2F0KTsK
K2Zsb2F0IG9wZXJhdG9yW10oZmxvYXQyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGlu
ZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAg
IGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KK30KK2Zsb2F0IG9wZXJhdG9yW10oZmxvYXQzIHYsIHVpbnQg
aW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAg
ICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7
CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2Zsb2F0IG9wZXJhdG9yW10oZmxvYXQ0
IHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoK
KyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJl
dHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAg
ICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHJldHVybiB2Lnc7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2Zsb2F0MiBvcGVyYXRvcltdPShmbG9hdDIgdiwg
dWludCBpbmRleCwgZmxvYXQgYSkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2Fz
ZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30KK2Zs
b2F0MyBvcGVyYXRvcltdPShmbG9hdDMgdiwgdWludCBpbmRleCwgZmxvYXQgYSkgeworICAgIHN3
aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgdi54ID0gYTsKKyAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB2LnkgPSBhOwor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHYueiA9IGE7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7
CisgICAgfQorICAgIHJldHVybiB2OworfQorZmxvYXQ0IG9wZXJhdG9yW109KGZsb2F0NCB2LCB1
aW50IGluZGV4LCBmbG9hdCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNl
IDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNh
c2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
Y2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlIDM6CisgICAgICAgICAgICB2LncgPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KKyAgICByZXR1cm4gdjsKK30K
KworbmF0aXZlIGhhbGYyIG9wZXJhdG9yW10oaGFsZjJ4MiwgdWludCk7CituYXRpdmUgaGFsZjJ4
MiBvcGVyYXRvcltdPShoYWxmMngyLCB1aW50LCBoYWxmMik7CituYXRpdmUgaGFsZjMgb3BlcmF0
b3JbXShoYWxmMngzLCB1aW50KTsKK25hdGl2ZSBoYWxmMngzIG9wZXJhdG9yW109KGhhbGYyeDMs
IHVpbnQsIGhhbGYzKTsKK25hdGl2ZSBoYWxmNCBvcGVyYXRvcltdKGhhbGYyeDQsIHVpbnQpOwor
bmF0aXZlIGhhbGYyeDQgb3BlcmF0b3JbXT0oaGFsZjJ4NCwgdWludCwgaGFsZjQpOworbmF0aXZl
IGhhbGYyIG9wZXJhdG9yW10oaGFsZjN4MiwgdWludCk7CituYXRpdmUgaGFsZjN4MiBvcGVyYXRv
cltdPShoYWxmM3gyLCB1aW50LCBoYWxmMik7CituYXRpdmUgaGFsZjMgb3BlcmF0b3JbXShoYWxm
M3gzLCB1aW50KTsKK25hdGl2ZSBoYWxmM3gzIG9wZXJhdG9yW109KGhhbGYzeDMsIHVpbnQsIGhh
bGYzKTsKK25hdGl2ZSBoYWxmNCBvcGVyYXRvcltdKGhhbGYzeDQsIHVpbnQpOworbmF0aXZlIGhh
bGYzeDQgb3BlcmF0b3JbXT0oaGFsZjN4NCwgdWludCwgaGFsZjQpOworbmF0aXZlIGhhbGYyIG9w
ZXJhdG9yW10oaGFsZjR4MiwgdWludCk7CituYXRpdmUgaGFsZjR4MiBvcGVyYXRvcltdPShoYWxm
NHgyLCB1aW50LCBoYWxmMik7CituYXRpdmUgaGFsZjMgb3BlcmF0b3JbXShoYWxmNHgzLCB1aW50
KTsKK25hdGl2ZSBoYWxmNHgzIG9wZXJhdG9yW109KGhhbGY0eDMsIHVpbnQsIGhhbGYzKTsKK25h
dGl2ZSBoYWxmNCBvcGVyYXRvcltdKGhhbGY0eDQsIHVpbnQpOworbmF0aXZlIGhhbGY0eDQgb3Bl
cmF0b3JbXT0oaGFsZjR4NCwgdWludCwgaGFsZjQpOworbmF0aXZlIGZsb2F0MiBvcGVyYXRvcltd
KGZsb2F0MngyLCB1aW50KTsKK25hdGl2ZSBmbG9hdDJ4MiBvcGVyYXRvcltdPShmbG9hdDJ4Miwg
dWludCwgZmxvYXQyKTsKK25hdGl2ZSBmbG9hdDMgb3BlcmF0b3JbXShmbG9hdDJ4MywgdWludCk7
CituYXRpdmUgZmxvYXQyeDMgb3BlcmF0b3JbXT0oZmxvYXQyeDMsIHVpbnQsIGZsb2F0Myk7Citu
YXRpdmUgZmxvYXQ0IG9wZXJhdG9yW10oZmxvYXQyeDQsIHVpbnQpOworbmF0aXZlIGZsb2F0Mng0
IG9wZXJhdG9yW109KGZsb2F0Mng0LCB1aW50LCBmbG9hdDQpOworbmF0aXZlIGZsb2F0MiBvcGVy
YXRvcltdKGZsb2F0M3gyLCB1aW50KTsKK25hdGl2ZSBmbG9hdDN4MiBvcGVyYXRvcltdPShmbG9h
dDN4MiwgdWludCwgZmxvYXQyKTsKK25hdGl2ZSBmbG9hdDMgb3BlcmF0b3JbXShmbG9hdDN4Mywg
dWludCk7CituYXRpdmUgZmxvYXQzeDMgb3BlcmF0b3JbXT0oZmxvYXQzeDMsIHVpbnQsIGZsb2F0
Myk7CituYXRpdmUgZmxvYXQ0IG9wZXJhdG9yW10oZmxvYXQzeDQsIHVpbnQpOworbmF0aXZlIGZs
b2F0M3g0IG9wZXJhdG9yW109KGZsb2F0M3g0LCB1aW50LCBmbG9hdDQpOworbmF0aXZlIGZsb2F0
MiBvcGVyYXRvcltdKGZsb2F0NHgyLCB1aW50KTsKK25hdGl2ZSBmbG9hdDR4MiBvcGVyYXRvcltd
PShmbG9hdDR4MiwgdWludCwgZmxvYXQyKTsKK25hdGl2ZSBmbG9hdDMgb3BlcmF0b3JbXShmbG9h
dDR4MywgdWludCk7CituYXRpdmUgZmxvYXQ0eDMgb3BlcmF0b3JbXT0oZmxvYXQ0eDMsIHVpbnQs
IGZsb2F0Myk7CituYXRpdmUgZmxvYXQ0IG9wZXJhdG9yW10oZmxvYXQ0eDQsIHVpbnQpOworbmF0
aXZlIGZsb2F0NHg0IG9wZXJhdG9yW109KGZsb2F0NHg0LCB1aW50LCBmbG9hdDQpOworCitoYWxm
MngyIG9wZXJhdG9yKyhoYWxmMngyIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitgOworCisvLyBGSVhNRTogT25jZSB0aGUgc3RhbmRhcmQgbGlicmFyeSBoYXMg
YmVlbiByZXBsYWNlZCB3aXRoIGEgbmV3IHZlcnNpb24sIHRoaXMgY29tbWVudHMgc2hvdWxkIGJl
IHJlbW92ZWQuCisvLyBUaGlzIGxpc3QgaXMgdXNlZCB0byByZXN0cmljdCB0aGUgYXZhaWxhYmls
aXR5IG9mIHZlY3RvciB0eXBlcyBhdmFpbGFibGUgaW4gdGhlIGxhbmdhdWdlLgorLy8gUGVybWlz
c2libGUgdmVjdG9yIGVsZW1lbnQgdHlwZXMgbXVzdCBhcHBlYXIgaW4gdGhpcyBsaXN0IGFuZCBp
biB0aGUgc3RhbmRhcmQgbGlicmFyeQorY29uc3QgVmVjdG9yRWxlbWVudFR5cGVzID0gWyAiYm9v
bCIsICJ1Y2hhciIsICJjaGFyIiwgInVzaG9ydCIsICJzaG9ydCIsICJ1aW50IiwgImludCIsICJo
YWxmIiwgImZsb2F0IiBdOworY29uc3QgVmVjdG9yRWxlbWVudFNpemVzID0gWyAyLCAzLCA0IF07
CisKK2Z1bmN0aW9uIGFsbFZlY3RvclR5cGVOYW1lcygpCit7CisgICAgY29uc3QgbmFtZXMgPSBb
XTsKKyAgICBmb3IgKGxldCBlbGVtZW50VHlwZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMpIHsKKyAg
ICAgICAgZm9yIChsZXQgc2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpCisgICAgICAgICAgICBu
YW1lcy5wdXNoKGAke2VsZW1lbnRUeXBlfSR7c2l6ZX1gKTsKKyAgICB9CisgICAgcmV0dXJuIG5h
bWVzOworfQogCiAvLyBGSVhNRTogVGhlc2UgbmVlZCB0byBiZSBpbmNsdWRlZCBhcyBzb3VyY2Ug
aW4gdGhlIHN0YW5kYXJkIGxpYnJhcnkuCiBzdGFuZGFyZExpYnJhcnkgKz0gU3dpenpsZU9wLmZ1
bmN0aW9ucygpLmpvaW4oIjtcbiIpICsgIjtcbiI7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9TdGF0ZW1lbnRDbG9uZXIuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9TdGF0ZW1lbnRDbG9uZXIuanMKaW5kZXggYjM5NDhjNDUwYzcxNjA5Nzc5NzVl
ZDRlOGU5OGVkOTljNGY3YTA1OS4uMGQwNzE1YTk4NTRkZWYxYmZkMmE4MDhjNzQwNDExMmJhMWE0
YTBjMSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhdGVtZW50
Q2xvbmVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YXRlbWVudENs
b25lci5qcwpAQCAtNTAsNyArNTAsNyBAQCBjbGFzcyBTdGF0ZW1lbnRDbG9uZXIgZXh0ZW5kcyBS
ZXdyaXRlciB7CiAgICAgCiAgICAgdmlzaXROYXRpdmVUeXBlKG5vZGUpCiAgICAgewotICAgICAg
ICByZXR1cm4gbmV3IE5hdGl2ZVR5cGUobm9kZS5vcmlnaW4sIG5vZGUubmFtZSk7CisgICAgICAg
IHJldHVybiBuZXcgTmF0aXZlVHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lLCBub2RlLnR5cGVB
cmd1bWVudHMubWFwKGFyZ3VtZW50ID0+IGFyZ3VtZW50LnZpc2l0KHRoaXMpKSk7CiAgICAgfQog
ICAgIAogICAgIHZpc2l0VHlwZURlZihub2RlKQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rv
ck9wZXJhdG9yLmpzCmluZGV4IGZlZmU5YzAzZDdiMTBiMzExNmIzYjY3ZjJhZjA1N2YxNmZjMTUx
NmMuLmRjNTA2NTM4ZDFjNmM3MTA5YjFhZDFlY2JhM2NlYzI3OGQwZjdiNWMgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0
b3JPcGVyYXRvci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVz
aXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanMKQEAgLTQ1LDYgKzQ1LDE4IEBAIGZ1bmN0
aW9uIHN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcihwcm9ncmFtKQogICAgICAg
ICAgICAgdHlwZXMuYWRkKG5vZGUpOwogICAgICAgICAgICAgc3VwZXIudmlzaXRFbGVtZW50YWxU
eXBlKG5vZGUpOwogICAgICAgICB9CisKKyAgICAgICAgdmlzaXRWZWN0b3JUeXBlKG5vZGUpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIHR5cGVzLmFkZChub2RlKTsKKyAgICAgICAgICAgIHN1cGVy
LnZpc2l0VmVjdG9yVHlwZShub2RlKTsKKyAgICAgICAgfQorCisgICAgICAgIHZpc2l0TWF0cml4
VHlwZShub2RlKQorICAgICAgICB7CisgICAgICAgICAgICB0eXBlcy5hZGQobm9kZSk7CisgICAg
ICAgICAgICBzdXBlci52aXNpdE1hdHJpeFR5cGUobm9kZSk7CisgICAgICAgIH0KICAgICB9CiAK
ICAgICBwcm9ncmFtLnZpc2l0KG5ldyBGaW5kQWxsVHlwZXMoKSk7CmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpzIGIvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcwpkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjk1ZmUxMzc1M2QwYTI2NDNiMDk1YjUzNGIxMTky
MTdmNjI1MzhiMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JCb29sLmpz
CisrKyAvZGV2L251bGwKQEAgLTEsMzcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
OCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
Ci0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0g
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLiAKLSAqLwotInVzZSBzdHJpY3QiOwotCi1mdW5jdGlvbiBzeW50aGVzaXpl
T3BlcmF0b3JCb29sKHByb2dyYW0pCi17Ci0gICAgZm9yIChsZXQgdHlwZSBvZiBwcm9ncmFtLnR5
cGVzLnZhbHVlcygpKSB7Ci0gICAgICAgIGlmICghKHR5cGUgaW5zdGFuY2VvZiBTdHJ1Y3RUeXBl
KSAmJiAhKHR5cGUgaW5zdGFuY2VvZiBFbnVtVHlwZSkpCi0gICAgICAgICAgICBjb250aW51ZTsK
LSAgICAgICAgY29uc3QgZnVuYyA9IG5ldyBOYXRpdmVGdW5jKHR5cGUub3JpZ2luLCAib3BlcmF0
b3IgY2FzdCIsIFR5cGVSZWYud3JhcChwcm9ncmFtLnR5cGVzLmdldCgiYm9vbCIpKSwgWyBuZXcg
RnVuY1BhcmFtZXRlcih0eXBlLm9yaWdpbiwgbnVsbCwgVHlwZVJlZi53cmFwKHR5cGUpKSBdLCB0
cnVlLCBudWxsKTsKLSAgICAgICAgY29uc3Qgb3BlcmF0b3JCb29sID0gbmV3IE9wZXJhdG9yQm9v
bCh0eXBlLm5hbWUpOwotICAgICAgICBvcGVyYXRvckJvb2wuaW5zdGFudGlhdGVJbXBsZW1lbnRh
dGlvbihmdW5jKTsKLSAgICAgICAgcHJvZ3JhbS5hZGQoZnVuYyk7Ci0gICAgfQotfQpkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vz
c29ycy5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVTdHJ1Y3RB
Y2Nlc3NvcnMuanMKaW5kZXggYmZlNjA0NDk0ZGM3MjVhZTdlNzRhZDRhMGJmZTIzZTkzYzA5MTc3
Ni4uYTAxODE0NjhhMjVlZDRjMDkwNTBkN2JmMWQ2MWY0NGVkM2EwYWE2NiAxMDA2NDQKLS0tIGEv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5q
cworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplU3RydWN0QWNj
ZXNzb3JzLmpzCkBAIC01MSw3ICs1MSw3IEBAIGZ1bmN0aW9uIHN5bnRoZXNpemVTdHJ1Y3RBY2Nl
c3NvcnMocHJvZ3JhbSkKICAgICAgICAgICAgIAogICAgICAgICAgICAgZnVuY3Rpb24gY3JlYXRl
VHlwZVJlZigpCiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIFR5cGVSZWYu
aW5zdGFudGlhdGUodHlwZSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIFR5cGVSZWYud3JhcCh0
eXBlKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIAogICAgICAgICAgICAgbGV0IGlzQ2Fz
dCA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVz
dC5odG1sIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5odG1sCmluZGV4IDEz
ZjM1ODIzOTkyOWQ4YTNlNmFjZTUyNTQ1YjkxY2E1MmQ2MDYwZTQuLmUzYzQ1NzljYjcwNzdhMzBk
YzRmNDc2ODY5OTc3ZjAwZTM1ODZjYmMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1Rlc3QuaHRtbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9U
ZXN0Lmh0bWwKQEAgLTIzLDEyICsyMywxMSBAQAogPHNjcmlwdCBzcmM9IkJsb2NrLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJCb29sTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iQnJlYWsuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IkJ1aWx0aW5NYXRyaXhHZXR0ZXIu
anMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IkJ1aWx0aW5NYXRyaXhTZXR0ZXIuanMiPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuanMiPjwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9IkJ1aWx0aW5WZWN0b3JTZXR0ZXIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IkJ1
aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iQnVpbHRp
blZlY3RvckluZGV4U2V0dGVyLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJCdWlsdGluVmVj
dG9yRXF1YWxpdHlPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2FsbEV4cHJl
c3Npb24uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkNhbGxGdW5jdGlvbi5qcyI+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2suanMiPjwvc2NyaXB0PgpAQCAtMzcsNiArMzYsNyBAQAog
PHNjcmlwdCBzcmM9IkNoZWNrUmVjdXJzaW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJD
aGVja1JlY3Vyc2l2ZVR5cGVzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja1JldHVy
bnMuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9IkNoZWNrVHlwZXNXaXRoQXJndW1lbnRzLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja1VucmVhY2hhYmxlQ29kZS5qcyI+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tXcmFwcGVkLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJDaGVja2VyLmpzIj48L3NjcmlwdD4KQEAgLTg5LDYgKzg5LDcgQEAKIDxzY3JpcHQgc3JjPSJM
b29wQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTWFrZUFycmF5UmVmRXhwcmVz
c2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTWFrZVB0ckV4cHJlc3Npb24uanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9Ik1hdHJpeFR5cGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBz
cmM9Ik5hbWVDb250ZXh0LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOYW1lRmluZGVyLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOYW1lUmVzb2x2ZXIuanMiPjwvc2NyaXB0PgpAQCAt
OTYsOSArOTcsOCBAQAogPHNjcmlwdCBzcmM9Ik5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMi
Pjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik51bGxMaXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJOdWxsVHlwZS5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRl
ckluZGV4LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJPcGVyYXRvckFuZGVySW5kZXhlci5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iT3BlcmF0b3JBcnJheVJlZkxlbmd0aC5qcyI+PC9z
Y3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3BlcmF0b3JCb29sLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQg
c3JjPSJPcmlnaW5LaW5kLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJPdmVybG9hZFJlc29s
dXRpb25GYWlsdXJlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJQYXJzZS5qcyI+PC9zY3Jp
cHQ+CkBAIC0xMTAsNyArMTEwLDYgQEAKIDxzY3JpcHQgc3JjPSJSZWFkTW9kaWZ5V3JpdGVFeHBy
ZXNzaW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZWN1cnNpb25DaGVja2VyLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZWN1cnNpdmVUeXBlQ2hlY2tlci5qcyI+PC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0iUmVtb3ZlVHlwZUFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iUmVzb2x2ZU5hbWVzLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZXNvbHZlT3Zl
cmxvYWRJbXBsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZXNvbHZlUHJvcGVydGllcy5q
cyI+PC9zY3JpcHQ+CkBAIC0xMjcsMTMgKzEyNiwxMyBAQAogPHNjcmlwdCBzcmM9IlN5bnRoZXNp
emVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVz
aXplRW51bUZ1bmN0aW9ucy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZVN0
cnVjdEFjY2Vzc29ycy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iU3ludGhlc2l6ZU9wZXJh
dG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUNvcHlDb25zdHJ1
Y3Rvck9wZXJhdG9yLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplRGVmYXVs
dENvbnN0cnVjdG9yT3BlcmF0b3IuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlRyYXBTdGF0
ZW1lbnQuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVEZWYuanMiPjwvc2NyaXB0Pgog
PHNjcmlwdCBzcmM9IlR5cGVEZWZSZXNvbHZlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
VHlwZVJlZi5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iVHlwZU92ZXJsb2FkUmVzb2x1dGlv
bkZhaWx1cmUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVkVmFsdWUuanMiPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9IlVpbnRMaXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJVaW50TGl0ZXJhbFR5cGUuanMiPjwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Rlc3QuanMKaW5kZXggZGY0MTdkYWJmNmQ4NzEzNWU3MzVjYThjOWIxYmYxM2FiNjQwNzVhMS4u
YjM1OThkZDdmYTE4OGU4ZWQ0YjA0ZWEwZjRlZDg0NmU2NzYyODZhMCAxMDA2NDQKLS0tIGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCkBAIC0yMTUzLDQxICsyMTUzLDYgQEAgdGVzdHMub3BlcmF0
b3JCb29sID0gZnVuY3Rpb24oKQogCiAgICAgICAgIGJvb2wgYm9vbEZyb21GbG9hdEZhbHNlKCkg
eyByZXR1cm4gYm9vbChmbG9hdCgwKSk7IH0KICAgICAgICAgYm9vbCBib29sRnJvbUZsb2F0VHJ1
ZSgpIHsgcmV0dXJuIGJvb2woZmxvYXQoMSkpOyB9Ci0KLSAgICAgICAgYm9vbCBib29sRnJvbUlu
dDJGYWxzZSgpIHsgcmV0dXJuIGJvb2woaW50MigwLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29s
RnJvbUludDJUcnVlMSgpIHsgcmV0dXJuIGJvb2woaW50MigxLCAwKSk7IH0KLSAgICAgICAgYm9v
bCBib29sRnJvbUludDJUcnVlMigpIHsgcmV0dXJuIGJvb2woaW50MigwLCAxKSk7IH0KLQotICAg
ICAgICBib29sIGJvb2xGcm9tRmxvYXQzRmFsc2UoKSB7IHJldHVybiBib29sKGZsb2F0MygwLCAw
LCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUZsb2F0M1RydWUxKCkgeyByZXR1cm4gYm9v
bChmbG9hdDMoMSwgMCwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21GbG9hdDNUcnVlMigp
IHsgcmV0dXJuIGJvb2woZmxvYXQzKDAsIDEsIDApKTsgfQotICAgICAgICBib29sIGJvb2xGcm9t
RmxvYXQzVHJ1ZTMoKSB7IHJldHVybiBib29sKGZsb2F0MygwLCAwLCAxKSk7IH0KLQotICAgICAg
ICBib29sIGJvb2xGcm9tVWludDRGYWxzZSgpIHsgcmV0dXJuIGJvb2wodWludDQoMCwgMCwgMCwg
MCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21VaW50NFRydWUxKCkgeyByZXR1cm4gYm9vbCh1
aW50NCgxLCAwLCAwLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbVVpbnQ0VHJ1ZTIoKSB7
IHJldHVybiBib29sKHVpbnQ0KDAsIDEsIDAsIDApKTsgfQotICAgICAgICBib29sIGJvb2xGcm9t
VWludDRUcnVlMygpIHsgcmV0dXJuIGJvb2wodWludDQoMCwgMCwgMSwgMCkpOyB9Ci0gICAgICAg
IGJvb2wgYm9vbEZyb21VaW50NFRydWU0KCkgeyByZXR1cm4gYm9vbCh1aW50NCgwLCAwLCAwLCAx
KSk7IH0KLQotICAgICAgICBzdHJ1Y3QgWCB7IGludCB4OyB9Ci0KLSAgICAgICAgYm9vbCBib29s
RnJvbVN0cnVjdEZhbHNlKCkKLSAgICAgICAgewotICAgICAgICAgICAgWCB4OwotICAgICAgICAg
ICAgcmV0dXJuIGJvb2woeCk7Ci0gICAgICAgIH0KLQotICAgICAgICBib29sIGJvb2xGcm9tU3Ry
dWN0VHJ1ZSgpCi0gICAgICAgIHsKLSAgICAgICAgICAgIFggeDsKLSAgICAgICAgICAgIHgueCA9
IDE7Ci0gICAgICAgICAgICByZXR1cm4gYm9vbCh4KTsKLSAgICAgICAgfQotCi0gICAgICAgIGVu
dW0gWSB7IEEsIEIgfQotCi0gICAgICAgIGJvb2wgYm9vbEZyb21FbnVtRmFsc2UoKSB7IHJldHVy
biBib29sKFkuQSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUVudW1UcnVlKCkgeyByZXR1cm4g
Ym9vbChZLkIpOyB9CiAgICAgYCk7CiAKICAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0
aW9uKHByb2dyYW0sICJib29sRnJvbVVjaGFyRmFsc2UiLCBbXSksIGZhbHNlKTsKQEAgLTIyMDEs
MjcgKzIxNjYsNiBAQCB0ZXN0cy5vcGVyYXRvckJvb2wgPSBmdW5jdGlvbigpCiAKICAgICBjaGVj
a0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUZsb2F0RmFsc2Ui
LCBbXSksIGZhbHNlKTsKICAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dy
YW0sICJib29sRnJvbUZsb2F0VHJ1ZSIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBjaGVja0Jvb2wocHJv
Z3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUludDJGYWxzZSIsIFtdKSwgZmFs
c2UpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xG
cm9tSW50MlRydWUxIiwgW10pLCB0cnVlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1
bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUludDJUcnVlMiIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBj
aGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUZsb2F0M0Zh
bHNlIiwgW10pLCBmYWxzZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihw
cm9ncmFtLCAiYm9vbEZyb21GbG9hdDNUcnVlMSIsIFtdKSwgdHJ1ZSk7Ci0gICAgY2hlY2tCb29s
KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdDNUcnVlMiIsIFtd
KSwgdHJ1ZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAi
Ym9vbEZyb21GbG9hdDNUcnVlMyIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBjaGVja0Jvb2wocHJvZ3Jh
bSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbVVpbnQ0RmFsc2UiLCBbXSksIGZhbHNl
KTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJv
bVVpbnQ0VHJ1ZTEiLCBbXSksIHRydWUpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVu
Y3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tVWludDRUcnVlMiIsIFtdKSwgdHJ1ZSk7Ci0gICAgY2hl
Y2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21VaW50NFRydWUz
IiwgW10pLCB0cnVlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dy
YW0sICJib29sRnJvbVVpbnQ0VHJ1ZTQiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHBy
b2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21TdHJ1Y3RGYWxzZSIsIFtdKSwg
ZmFsc2UpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJv
b2xGcm9tU3RydWN0VHJ1ZSIsIFtdKSwgdHJ1ZSk7Ci0KLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwg
Y2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUVudW1GYWxzZSIsIFtdKSwgZmFsc2UpOwot
ICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tRW51
bVRydWUiLCBbXSksIHRydWUpOwogfQogCiB0ZXN0cy5ib29sQml0QW5kID0gZnVuY3Rpb24oKQpA
QCAtMjg4MSw3ICsyODI1LDcgQEAgdGVzdHMuc2hhZGVyVHlwZXMgPSBmdW5jdGlvbigpCiAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICBmcmFnbWVudCBCb28gYmFyKEZvbyBzdGFnZUluKQogICAg
ICAgICAgICAgewotICAgICAgICAgICAgICAgIHJldHVybiBib28oKTsKKyAgICAgICAgICAgICAg
ICByZXR1cm4gQm9vKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgIGApLAogICAgICAgICAoZSkg
PT4gZSBpbnN0YW5jZW9mIFdUeXBlRXJyb3IpOwpAQCAtMjkwNCw3ICsyODQ4LDcgQEAgdGVzdHMu
c2hhZGVyVHlwZXMgPSBmdW5jdGlvbigpCiAKIHRlc3RzLnZlY3RvclR5cGVTeW50YXggPSBmdW5j
dGlvbigpCiB7Ci0gICAgY29uc3QgcHJvZ3JhbSA9IGRvUHJlcChgCisgICAgbGV0IHByb2dyYW0g
PSBkb1ByZXAoYAogICAgICAgICBpbnQgZm9vMigpCiAgICAgICAgIHsKICAgICAgICAgICAgIGlu
dDIgeDsKQEAgLTI5MzksNyArMjg4MywyNiBAQCB0ZXN0cy52ZWN0b3JUeXBlU3ludGF4ID0gZnVu
Y3Rpb24oKQogICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiZm9v
MiIsIFtdKSwgNCk7CiAgICAgY2hlY2tJbnQocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0s
ICJmb28zIiwgW10pLCA1KTsKICAgICBjaGVja0ludChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJv
Z3JhbSwgImZvbzQiLCBbXSksIDYpOworICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rp
b24ocHJvZ3JhbSwgInZlYzJPcGVyYXRvckNhc3QiLCBbXSksIHRydWUpOworCisgICAgcHJvZ3Jh
bSA9IGRvUHJlcChgCisgICAgICAgIHR5cGVkZWYgaSA9IGludDsKKyAgICAgICAgaW50IGZvbzIo
KQorICAgICAgICB7CisgICAgICAgICAgICBpbnQyIHg7CisgICAgICAgICAgICB2ZWN0b3I8aSwg
Mj4geiA9IGludDIoMywgNCk7CisgICAgICAgICAgICB4ID0gejsKKyAgICAgICAgICAgIHJldHVy
biB4Lnk7CisgICAgICAgIH0KKworICAgICAgICBib29sIHZlYzJPcGVyYXRvckNhc3QoKQorICAg
ICAgICB7CisgICAgICAgICAgICBpbnQyIHggPSB2ZWN0b3I8aSwyPigxLCAyKTsKKyAgICAgICAg
ICAgIHZlY3RvcjxpLCAyPiB5ID0gaW50MigxLCAyKTsKKyAgICAgICAgICAgIHJldHVybiB4ID09
IHkgJiYgeC54ID09IDEgJiYgeC55ID09IDIgJiYgeS54ID09IDEgJiYgeS55ID09IDI7CisgICAg
ICAgIH1gKTsKIAorICAgIGNoZWNrSW50KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAi
Zm9vMiIsIFtdKSwgNCk7CiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9n
cmFtLCAidmVjMk9wZXJhdG9yQ2FzdCIsIFtdKSwgdHJ1ZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJl
LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZU92ZXJsb2FkUmVzb2x1dGlv
bkZhaWx1cmUuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZDVjYjNmNzEwZmEwY2UwM2QyOTAyZmEzMmVkOGIwMjc1
ZmI2MjYwOAotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1R5cGVPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzCkBAIC0wLDAgKzEsNDIgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKyJ1c2Ugc3RyaWN0IjsKKwor
Y2xhc3MgVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUgeworICAgIGNvbnN0cnVjdG9yKHR5
cGUsIHJlYXNvbikKKyAgICB7CisgICAgICAgIHRoaXMuX3R5cGUgPSB0eXBlOworICAgICAgICB0
aGlzLl9yZWFzb24gPSByZWFzb247CisgICAgfQorICAgIAorICAgIGdldCB0eXBlKCkgeyByZXR1
cm4gdGhpcy5fdHlwZTsgfQorICAgIGdldCByZWFzb24oKSB7IHJldHVybiB0aGlzLl9yZWFzb247
IH0KKyAgICAKKyAgICB0b1N0cmluZygpCisgICAgeworICAgICAgICByZXR1cm4gdGhpcy50eXBl
LnRvU3RyaW5nKCkgKyAiIGRpZCBub3QgbWF0Y2ggYmVjYXVzZTogIiArIHRoaXMucmVhc29uOwor
ICAgIH0KK30KKwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlw
ZVJlZi5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVSZWYuanMKaW5kZXgg
YjVmM2MwYjNkOTI1MzJlMDVjNjgwMDU0YTE2MWYwNWUwZGRkNjQ2Yi4uYWNkYTcwNmMwY2UzNzk3
ZTQ2YjA5NTE3ZGNiMDgxZWE1OWUzZGY4OSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVHlwZVJlZi5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9UeXBlUmVmLmpzCkBAIC0yNSw3ICsyNSw3IEBACiAidXNlIHN0cmljdCI7CiAKIGNsYXNzIFR5
cGVSZWYgZXh0ZW5kcyBUeXBlIHsKLSAgICBjb25zdHJ1Y3RvcihvcmlnaW4sIG5hbWUsIHR5cGVB
cmd1bWVudHMgPSBudWxsKQorICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3Vt
ZW50cyA9IFtdKQogICAgIHsKICAgICAgICAgc3VwZXIoKTsKICAgICAgICAgdGhpcy5fb3JpZ2lu
ID0gb3JpZ2luOwpAQCAtMzgsMTQgKzM4LDExIEBAIGNsYXNzIFR5cGVSZWYgZXh0ZW5kcyBUeXBl
IHsKICAgICB7CiAgICAgICAgIGlmICh0eXBlIGluc3RhbmNlb2YgVHlwZVJlZikKICAgICAgICAg
ICAgIHJldHVybiB0eXBlOwotICAgICAgICBsZXQgcmVzdWx0ID0gbmV3IFR5cGVSZWYodHlwZS5v
cmlnaW4sIHR5cGUubmFtZSk7Ci0gICAgICAgIHJlc3VsdC50eXBlID0gdHlwZTsKLSAgICAgICAg
cmV0dXJuIHJlc3VsdDsKLSAgICB9Ci0gICAgCi0gICAgc3RhdGljIGluc3RhbnRpYXRlKHR5cGUp
Ci0gICAgewotICAgICAgICBsZXQgcmVzdWx0ID0gbmV3IFR5cGVSZWYodHlwZS5vcmlnaW4sIHR5
cGUubmFtZSk7CisgICAgICAgIGxldCByZXN1bHQ7CisgICAgICAgIGlmICh0eXBlIGluc3RhbmNl
b2YgTmF0aXZlVHlwZSkKKyAgICAgICAgICAgIHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3Jp
Z2luLCB0eXBlLm5hbWUsIHR5cGUudHlwZUFyZ3VtZW50cyk7CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIHJlc3VsdCA9IG5ldyBUeXBlUmVmKHR5cGUub3JnaW4sIHR5cGUubmFtZSk7CiAgICAg
ICAgIHJlc3VsdC50eXBlID0gdHlwZTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CkBA
IC02NCw2ICs2MSwzOSBAQCBjbGFzcyBUeXBlUmVmIGV4dGVuZHMgVHlwZSB7CiAgICAgICAgIHRo
aXMuX3R5cGUgPSBuZXdUeXBlOwogICAgIH0KIAorICAgIHJlc29sdmUocG9zc2libGVPdmVybG9h
ZHMpCisgICAgeworICAgICAgICBpZiAoIXBvc3NpYmxlT3ZlcmxvYWRzKQorICAgICAgICAgICAg
dGhyb3cgbmV3IFdUeXBlRXJyb3IodGhpcy5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiRGlkIG5vdCBm
aW5kIGFueSB0eXBlcyBuYW1lZCAiICsgdGhpcy5uYW1lKTsKKworICAgICAgICBsZXQgZmFpbHVy
ZXMgPSBbXTsKKyAgICAgICAgbGV0IG92ZXJsb2FkID0gcmVzb2x2ZVR5cGVPdmVybG9hZEltcGwo
cG9zc2libGVPdmVybG9hZHMsIHRoaXMudHlwZUFyZ3VtZW50cyk7CisKKyAgICAgICAgaWYgKCFv
dmVybG9hZC50eXBlKSB7CisgICAgICAgICAgICBmYWlsdXJlcy5wdXNoKC4uLm92ZXJsb2FkLmZh
aWx1cmVzKTsKKyAgICAgICAgICAgIGxldCBtZXNzYWdlID0gIkRpZCBub3QgZmluZCB0eXBlIG5h
bWVkICIgKyB0aGlzLm5hbWUgKyAiIGZvciB0eXBlIGFyZ3VtZW50cyAiOworICAgICAgICAgICAg
bWVzc2FnZSArPSAiKCIgKyB0aGlzLnR5cGVBcmd1bWVudHMgKyAiKSI7CisgICAgICAgICAgICBp
ZiAoZmFpbHVyZXMubGVuZ3RoKQorICAgICAgICAgICAgICAgIG1lc3NhZ2UgKz0gIiwgYnV0IGNv
bnNpZGVyZWQ6XG4iICsgZmFpbHVyZXMuam9pbigiXG4iKQorICAgICAgICAgICAgdGhyb3cgbmV3
IFdUeXBlRXJyb3IodGhpcy5vcmlnaW4ub3JpZ2luU3RyaW5nLCBtZXNzYWdlKTsKKyAgICAgICAg
fQorCisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy50eXBlQXJndW1lbnRzLmxlbmd0
aDsgKytpKSB7CisgICAgICAgICAgICBsZXQgdHlwZUFyZ3VtZW50ID0gdGhpcy50eXBlQXJndW1l
bnRzW2ldOworICAgICAgICAgICAgbGV0IHJlc29sdmVkVHlwZUFyZ3VtZW50ID0gb3ZlcmxvYWQu
dHlwZS50eXBlQXJndW1lbnRzW2ldOworICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHR5cGVBcmd1
bWVudC5lcXVhbHNXaXRoQ29tbWl0KHJlc29sdmVkVHlwZUFyZ3VtZW50KTsKKyAgICAgICAgICAg
IGlmICghcmVzdWx0KQorICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQXQgIiArIHRo
aXMub3JpZ2luLm9yaWdpblN0cmluZyArICIgYXJndW1lbnQgdHlwZXMgZm9yIFR5cGUgYW5kIFR5
cGVSZWYgbm90IGVxdWFsOiBhcmd1bWVudCB0eXBlID0gIiArIHR5cGVBcmd1bWVudCArICIsIHJl
c29sdmVkIHR5cGUgYXJndW1lbnQgPSAiICsgcmVzb2x2ZWRUeXBlQXJndW1lbnQpOworICAgICAg
ICAgICAgaWYgKHJlc29sdmVkVHlwZUFyZ3VtZW50LmNvbnN0cnVjdG9yLm5hbWUgPT0gIkdlbmVy
aWNMaXRlcmFsIikgeworICAgICAgICAgICAgICAgIHJlc3VsdCA9IHR5cGVBcmd1bWVudC50eXBl
LmVxdWFsc1dpdGhDb21taXQocmVzb2x2ZWRUeXBlQXJndW1lbnQudHlwZSk7CisgICAgICAgICAg
ICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigi
QXQgIiArIHRoaXMub3JpZ2luLm9yaWdpblN0cmluZyArICIgYXJndW1lbnQgdHlwZXMgZm9yIFR5
cGUgYW5kIFR5cGVSZWYgbm90IGVxdWFsOiBhcmd1bWVudCB0eXBlID0gIiArIHR5cGVBcmd1bWVu
dCArICIsIHJlc29sdmVkIHR5cGUgYXJndW1lbnQgPSAiICsgcmVzb2x2ZWRUeXBlQXJndW1lbnQp
OworICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIAorICAgICAgICB9CisgICAgICAgIHRo
aXMudHlwZSA9IG92ZXJsb2FkLnR5cGU7CisgICAgfQorCiAgICAgZ2V0IHVuaWZ5Tm9kZSgpCiAg
ICAgewogICAgICAgICBpZiAoIXRoaXMudHlwZSkKQEAgLTk5LDcgKzEyOSwxMCBAQCBjbGFzcyBU
eXBlUmVmIGV4dGVuZHMgVHlwZSB7CiAgICAgewogICAgICAgICBpZiAoIXRoaXMubmFtZSkKICAg
ICAgICAgICAgIHJldHVybiB0aGlzLnR5cGUudG9TdHJpbmcoKTsKLSAgICAgICAgcmV0dXJuIHRo
aXMubmFtZTsKKyAgICAgICAgbGV0IHJlc3VsdCA9IHRoaXMubmFtZTsKKyAgICAgICAgaWYgKHRo
aXMudHlwZUFyZ3VtZW50cy5sZW5ndGggPiAwKQorICAgICAgICAgICAgcmVzdWx0ICs9ICI8IiAr
IHRoaXMudHlwZUFyZ3VtZW50cy5tYXAoYXJndW1lbnQgPT4gYXJndW1lbnQudG9TdHJpbmcoKSku
am9pbigiLCIpICsgIj4iOworICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KIH0KIApkaWZm
IC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmljYXRpb25Db250ZXh0
LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVW5pZmljYXRpb25Db250ZXh0Lmpz
CmluZGV4IDJmNzE1NDdiMGFmYmUxODAzNzhmMzc5OTYyMzE4NjJhMmI5MWE4MmUuLjM4MTkxNjk3
MjIzZWY3MjFhNTM3OTE0YjM2OTg5NzY3ODFmZTZlNmUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL1VuaWZpY2F0aW9uQ29udGV4dC5qcworKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9VbmlmaWNhdGlvbkNvbnRleHQuanMKQEAgLTkyLDYgKzkyLDE5
IEBAIGNsYXNzIFVuaWZpY2F0aW9uQ29udGV4dCB7CiAgICAgCiAgICAgdmVyaWZ5KCkKICAgICB7
CisgICAgICAgIC8vIFdlIGRvIGEgdHdvLXBoYXNlIHByZS12ZXJpZmljYXRpb24uIFRoaXMgZ2l2
ZXMgbGl0ZXJhbHMgYSBjaGFuY2UgdG8gc2VsZWN0IGEgbW9yZSBzcGVjaWZpYyB0eXBlLgorICAg
ICAgICBsZXQgcHJlcGFyYXRpb25zID0gW107CisgICAgICAgIGZvciAobGV0IG5vZGUgb2YgdGhp
cy5ub2RlcykgeworICAgICAgICAgICAgbGV0IHByZXBhcmF0aW9uID0gbm9kZS5wcmVwYXJlVG9W
ZXJpZnkodGhpcyk7CisgICAgICAgICAgICBpZiAocHJlcGFyYXRpb24pCisgICAgICAgICAgICAg
ICAgcHJlcGFyYXRpb25zLnB1c2gocHJlcGFyYXRpb24pOworICAgICAgICB9CisgICAgICAgIGZv
ciAobGV0IHByZXBhcmF0aW9uIG9mIHByZXBhcmF0aW9ucykgeworICAgICAgICAgICAgbGV0IHJl
c3VsdCA9IHByZXBhcmF0aW9uKCk7CisgICAgICAgICAgICBpZiAoIXJlc3VsdC5yZXN1bHQpCisg
ICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgfQorCiAgICAgICAgIGZvciAo
bGV0IHR5cGVBcmd1bWVudCBvZiB0aGlzLnR5cGVBcmd1bWVudHMoKSkgewogICAgICAgICAgICAg
bGV0IHJlc3VsdCA9IHR5cGVBcmd1bWVudC52ZXJpZnlBc0FyZ3VtZW50KHRoaXMpOwogICAgICAg
ICAgICAgaWYgKCFyZXN1bHQucmVzdWx0KQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvVmVjdG9yVHlwZS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1ZlY3RvclR5cGUuanMKaW5kZXggNTAxNGM2NzFhMDc4ODIwMDJjMjM0YmIzMmYxN2M4ODYwZWZm
YzFjNi4uZGYwY2JjMmM3MzA4ZjQ1NDEzY2JjYzI4ZDg5NjIxYmMwM2FiMjYwNCAxMDA2NDQKLS0t
IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmVjdG9yVHlwZS5qcworKysgYi9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9WZWN0b3JUeXBlLmpzCkBAIC0yNSwxOSArMjUsMTQg
QEAKICJ1c2Ugc3RyaWN0IjsKIAogY2xhc3MgVmVjdG9yVHlwZSBleHRlbmRzIE5hdGl2ZVR5cGUg
ewotICAgIGNvbnN0cnVjdG9yKG9yaWdpbiwgbmFtZSkKKyAgICBjb25zdHJ1Y3RvcihvcmlnaW4s
IG5hbWUsIHR5cGVBcmd1bWVudHMpCiAgICAgewotICAgICAgICBzdXBlcihvcmlnaW4sIG5hbWUp
OwotICAgICAgICBjb25zdCBtYXRjaCA9IC9eKFtBLXpdKykoWzAtOV0pJC8uZXhlYyhuYW1lKTsK
LSAgICAgICAgaWYgKCFtYXRjaCkKLSAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKG9y
aWdpbi5vcmlnaW5TdHJpbmcsIGAke25hbWV9IGRvZXNuJ3QgbWF0Y2ggdGhlIGZvcm1hdCBmb3Ig
dmVjdG9yIHR5cGUgbmFtZXMuJ2ApOwotCi0gICAgICAgIHRoaXMuX2VsZW1lbnRUeXBlID0gbmV3
IFR5cGVSZWYob3JpZ2luLCBtYXRjaFsxXSk7Ci0gICAgICAgIHRoaXMuX251bUVsZW1lbnRzVmFs
dWUgPSBwYXJzZUludChtYXRjaFsyXSk7CisgICAgICAgIHN1cGVyKG9yaWdpbiwgbmFtZSwgdHlw
ZUFyZ3VtZW50cyk7CiAgICAgfQogCi0gICAgZ2V0IGVsZW1lbnRUeXBlKCkgeyByZXR1cm4gdGhp
cy5fZWxlbWVudFR5cGU7IH0KLSAgICBnZXQgbnVtRWxlbWVudHNWYWx1ZSgpIHsgcmV0dXJuIHRo
aXMuX251bUVsZW1lbnRzVmFsdWU7IH0KKyAgICBnZXQgZWxlbWVudFR5cGUoKSB7IHJldHVybiB0
aGlzLnR5cGVBcmd1bWVudHNbMF07IH0KKyAgICBnZXQgbnVtRWxlbWVudHMoKSB7IHJldHVybiB0
aGlzLnR5cGVBcmd1bWVudHNbMV07IH0KKyAgICBnZXQgbnVtRWxlbWVudHNWYWx1ZSgpIHsgcmV0
dXJuIHRoaXMubnVtRWxlbWVudHMudmFsdWU7IH0KICAgICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRo
aXMuZWxlbWVudFR5cGUuc2l6ZSAqIHRoaXMubnVtRWxlbWVudHNWYWx1ZTsgfQogCiAgICAgdW5p
ZnlJbXBsKHVuaWZpY2F0aW9uQ29udGV4dCwgb3RoZXIpCkBAIC01OSw3ICs1NCw3IEBAIGNsYXNz
IFZlY3RvclR5cGUgZXh0ZW5kcyBOYXRpdmVUeXBlIHsKIAogICAgIHRvU3RyaW5nKCkKICAgICB7
Ci0gICAgICAgIHJldHVybiBgbmF0aXZlIHR5cGVkZWYgJHt0aGlzLmVsZW1lbnRUeXBlfSR7dGhp
cy5udW1FbGVtZW50c1ZhbHVlfWA7CisgICAgICAgIHJldHVybiBgbmF0aXZlIHR5cGVkZWYgdmVj
dG9yPCR7dGhpcy5lbGVtZW50VHlwZX0sICR7dGhpcy5udW1FbGVtZW50c1ZhbHVlfT5gOwogICAg
IH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmlzaXRv
ci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanMKaW5kZXggN2Qz
ODdiMjVmMjU4OWI4NzM5MThhZjJmNDRjMjQzNGFkNjU4NzQ3Zi4uMmRlMWU3NGRmMjcxOGJiM2Jh
NjhkMDVjMGU3MTAyYmQwNWEwMTY5MyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvVmlzaXRvci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9W
aXNpdG9yLmpzCkBAIC02OCwxMCArNjgsMTQgQEAgY2xhc3MgVmlzaXRvciB7CiAgICAgCiAgICAg
dmlzaXRUeXBlUmVmKG5vZGUpCiAgICAgeworICAgICAgICBmb3IgKGxldCB0eXBlQXJndW1lbnQg
b2Ygbm9kZS50eXBlQXJndW1lbnRzKQorICAgICAgICAgICAgdHlwZUFyZ3VtZW50LnZpc2l0KHRo
aXMpOwogICAgIH0KICAgICAKICAgICB2aXNpdE5hdGl2ZVR5cGUobm9kZSkKICAgICB7CisgICAg
ICAgIGZvciAobGV0IHR5cGVBcmd1bWVudCBvZiBub2RlLnR5cGVBcmd1bWVudHMpCisgICAgICAg
ICAgICB0eXBlQXJndW1lbnQudmlzaXQodGhpcyk7CiAgICAgfQogICAgIAogICAgIHZpc2l0VHlw
ZURlZihub2RlKQpAQCAtMzI3LDYgKzMzMSwxNCBAQCBjbGFzcyBWaXNpdG9yIHsKICAgICB2aXNp
dFZlY3RvclR5cGUobm9kZSkKICAgICB7CiAgICAgICAgIG5vZGUuZWxlbWVudFR5cGUudmlzaXQo
dGhpcyk7CisgICAgICAgIG5vZGUubnVtRWxlbWVudHMudmlzaXQodGhpcyk7CisgICAgfQorCisg
ICAgdmlzaXRNYXRyaXhUeXBlKG5vZGUpCisgICAgeworICAgICAgICBub2RlLmVsZW1lbnRUeXBl
LnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bVJvd3MudmlzaXQodGhpcyk7CisgICAgICAg
IG5vZGUubnVtQ29sdW1ucy52aXNpdCh0aGlzKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL2luZGV4Lmh0bWwgYi9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9pbmRleC5odG1sCmluZGV4IDRjOTNhMzNlNmEzODY2MmU4YmExZTg0MjQw
M2Q0YzAyZDVlOWY5ZGYuLjUzM2M1Zjg5Zjg1MTQ2MzYwZWI4ZjJlOWQzMWUyYjNkZjdiYTQ1N2Eg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL2luZGV4Lmh0bWwKKysr
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRtbApAQCAtMjMsMTIgKzIz
LDExIEBACiA8c2NyaXB0IHNyYz0iQmxvY2suanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkJv
b2xMaXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJCcmVhay5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iQnVpbHRpbk1hdHJpeEdldHRlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iQnVpbHRpbk1hdHJpeFNldHRlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnVp
bHRpblZlY3RvckNvbnN0cnVjdG9ycy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnVpbHRp
blZlY3RvckdldHRlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvclNl
dHRlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4R2V0dGVy
LmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JFcXVhbGl0eU9wZXJhdG9yLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDYWxsRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiA8
c2NyaXB0IHNyYz0iQ2FsbEZ1bmN0aW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVj
ay5qcyI+PC9zY3JpcHQ+CkBAIC0zOCw2ICszNyw3IEBACiA8c2NyaXB0IHNyYz0iQ2hlY2tSZWN1
cnNpdmVUeXBlcy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tSZXR1cm5zLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJDaGVja1VucmVhY2hhYmxlQ29kZS5qcyI+PC9zY3JpcHQ+
Cis8c2NyaXB0IHNyYz0iQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9IkNoZWNrV3JhcHBlZC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2hlY2tl
ci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2xvbmVQcm9ncmFtLmpzIj48L3NjcmlwdD4K
QEAgLTg5LDYgKzg5LDcgQEAKIDxzY3JpcHQgc3JjPSJMb29wQ2hlY2tlci5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iTWFrZUFycmF5UmVmRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0iTWFrZVB0ckV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ik1h
dHJpeFR5cGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik5hbWVDb250ZXh0LmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJOYW1lRmluZGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJOYW1lUmVzb2x2ZXIuanMiPjwvc2NyaXB0PgpAQCAtOTYsOSArOTcsOCBAQAogPHNjcmlwdCBz
cmM9Ik5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9
Ik51bGxMaXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOdWxsVHlwZS5qcyI+PC9z
Y3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRlckluZGV4LmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQgc3JjPSJPcGVyYXRvckFuZGVySW5kZXhlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0iT3BlcmF0b3JBcnJheVJlZkxlbmd0aC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3Bl
cmF0b3JCb29sLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJPcmlnaW5LaW5kLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJQYXJzZS5qcyI+PC9zY3JpcHQ+CkBAIC0xMTAsNyArMTEwLDYgQEAK
IDxzY3JpcHQgc3JjPSJSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KIDxz
Y3JpcHQgc3JjPSJSZWN1cnNpb25DaGVja2VyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJS
ZWN1cnNpdmVUeXBlQ2hlY2tlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iUmVtb3ZlVHlw
ZUFyZ3VtZW50cy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iUmVzb2x2ZU5hbWVzLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJSZXNvbHZlT3ZlcmxvYWRJbXBsLmpzIj48L3NjcmlwdD4K
IDxzY3JpcHQgc3JjPSJSZXNvbHZlUHJvcGVydGllcy5qcyI+PC9zY3JpcHQ+CkBAIC0xMjcsMTMg
KzEyNiwxMyBAQAogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplRW51bUZ1bmN0aW9ucy5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZVN0cnVjdEFjY2Vzc29ycy5qcyI+PC9zY3Jp
cHQ+Ci08c2NyaXB0IHNyYz0iU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiA8
c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUNvcHlDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanMi
Pjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlRyYXBTdGF0ZW1lbnQuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9IlR5cGVEZWYuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlR5cGVEZWZSZXNv
bHZlci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iVHlwZVJlZi5qcyI+PC9zY3JpcHQ+Cis8
c2NyaXB0IHNyYz0iVHlwZU92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1cmUuanMiPjwvc2NyaXB0Pgog
PHNjcmlwdCBzcmM9IlR5cGVkVmFsdWUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlVpbnRM
aXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJVaW50TGl0ZXJhbFR5cGUuanMiPjwv
c2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347963</attachid>
            <date>2018-08-23 15:45:17 -0700</date>
            <delta_ts>2018-08-23 17:35:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188873-20180823154516.patch</filename>
            <type>text/plain</type>
            <size>1688221</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MjQ5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTg0NjAyMGQzOTgyZTI0Zjc3MzdmOGFhYjkxZWY2YzQ4
NDJhZjU1YS4uOTZiNTA4OTE3NTM1MDg2YjkzYTA3MTBkYThiN2M0OTIwZjk1YTBjYiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDk1
IEBACisyMDE4LTA4LTIzICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+
CisKKyAgICAgICAgW1dITFNMXSBBZGQgbW9yZSBmdW5jdGlvbnMgdG8gdGhlIHN0YW5kYXJkIGxp
YnJhcnkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
ODg3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0J1aWx0aW5NYXRyaXhHZXR0ZXIuanM6IENvcGllZCBmcm9tIFRvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JJbmRleFNldHRlci5qcy4KKyAgICAgICAg
KEJ1aWx0aW5NYXRyaXhHZXR0ZXIpOgorICAgICAgICAoQnVpbHRpbk1hdHJpeEdldHRlci5wcm90
b3R5cGUuZ2V0IGhlaWdodCk6CisgICAgICAgIChCdWlsdGluTWF0cml4R2V0dGVyLnByb3RvdHlw
ZS5nZXQgd2lkdGgpOgorICAgICAgICAoQnVpbHRpbk1hdHJpeEdldHRlci5wcm90b3R5cGUudG9T
dHJpbmcpOgorICAgICAgICAoQnVpbHRpbk1hdHJpeEdldHRlci5mdW5jdGlvbnMpOgorICAgICAg
ICAoQnVpbHRpbk1hdHJpeEdldHRlci5wcm90b3R5cGUuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlv
bik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpbk1hdHJpeFNldHRl
ci5qczogUmVuYW1lZCBmcm9tIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5W
ZWN0b3JJbmRleFNldHRlci5qcy4KKyAgICAgICAgKEJ1aWx0aW5NYXRyaXhTZXR0ZXIpOgorICAg
ICAgICAoQnVpbHRpbk1hdHJpeFNldHRlci5wcm90b3R5cGUuZ2V0IGhlaWdodCk6CisgICAgICAg
IChCdWlsdGluTWF0cml4U2V0dGVyLnByb3RvdHlwZS5nZXQgd2lkdGgpOgorICAgICAgICAoQnVp
bHRpbk1hdHJpeFNldHRlci5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAoQnVpbHRpbk1h
dHJpeFNldHRlci5mdW5jdGlvbnMpOgorICAgICAgICAoQnVpbHRpbk1hdHJpeFNldHRlci5wcm90
b3R5cGUuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbik6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qczogUmVtb3ZlZC4KKyAgICAg
ICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVyYXRv
ci5qczogUmVtb3ZlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGlu
VmVjdG9yR2V0dGVyLmpzOgorICAgICAgICAoQnVpbHRpblZlY3RvckdldHRlci5wcm90b3R5cGUu
aW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbik6CisgICAgICAgIChCdWlsdGluVmVjdG9yR2V0dGVy
KToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yU2V0dGVy
LmpzOgorICAgICAgICAoQnVpbHRpblZlY3RvclNldHRlci5mdW5jdGlvbnMpOgorICAgICAgICAo
QnVpbHRpblZlY3RvclNldHRlci5wcm90b3R5cGUuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbik6
CisgICAgICAgIChCdWlsdGluVmVjdG9yU2V0dGVyKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qczoKKyAgICAgICAgKENhbGxFeHByZXNzaW9uLnBy
b3RvdHlwZS5yZXNvbHZlKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DaGVj
a1R5cGVzV2l0aEFyZ3VtZW50cy5qczoKKyAgICAgICAgKGNoZWNrVHlwZXNXaXRoQXJndW1lbnRz
LlR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlci5wcm90b3R5cGUudmlzaXRUeXBlUmVmKToKKyAgICAg
ICAgKGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlcik6Cisg
ICAgICAgIChjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvQ2hlY2tlci5qczoKKyAgICAgICAgKENoZWNrZXIucHJvdG90eXBlLnZpc2l0
VmVjdG9yVHlwZSk6CisgICAgICAgIChDaGVja2VyLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5cGUp
OgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0V2YWx1YXRvci5qczoKKyAgICAg
ICAgKEV2YWx1YXRvci5wcm90b3R5cGUudmlzaXRUZXJuYXJ5RXhwcmVzc2lvbik6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIu
anM6CisgICAgICAgIChGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5wcm90b3R5cGUudmlz
aXRNYXRyaXhUeXBlKToKKyAgICAgICAgKEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyKToK
KyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzOgorICAgICAg
ICAoSW50cmluc2ljcy4pOgorICAgICAgICAoSW50cmluc2ljcyk6CisgICAgICAgICogV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4VHlwZS5qczogUmVuYW1lZCBmcm9tIFRvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcy4KKyAgICAgICAg
KE1hdHJpeFR5cGUpOgorICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUuZ2V0IGVsZW1lbnRU
eXBlKToKKyAgICAgICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBudW1Sb3dzKToKKyAgICAg
ICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBudW1Db2x1bW5zKToKKyAgICAgICAgKE1hdHJp
eFR5cGUucHJvdG90eXBlLmdldCBudW1Sb3dzVmFsdWUpOgorICAgICAgICAoTWF0cml4VHlwZS5w
cm90b3R5cGUuZ2V0IG51bUNvbHVtbnNWYWx1ZSk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3Rv
dHlwZS5nZXQgc2l6ZSk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3RvdHlwZS51bmlmeUltcGwp
OgorICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUpOgor
ICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAqIFdlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL05hbWVDb250ZXh0LmpzOgorICAgICAgICAoTmFtZUNvbnRleHQu
cHJvdG90eXBlLmFkZCk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmF0aXZl
VHlwZS5qczoKKyAgICAgICAgKE5hdGl2ZVR5cGUuY3JlYXRlKToKKyAgICAgICAgKE5hdGl2ZVR5
cGUpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRl
eGVyLmpzOiBSZW5hbWVkIGZyb20gVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvT3BlcmF0
b3JBbmRlckluZGV4LmpzLgorICAgICAgICAoT3BlcmF0b3JBbmRlckluZGV4ZXIpOgorICAgICAg
ICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQm9vbC5qczogUmVtb3ZlZC4KKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QYXJzZS5qczoKKyAgICAgICAgKHBhcnNl
KToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzOgorICAgICAg
ICAobGV0LnByZXBhcmUudGltZUNhbGxiYWNrKToKKyAgICAgICAgKGxldC5wcmVwYXJlKToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzOgorICAgICAgICAoUHJv
Z3JhbS5wcm90b3R5cGUuYWRkKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9S
ZXdyaXRlci5qczoKKyAgICAgICAgKFJld3JpdGVyLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5cGUp
OgorICAgICAgICAoUmV3cml0ZXIpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1NQSVJWLmh0bWw6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhbmRhcmRM
aWJyYXJ5LmpzOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N3aXp6bGVPcC5q
czogUmVtb3ZlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXpl
RGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanM6CisgICAgICAgIChzeW50aGVzaXplRGVmYXVs
dENvbnN0cnVjdG9yT3BlcmF0b3IuRmluZEFsbFR5cGVzLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5
cGUpOgorICAgICAgICAoc3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLkZpbmRB
bGxUeXBlcyk6CisgICAgICAgIChzeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3Ip
OgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVPcGVyYXRvckJv
b2wuanM6IFJlbW92ZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5o
dG1sOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanM6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmlzaXRvci5qczoKKyAgICAgICAgKFZpc2l0b3Iu
cHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChWaXNpdG9yKToKKyAgICAgICAg
KiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9pbmRleC5odG1sOgorCiAyMDE4LTA4LTIzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW1dTTF0gVGVy
bmFyeSBleHByZXNzaW9ucyBhcHBlYXIgdG8gYmUgdW5pbXBsZW1lbnRlZApkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvQWxsLmpzCmluZGV4IDMxNWJlYzJlNjg4NjI3YzNjZDgwYmE0NmZiYTI0MDAx
ZTI4ZjlmNGMuLjljMmEzNzE1MGMxZTk3NmI5MjZjZmJlZTIzNDM3NTIwYThkZTRhNDcgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qcworKysgYi9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9BbGwuanMKQEAgLTM0LDcgKzM0LDYgQEAgbG9hZCgiVmlz
aXRvci5qcyIpOwogbG9hZCgiQ3JlYXRlTGl0ZXJhbC5qcyIpOwogbG9hZCgiQ3JlYXRlTGl0ZXJh
bFR5cGUuanMiKTsKIGxvYWQoIlByb3BlcnR5QWNjZXNzRXhwcmVzc2lvbi5qcyIpOwotbG9hZCgi
U3dpenpsZU9wLmpzIik7CiBsb2FkKCJOYXRpdmVUeXBlLmpzIik7CiAKIGxvYWQoIkFkZHJlc3NT
cGFjZS5qcyIpOwpAQCAtNDYsMTIgKzQ1LDEwIEBAIGxvYWQoIkF1dG9XcmFwcGVyLmpzIik7CiBs
b2FkKCJCbG9jay5qcyIpOwogbG9hZCgiQm9vbExpdGVyYWwuanMiKTsKIGxvYWQoIkJyZWFrLmpz
Iik7Ci1sb2FkKCJCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzIik7Citsb2FkKCJCdWlsdGlu
TWF0cml4R2V0dGVyLmpzIik7Citsb2FkKCJCdWlsdGluTWF0cml4U2V0dGVyLmpzIik7CiBsb2Fk
KCJCdWlsdGluVmVjdG9yR2V0dGVyLmpzIik7CiBsb2FkKCJCdWlsdGluVmVjdG9yU2V0dGVyLmpz
Iik7Ci1sb2FkKCJCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuanMiKTsKLWxvYWQoIkJ1aWx0aW5W
ZWN0b3JJbmRleFNldHRlci5qcyIpOwotbG9hZCgiQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0
b3IuanMiKTsKIGxvYWQoIkNhbGxFeHByZXNzaW9uLmpzIik7CiBsb2FkKCJDYWxsRnVuY3Rpb24u
anMiKTsKIGxvYWQoIkNoZWNrLmpzIik7CkBAIC0xMTMsNiArMTEwLDcgQEAgbG9hZCgiTG9naWNh
bE5vdC5qcyIpOwogbG9hZCgiTG9vcENoZWNrZXIuanMiKTsKIGxvYWQoIk1ha2VBcnJheVJlZkV4
cHJlc3Npb24uanMiKTsKIGxvYWQoIk1ha2VQdHJFeHByZXNzaW9uLmpzIik7Citsb2FkKCJNYXRy
aXhUeXBlLmpzIik7CiBsb2FkKCJOYW1lQ29udGV4dC5qcyIpOwogbG9hZCgiTmFtZUZpbmRlci5q
cyIpOwogbG9hZCgiTmFtZVJlc29sdmVyLmpzIik7CkBAIC0xMjAsOSArMTE4LDggQEAgbG9hZCgi
TmF0aXZlRnVuYy5qcyIpOwogbG9hZCgiTm9ybWFsVXNlUHJvcGVydHlSZXNvbHZlci5qcyIpOwog
bG9hZCgiTnVsbExpdGVyYWwuanMiKTsKIGxvYWQoIk51bGxUeXBlLmpzIik7Ci1sb2FkKCJPcGVy
YXRvckFuZGVySW5kZXguanMiKTsKK2xvYWQoIk9wZXJhdG9yQW5kZXJJbmRleGVyLmpzIik7CiBs
b2FkKCJPcGVyYXRvckFycmF5UmVmTGVuZ3RoLmpzIik7Ci1sb2FkKCJPcGVyYXRvckJvb2wuanMi
KTsKIGxvYWQoIk9yaWdpbktpbmQuanMiKTsKIGxvYWQoIk92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1
cmUuanMiKTsKIGxvYWQoIlBhcnNlLmpzIik7CkBAIC0xNTAsNyArMTQ3LDYgQEAgbG9hZCgiU3dp
dGNoU3RhdGVtZW50LmpzIik7CiBsb2FkKCJTeW50aGVzaXplQXJyYXlPcGVyYXRvckxlbmd0aC5q
cyIpOwogbG9hZCgiU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiKTsKIGxvYWQoIlN5bnRoZXNp
emVTdHJ1Y3RBY2Nlc3NvcnMuanMiKTsKLWxvYWQoIlN5bnRoZXNpemVPcGVyYXRvckJvb2wuanMi
KTsKIGxvYWQoIlN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyIpOwogbG9hZCgi
U3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIik7CiBsb2FkKCJUZXJuYXJ5
RXhwcmVzc2lvbi5qcyIpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvQnVpbHRpbk1hdHJpeEdldHRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L0J1aWx0aW5NYXRyaXhHZXR0ZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODZhMzMzOTQ2Y2JmNGU1ZGI3YTQ4
ZGI4NTg1ODgxN2ZmOGM2N2Q2ZQotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL0J1aWx0aW5NYXRyaXhHZXR0ZXIuanMKQEAgLTAsMCArMSw3MyBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBg
QVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisidXNlIHN0cmljdCI7CisK
K2NsYXNzIEJ1aWx0aW5NYXRyaXhHZXR0ZXIgeworICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFt
ZSwgaGVpZ2h0LCB3aWR0aCkKKyAgICB7CisgICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJh
c2VUeXBlTmFtZTsKKyAgICAgICAgdGhpcy5faGVpZ2h0ID0gaGVpZ2h0OworICAgICAgICB0aGlz
Ll93aWR0aCA9IHdpZHRoOworICAgIH0KKworICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVy
biB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KKyAgICBnZXQgaGVpZ2h0KCkgeyByZXR1cm4gdGhpcy5f
aGVpZ2h0OyB9CisgICAgZ2V0IHdpZHRoKCkgeyByZXR1cm4gdGhpcy5fd2lkdGg7IH0KKworICAg
IHRvU3RyaW5nKCkKKyAgICB7CisgICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlw
ZU5hbWV9JHt0aGlzLndpZHRofSBvcGVyYXRvcltdKCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlz
LmhlaWdodH14JHt0aGlzLndpZHRofSx1aW50KWA7CisgICAgfQorCisgICAgc3RhdGljIGZ1bmN0
aW9ucygpCisgICAgeworICAgICAgICBpZiAoIXRoaXMuX2Z1bmN0aW9ucykgeworICAgICAgICAg
ICAgdGhpcy5fZnVuY3Rpb25zID0gW107CisKKyAgICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1l
IG9mIFsiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICAgICAgZm9yIChsZXQgaGVpZ2h0
IG9mIFsyLCAzLCA0XSkgeworICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCB3aWR0aCBvZiBb
MiwgMywgNF0pCisgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMucHVzaChu
ZXcgQnVpbHRpbk1hdHJpeEdldHRlcih0eXBlTmFtZSwgaGVpZ2h0LCB3aWR0aCkpOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICByZXR1cm4gdGhp
cy5fZnVuY3Rpb25zOworICAgIH0KKworICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykKKyAgICB7CisgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW21hdCwgaW5kZXhdKSA9
PiB7CisgICAgICAgICAgICBjb25zdCBpbmRleFZhbHVlID0gaW5kZXgubG9hZFZhbHVlKCk7Cisg
ICAgICAgICAgICBpZiAoaW5kZXhWYWx1ZSA+PSAwICYmIGluZGV4VmFsdWUgPCB0aGlzLmhlaWdo
dCkgeworICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBFUHRyKG5ldyBFQnVmZmVy
KHRoaXMud2lkdGgpLCAwKTsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRo
aXMud2lkdGg7IGkrKykKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0LnNldChvZmZzZXQrKywg
bWF0LmdldChpbmRleFZhbHVlICogdGhpcy53aWR0aCArIGkpKTsKKyAgICAgICAgICAgICAgICBy
ZXR1cm4gcmVzdWx0OworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgdGhyb3cg
bmV3IFdUcmFwRXJyb3IoIltCdWlsdGluIG1hdHJpeCBnZXR0ZXJdIiwgIk91dC1vZi1ib3VuZHMg
aW5kZXggd2hlbiBpbmRleGluZyBpbnRvIGEgbWF0cml4Iik7CisgICAgICAgIH07CisgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluTWF0cml4U2V0dGVyLmpzIGIvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpbk1hdHJpeFNldHRlci5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5mN2I4NTc0OWNlMWYyZDdkMWFmMjZiMWNkZThmNzhmM2Y4NGI1NTM4Ci0tLSAvZGV2L251
bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpbk1hdHJpeFNldHRl
ci5qcwpAQCAtMCwwICsxLDczIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAorICovCisidXNlIHN0cmljdCI7CisKK2NsYXNzIEJ1aWx0aW5NYXRyaXhTZXR0ZXIgewor
ICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwgaGVpZ2h0LCB3aWR0aCkKKyAgICB7CisgICAg
ICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJhc2VUeXBlTmFtZTsKKyAgICAgICAgdGhpcy5faGVp
Z2h0ID0gaGVpZ2h0OworICAgICAgICB0aGlzLl93aWR0aCA9IHdpZHRoOworICAgIH0KKworICAg
IGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KKyAgICBn
ZXQgaGVpZ2h0KCkgeyByZXR1cm4gdGhpcy5faGVpZ2h0OyB9CisgICAgZ2V0IHdpZHRoKCkgeyBy
ZXR1cm4gdGhpcy5fd2lkdGg7IH0KKworICAgIHRvU3RyaW5nKCkKKyAgICB7CisgICAgICAgIHJl
dHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLmhlaWdodH14JHt0aGlzLndp
ZHRofSBvcGVyYXRvcltdPSgke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5oZWlnaHR9eCR7dGhp
cy53aWR0aH0sdWludCwke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy53aWR0aH0pYDsKKyAgICB9
CisKKyAgICBzdGF0aWMgZnVuY3Rpb25zKCkKKyAgICB7CisgICAgICAgIGlmICghdGhpcy5fZnVu
Y3Rpb25zKSB7CisgICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKKworICAgICAgICAg
ICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgWyJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAg
ICAgICBmb3IgKGxldCBoZWlnaHQgb2YgWzIsIDMsIDRdKSB7CisgICAgICAgICAgICAgICAgICAg
IGZvciAobGV0IHdpZHRoIG9mIFsyLCAzLCA0XSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHRo
aXMuX2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGluTWF0cml4U2V0dGVyKHR5cGVOYW1lLCBoZWln
aHQsIHdpZHRoKSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9
CisgICAgICAgIHJldHVybiB0aGlzLl9mdW5jdGlvbnM7CisgICAgfQorCisgICAgaW5zdGFudGlh
dGVJbXBsZW1lbnRhdGlvbihmdW5jKQorICAgIHsKKyAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlv
biA9IChbYmFzZSwgaW5kZXgsIHZhbHVlXSkgPT4geworICAgICAgICAgICAgY29uc3QgaW5kZXhW
YWx1ZSA9IGluZGV4LmxvYWRWYWx1ZSgpOworICAgICAgICAgICAgaWYgKGluZGV4VmFsdWUgPj0g
MCAmJiBpbmRleFZhbHVlIDwgdGhpcy5oZWlnaHQpIHsKKyAgICAgICAgICAgICAgICBsZXQgcmVz
dWx0ID0gbmV3IEVQdHIobmV3IEVCdWZmZXIodGhpcy53aWR0aCAqIHRoaXMuaGVpZ2h0KSwgMCk7
CisgICAgICAgICAgICAgICAgcmVzdWx0LmNvcHlGcm9tKGJhc2UsIHRoaXMud2lkdGggKiB0aGlz
LmhlaWdodCk7CisgICAgICAgICAgICAgICAgcmVzdWx0LnBsdXMoaW5kZXhWYWx1ZSAqIHRoaXMu
d2lkdGgpLmNvcHlGcm9tKHZhbHVlLCB0aGlzLndpZHRoKTsKKyAgICAgICAgICAgICAgICByZXR1
cm4gcmVzdWx0OworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3
IFdUcmFwRXJyb3IoIltCdWlsdGluIG1hdHJpeCBzZXR0ZXJdIiwgIk91dC1vZi1ib3VuZHMgaW5k
ZXggd2hlbiBpbmRleGluZyBpbnRvIGEgbWF0cml4Iik7CisgICAgICAgIH07CisgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5q
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjcwNGI0M2EwNmMyZmFlZDlkZmE3M2Rl
YWQzM2JiMGM1Yzk1NTk4NS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3Ry
dWN0b3JzLmpzCisrKyAvZGV2L251bGwKQEAgLTEsODQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIEJ1aWx0
aW5WZWN0b3JDb25zdHJ1Y3RvcnMgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwgcGFy
YW1ldGVyU2l6ZXMpCi0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5hbWUgPSBiYXNlVHlw
ZU5hbWU7Ci0gICAgICAgIHRoaXMuX3BhcmFtZXRlclNpemVzID0gcGFyYW1ldGVyU2l6ZXM7Ci0g
ICAgfQotCi0gICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFt
ZTsgfQotICAgIGdldCBwYXJhbWV0ZXJTaXplcygpIHsgcmV0dXJuIHRoaXMuX3BhcmFtZXRlclNp
emVzOyB9Ci0gICAgZ2V0IG91dHB1dFNpemUoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMu
cGFyYW1ldGVyU2l6ZXMucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgMCk7Ci0gICAgfQotCi0gICAg
dG9TdHJpbmcoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGBuYXRpdmUgb3BlcmF0b3IgJHt0aGlz
LmJhc2VUeXBlTmFtZX0ke3RoaXMub3V0cHV0U2l6ZX0oJHt0aGlzLnBhcmFtZXRlclNpemVzLm1h
cCh4ID0+IHggPT0gMSA/IHRoaXMuYmFzZVR5cGVOYW1lIDogdGhpcy5iYXNlVHlwZU5hbWUgKyB4
KS5qb2luKCIsIil9KWA7Ci0gICAgfQotCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewot
ICAgICAgICBpZiAoIXRoaXMuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgdGhpcy5fZnVuY3Rp
b25zID0gW107Ci0KLSAgICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1l
bnRUeXBlcykgewotICAgICAgICAgICAgICAgIGZvciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVu
dFNpemVzKSB7Ci0gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHBhcmFtU2l6ZXMgb2YgdGhp
cy5fdmVjdG9yUGFyYW1ldGVyU2l6ZXNGb3JNYXhpbXVtU2l6ZShzaXplKSkKLSAgICAgICAgICAg
ICAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGluVmVjdG9yQ29uc3Ry
dWN0b3JzKHR5cGVOYW1lLCBwYXJhbVNpemVzKSk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAg
ICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIHJldHVybiB0aGlzLl9mdW5jdGlvbnM7Ci0gICAg
fQotCi0gICAgc3RhdGljIF92ZWN0b3JQYXJhbWV0ZXJTaXplc0Zvck1heGltdW1TaXplKG1heFNp
emUpCi0gICAgewotICAgICAgICBsZXQgdmFyaWFudHMgPSBbIFsgbWF4U2l6ZSBdIF07Ci0gICAg
ICAgIGZvciAobGV0IHNwbGl0UG9pbnQgPSAxOyBzcGxpdFBvaW50IDwgbWF4U2l6ZTsgc3BsaXRQ
b2ludCsrKSB7Ci0gICAgICAgICAgICBmb3IgKGxldCB2IG9mIEJ1aWx0aW5WZWN0b3JDb25zdHJ1
Y3RvcnMuX3ZlY3RvclBhcmFtZXRlclNpemVzRm9yTWF4aW11bVNpemUobWF4U2l6ZSAtIHNwbGl0
UG9pbnQpKQotICAgICAgICAgICAgICAgIHZhcmlhbnRzLnB1c2goWyBzcGxpdFBvaW50IF0uY29u
Y2F0KHYpKTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdmFyaWFudHM7Ci0gICAgfQotCi0g
ICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQotICAgIHsKLSAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChhcmdzKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBu
ZXcgRVB0cihuZXcgRUJ1ZmZlcih0aGlzLm91dHB1dFNpemUpLCAwKTsKLSAgICAgICAgICAgIGxl
dCBvZmZzZXQgPSAwOwotICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcmdzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0aGlzLnBhcmFt
ZXRlclNpemVzW2ldOyBqKyspCi0gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5zZXQob2Zmc2V0
KyssIGFyZ3NbaV0uZ2V0KGopKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJldHVybiBy
ZXN1bHQ7Ci0gICAgICAgIH07Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhp
czsKLSAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3Iu
anMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yRXF1YWxpdHlP
cGVyYXRvci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjE4M2QzNTY4NjE5NDFi
YzI3NmU0ZDNjNjdjNWU0N2VjYWZlNDcwOS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVj
dG9yRXF1YWxpdHlPcGVyYXRvci5qcworKysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBg
YEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJpY3QiOwot
Ci1jbGFzcyBCdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVyYXRvciB7Ci0gICAgY29uc3RydWN0b3Io
YmFzZVR5cGVOYW1lLCBzaXplKQotICAgIHsKLSAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0g
YmFzZVR5cGVOYW1lOwotICAgICAgICB0aGlzLl9zaXplID0gc2l6ZTsKLSAgICB9Ci0KLSAgICBn
ZXQgYmFzZVR5cGVOYW1lKCkgeyByZXR1cm4gdGhpcy5fYmFzZVR5cGVOYW1lOyB9Ci0gICAgZ2V0
IHNpemUoKSB7IHJldHVybiB0aGlzLl9zaXplOyB9Ci0KLSAgICB0b1N0cmluZygpCi0gICAgewot
ICAgICAgICByZXR1cm4gYG5hdGl2ZSBib29sIG9wZXJhdG9yPT0oJHt0aGlzLmJhc2VUeXBlTmFt
ZX0ke3RoaXMuc2l6ZX0sJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuc2l6ZX0pYDsKLSAgICB9
Ci0KLSAgICBzdGF0aWMgZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fZnVu
Y3Rpb25zKSB7Ci0gICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKLQotICAgICAgICAg
ICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgVmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0gICAgICAgICAg
ICAgICAgZm9yIChsZXQgc2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpCi0gICAgICAgICAgICAg
ICAgICAgIHRoaXMuX2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVy
YXRvcih0eXBlTmFtZSwgc2l6ZSkpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAg
IHJldHVybiB0aGlzLl9mdW5jdGlvbnM7Ci0gICAgfQotCi0gICAgaW5zdGFudGlhdGVJbXBsZW1l
bnRhdGlvbihmdW5jKQotICAgIHsKLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbcmVm
MSwgcmVmMl0sIG5vZGUpID0+IHsKLSAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhp
cy5zaXplOyBpKyspIHsKLSAgICAgICAgICAgICAgICBpZiAocmVmMS5nZXQoaSkgIT0gcmVmMi5n
ZXQoaSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBFUHRyLmJveChmYWxzZSk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gRVB0ci5ib3godHJ1ZSk7Ci0gICAgICAgIH07
Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKLSAgICB9Ci19ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvQnVpbHRpblZlY3RvckdldHRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL0J1aWx0aW5WZWN0b3JHZXR0ZXIuanMKaW5kZXggYzI1M2Y3NjMwZWU5ZGM0N2NkMWUx
OTQ1YmM4N2Y0MmVhYTNjY2IyOC4uNDA4NzJiNGY4ZTJiYjNhOGU0ZmZiMjYyNzVkOGQ4M2ZlNzIx
ODJmNyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZl
Y3RvckdldHRlci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGlu
VmVjdG9yR2V0dGVyLmpzCkBAIC02Miw5ICs2Miw5IEBAIGNsYXNzIEJ1aWx0aW5WZWN0b3JHZXR0
ZXIgewogCiAgICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQogICAgIHsKLSAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmVjXSwgbm9kZSkgPT4geworICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFt2ZWNdKSA9PiB7CiAgICAgICAgICAgICByZXR1cm4gRVB0ci5i
b3godmVjLmdldCh0aGlzLmluZGV4KSk7CiAgICAgICAgIH07CiAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb25EYXRhID0gdGhpczsKICAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQorfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZl
Y3RvckluZGV4R2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRp
blZlY3RvckluZGV4R2V0dGVyLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNzI2
MmZjOWNlMjczMGYwODdkNjE0NTU4NzZiMzM1ZmUwMjRhYzNhLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L0J1aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcworKysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
Ci0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJp
Y3QiOwotCi1jbGFzcyBCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIgewotICAgIGNvbnN0cnVjdG9y
KGJhc2VUeXBlTmFtZSwgc2l6ZSkKLSAgICB7Ci0gICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9
IGJhc2VUeXBlTmFtZTsKLSAgICAgICAgdGhpcy5fc2l6ZSA9IHNpemU7Ci0gICAgfQotCi0gICAg
Z2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQotICAgIGdl
dCBzaXplKCkgeyByZXR1cm4gdGhpcy5fc2l6ZTsgfQotCi0gICAgdG9TdHJpbmcoKQotICAgIHsK
LSAgICAgICAgcmV0dXJuIGBuYXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0gb3BlcmF0b3JbXSgk
e3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSx1aW50KWA7Ci0gICAgfQotCi0gICAgc3Rh
dGljIGZ1bmN0aW9ucygpCi0gICAgewotICAgICAgICBpZiAoIXRoaXMuX2FsbEluZGV4R2V0dGVy
cykgewotICAgICAgICAgICAgdGhpcy5fYWxsSW5kZXhHZXR0ZXJzID0gW107Ci0KLSAgICAgICAg
ICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewotICAgICAgICAg
ICAgICAgIGZvciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVzKQotICAgICAgICAgICAg
ICAgICAgICB0aGlzLl9hbGxJbmRleEdldHRlcnMucHVzaChuZXcgQnVpbHRpblZlY3RvckluZGV4
R2V0dGVyKHR5cGVOYW1lLCBzaXplKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAg
ICAgcmV0dXJuIHRoaXMuX2FsbEluZGV4R2V0dGVyczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0
ZUltcGxlbWVudGF0aW9uKGZ1bmMpCi0gICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2ZWMsIGluZGV4XSwgbm9kZSkgPT4gewotICAgICAgICAgICAgY29uc3QgaW5kZXhWYWx1
ZSA9IGluZGV4LmxvYWRWYWx1ZSgpOwotICAgICAgICAgICAgaWYgKGluZGV4VmFsdWUgPj0gMCAm
JiBpbmRleFZhbHVlIDwgdGhpcy5zaXplKQotICAgICAgICAgICAgICAgIHJldHVybiBFUHRyLmJv
eCh2ZWMuZ2V0KGluZGV4LmxvYWRWYWx1ZSgpKSk7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAg
ICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2luZGV4VmFsdWV9IG91dCBvZiBib3VuZHMgZm9y
IHZlY3RvciBvZiBzaXplICR7dGhpcy5zaXplfWApOwotICAgICAgICB9OwotICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7Ci0gICAgfQotfQpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0
aW5WZWN0b3JJbmRleFNldHRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1
aWx0aW5WZWN0b3JJbmRleFNldHRlci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MmZlNWQ2NzhhYjcwNWZlNDBiN2Q2OGU5NjkzZGQ4YWZjNGFkZWU5NC4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9CdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuanMKKysrIC9kZXYvbnVsbApAQCAtMSw3MSAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQot
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
Ci0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ug
c3RyaWN0IjsKLQotY2xhc3MgQnVpbHRpblZlY3RvckluZGV4U2V0dGVyIHsKLSAgICBjb25zdHJ1
Y3RvcihiYXNlVHlwZU5hbWUsIHNpemUpCi0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5h
bWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAgICAgIHRoaXMuX3NpemUgPSBzaXplOwotICAgIH0KLQot
ICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KLSAg
ICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRoaXMuX3NpemU7IH0KLSAgICBnZXQgZWxlbWVudE5hbWUo
KSB7IHJldHVybiB0aGlzLl9lbGVtZW50TmFtZTsgfQotICAgIGdldCBpbmRleCgpIHsgcmV0dXJu
IHRoaXMuX2luZGV4OyB9Ci0KLSAgICB0b1N0cmluZygpCi0gICAgewotICAgICAgICByZXR1cm4g
YG5hdGl2ZSAke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSBvcGVyYXRvcltdPSgke3Ro
aXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSx1aW50LCR7dGhpcy5iYXNlVHlwZU5hbWV9KWA7
Ci0gICAgfQotCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewotICAgICAgICBpZiAoIXRo
aXMuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zID0gW107Ci0KLSAg
ICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewotICAg
ICAgICAgICAgICAgIGZvciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVzKQotICAgICAg
ICAgICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMucHVzaChuZXcgQnVpbHRpblZlY3RvckluZGV4
U2V0dGVyKHR5cGVOYW1lLCBzaXplKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAg
ICAgcmV0dXJuIHRoaXMuX2Z1bmN0aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUltcGxl
bWVudGF0aW9uKGZ1bmMpCi0gICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFti
YXNlLCBpbmRleCwgdmFsdWVdLCBub2RlKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCBpbmRleFZh
bHVlID0gaW5kZXgubG9hZFZhbHVlKCk7Ci0gICAgICAgICAgICBpZiAoaW5kZXhWYWx1ZSA+PSAw
ICYmIGluZGV4VmFsdWUgPCB0aGlzLnNpemUpIHsKLSAgICAgICAgICAgICAgICBsZXQgcmVzdWx0
ID0gbmV3IEVQdHIobmV3IEVCdWZmZXIodGhpcy5zaXplKSwgMCk7Ci0gICAgICAgICAgICAgICAg
cmVzdWx0LmNvcHlGcm9tKGJhc2UsIHRoaXMuc2l6ZSk7Ci0gICAgICAgICAgICAgICAgcmVzdWx0
LnBsdXMoaW5kZXhWYWx1ZSkuY29weUZyb20odmFsdWUsIDEpOwotICAgICAgICAgICAgICAgIHJl
dHVybiByZXN1bHQ7Ci0gICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICB0aHJvdyBu
ZXcgRXJyb3IoYCR7aW5kZXhWYWx1ZX0gb3V0IG9mIGJvdW5kcyBmb3IgdmVjdG9yIG9mIHNpemUg
JHt0aGlzLnNpemV9YCk7Ci0gICAgICAgIH07Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25E
YXRhID0gdGhpczsKLSAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvclNldHRlci5q
cyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JTZXR0ZXIuanMK
aW5kZXggYTJkNzYzYjc1MDk5OTdiMjQxMGMyNGI4MDEzMTRjMzRhM2M0ODdhMC4uZDU1OTU5MWU5
Njg2NzFlZjkwMzU5OTZhM2ZiNjE1N2VmOTdiMjVlYyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvclNldHRlci5qcworKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yU2V0dGVyLmpzCkBAIC00Nyw3ICs0Nyw3
IEBAIGNsYXNzIEJ1aWx0aW5WZWN0b3JTZXR0ZXIgewogICAgIHsKICAgICAgICAgaWYgKCF0aGlz
Ll9mdW5jdGlvbnMpIHsKICAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucyA9IFtdOwotICAgICAg
ICAKKwogICAgICAgICAgICAgY29uc3QgZWxlbWVudHMgPSBbICJ4IiwgInkiLCAieiIsICJ3IiBd
OwogCiAgICAgICAgICAgICBmb3IgKGxldCB0eXBlTmFtZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMp
IHsKQEAgLTYyLDcgKzYyLDcgQEAgY2xhc3MgQnVpbHRpblZlY3RvclNldHRlciB7CiAKICAgICBp
bnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCiAgICAgewotICAgICAgICBmdW5jLmltcGxl
bWVudGF0aW9uID0gKFtiYXNlLCB2YWx1ZV0sIG5vZGUpID0+IHsKKyAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbYmFzZSwgdmFsdWVdKSA9PiB7CiAgICAgICAgICAgICBsZXQgcmVzdWx0
ID0gbmV3IEVQdHIobmV3IEVCdWZmZXIodGhpcy5zaXplKSwgMCk7CiAgICAgICAgICAgICByZXN1
bHQuY29weUZyb20oYmFzZSwgdGhpcy5zaXplKTsKICAgICAgICAgICAgIHJlc3VsdC5wbHVzKHRo
aXMuaW5kZXgpLmNvcHlGcm9tKHZhbHVlLCAxKTsKQEAgLTcwLDQgKzcwLDQgQEAgY2xhc3MgQnVp
bHRpblZlY3RvclNldHRlciB7CiAgICAgICAgIH07CiAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b25EYXRhID0gdGhpczsKICAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorfQpk
aWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2FsbEV4cHJlc3Npb24u
anMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcwppbmRl
eCAzYjE1NDU1OTkyZTY0ZTI2NzdiYTBiMDNhYjY1NjhlZjQzZDVkODY1Li41ZmJkZDUwNWY3OWQ0
YjMyNmUwOTNlMGZiNzZjZDM3NWQwYTJjNWJhIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcwpAQCAtNTIsMTkgKzUyLDIyIEBAIGNsYXNzIENh
bGxFeHByZXNzaW9uIGV4dGVuZHMgRXhwcmVzc2lvbiB7CiAKICAgICByZXNvbHZlKHBvc3NpYmxl
T3ZlcmxvYWRzLCBwcm9ncmFtKQogICAgIHsKLSAgICAgICAgaWYgKCFwb3NzaWJsZU92ZXJsb2Fk
cykKLSAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRoaXMub3JpZ2luLm9yaWdpblN0
cmluZywgIkRpZCBub3QgZmluZCBhbnkgZnVuY3Rpb25zIG5hbWVkICIgKyB0aGlzLm5hbWUpOwot
CiAgICAgICAgIGxldCBmYWlsdXJlcyA9IFtdOwotICAgICAgICBsZXQgb3ZlcmxvYWQgPSByZXNv
bHZlT3ZlcmxvYWRJbXBsKHBvc3NpYmxlT3ZlcmxvYWRzLCB0aGlzLmFyZ3VtZW50VHlwZXMsIHRo
aXMucmV0dXJuVHlwZSk7CisgICAgICAgIGxldCBvdmVybG9hZDsKKyAgICAgICAgaWYgKHBvc3Np
YmxlT3ZlcmxvYWRzKQorICAgICAgICAgICAgb3ZlcmxvYWQgPSByZXNvbHZlT3ZlcmxvYWRJbXBs
KHBvc3NpYmxlT3ZlcmxvYWRzLCB0aGlzLmFyZ3VtZW50VHlwZXMsIHRoaXMucmV0dXJuVHlwZSk7
CiAKLSAgICAgICAgaWYgKCFvdmVybG9hZC5mdW5jKSB7CisgICAgICAgIGlmICghb3ZlcmxvYWQg
fHwgIW92ZXJsb2FkLmZ1bmMpIHsKKyAgICAgICAgICAgIGlmICghb3ZlcmxvYWQpCisgICAgICAg
ICAgICAgICAgb3ZlcmxvYWQgPSB7fTsKICAgICAgICAgICAgIGNvbnN0IGZ1bmMgPSB0aGlzLl9y
ZXNvbHZlQnlJbnN0YW50aWF0aW9uKHByb2dyYW0pOwogICAgICAgICAgICAgaWYgKGZ1bmMpCiAg
ICAgICAgICAgICAgICAgb3ZlcmxvYWQuZnVuYyA9IGZ1bmM7CiAgICAgICAgIH0KIAogICAgICAg
ICBpZiAoIW92ZXJsb2FkLmZ1bmMpIHsKKyAgICAgICAgICAgIGlmICghb3ZlcmxvYWQuZmFpbHVy
ZXMpCisgICAgICAgICAgICAgICAgb3ZlcmxvYWQuZmFpbHVyZXMgPSBbXTsKICAgICAgICAgICAg
IGZhaWx1cmVzLnB1c2goLi4ub3ZlcmxvYWQuZmFpbHVyZXMpOwogICAgICAgICAgICAgbGV0IG1l
c3NhZ2UgPSAiRGlkIG5vdCBmaW5kIGZ1bmN0aW9uIG5hbWVkICIgKyB0aGlzLm5hbWUgKyAiIGZv
ciBjYWxsIHdpdGggIjsKICAgICAgICAgICAgIG1lc3NhZ2UgKz0gImFyZ3VtZW50IHR5cGVzICgi
ICsgdGhpcy5hcmd1bWVudFR5cGVzICsgIikiOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9DaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcwppbmRleCBiYjZiMmJk
NDk4ZTc3YjE0OWRmNGM2OGY0ZWYzYWMxZmYxY2RhYWIyLi4yZjY5MTQyYTM1MTdkMjk0OTAwNTMw
YzBjZjA2NmM5YmZkMjI3N2FmIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9DaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9DaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcwpAQCAtMjksOCArMjksMjAgQEAg
ZnVuY3Rpb24gY2hlY2tUeXBlc1dpdGhBcmd1bWVudHMocHJvZ3JhbSkKICAgICBjbGFzcyBUeXBl
V2l0aEFyZ3VtZW50c0NoZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgdmlzaXRUeXBl
UmVmKG5vZGUpCiAgICAgICAgIHsKLSAgICAgICAgICAgIGlmIChub2RlLm5hbWUgPT0gInZlY3Rv
ciIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCA9PSAwKQotICAgICAgICAgICAgICAgIHRo
cm93IG5ldyBFcnJvcigiQnVpbHRpbiB0eXBlICR7bm9kZS5uYW1lfSBzaG91bGQgYWx3YXlzIGhh
dmUgdHlwZSBhcmd1bWVudHMuIik7CisgICAgICAgICAgICBpZiAoKG5vZGUubmFtZSA9PSAidmVj
dG9yIiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDIpCisgICAgICAgICAgICAgICAg
fHwgKG5vZGUubmFtZSA9PSAibWF0cml4IiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9
IDMpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiVGV4dHVyZTFEIiAmJiBub2Rl
LnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFt
ZSA9PSAiUldUZXh0dXJlMUQiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAg
ICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJlMURBcnJheSIgJiYgbm9kZS50
eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUg
PT0gIlJXVGV4dHVyZTFEQXJyYXkiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkK
KyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJlMkQiICYmIG5vZGUudHlw
ZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09
ICJSV1RleHR1cmUyRCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAg
ICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlRleHR1cmUyREFycmF5IiAmJiBub2RlLnR5cGVB
cmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAi
UldUZXh0dXJlMkRBcnJheSIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAg
ICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlRleHR1cmUzRCIgJiYgbm9kZS50eXBlQXJn
dW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlJX
VGV4dHVyZTNEIiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAg
ICAgICAgfHwgKG5vZGUubmFtZSA9PSAiVGV4dHVyZUN1YmUiICYmIG5vZGUudHlwZUFyZ3VtZW50
cy5sZW5ndGggIT0gMSkpCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBCdWlsdGlu
IHR5cGUgJHtub2RlLm5hbWV9IHNob3VsZCBhbHdheXMgaGF2ZSB0eXBlIGFyZ3VtZW50cy5gKTsK
ICAgICAgICAgfQogICAgIH0KICAgICBwcm9ncmFtLnZpc2l0KG5ldyBUeXBlV2l0aEFyZ3VtZW50
c0NoZWNrZXIoKSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9D
aGVja2VyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qcwppbmRl
eCBjNjlkNTU0OWJhZDkzZGJkMjQzZmE2NjkzYzg2ZjBiNTk5NzhjYzU5Li41ZjU5OGIyZWU3NTIy
YmJjODEwNTQ1Yzk0OGQ3NzNmMmU0Zjk5NDdkIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9DaGVja2VyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL0NoZWNrZXIuanMKQEAgLTI2Myw2ICsyNjMsNyBAQCBjbGFzcyBDaGVja2VyIGV4dGVuZHMg
VmlzaXRvciB7CiAgICAgdmlzaXRWZWN0b3JUeXBlKG5vZGUpCiAgICAgewogICAgICAgICBub2Rl
LmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bUVsZW1lbnRzLnZpc2l0
KHRoaXMpOwogCiAgICAgICAgIGxldCBpc0tub3duQWxsb3dlZFZlY3RvckVsZW1lbnRUeXBlID0g
ZmFsc2U7CiAgICAgICAgIGZvciAobGV0IHZlY3RvckVsZW1lbnRUeXBlTmFtZSBvZiBWZWN0b3JF
bGVtZW50VHlwZXMpIHsKQEAgLTI3Nyw2ICsyNzgsMzMgQEAgY2xhc3MgQ2hlY2tlciBleHRlbmRz
IFZpc2l0b3IgewogCiAgICAgICAgIGlmICghaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVtZW50VHlw
ZSkKICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKGAke25vZGUuZWxlbWVudFR5cGV9
IGlzIG5vdCBhIHBlcm1pdHRlZCB2ZWN0b3IgZWxlbWVudCB0eXBlLmApOworICAgICAgICBpZiAo
bm9kZS5udW1FbGVtZW50c1ZhbHVlICE9IDIgJiYgbm9kZS5udW1FbGVtZW50c1ZhbHVlICE9IDMg
JiYgbm9kZS5udW1FbGVtZW50c1ZhbHVlICE9IDQpCisgICAgICAgICAgICB0aHJvdyBuZXcgV1R5
cGVFcnJvcihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUubnVtRWxlbWVudHNWYWx1ZX0gaXMg
bm90IDIsIDMsIG9yIDQuYCk7CisgICAgfQorCisgICAgdmlzaXRNYXRyaXhUeXBlKG5vZGUpCisg
ICAgeworICAgICAgICBub2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBub2Rl
Lm51bVJvd3MudmlzaXQodGhpcyk7CisgICAgICAgIG5vZGUubnVtQ29sdW1ucy52aXNpdCh0aGlz
KTsKKworICAgICAgICBsZXQgaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVtZW50VHlwZSA9IGZhbHNl
OworICAgICAgICBmb3IgKGxldCBlbGVtZW50VHlwZU5hbWUgb2YgWyJoYWxmIiwgImZsb2F0Il0p
IHsKKyAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRUeXBlID0gdGhpcy5fcHJvZ3JhbS5nbG9iYWxO
YW1lQ29udGV4dC5nZXQoVHlwZSwgZWxlbWVudFR5cGVOYW1lKTsKKyAgICAgICAgICAgIGlmICgh
ZWxlbWVudFR5cGUpCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7ZWxl
bWVudFR5cGVOYW1lfSBpcyBub3QgYSBrbm93biBuYXRpdmUgdHlwZSBpbiB0aGUgc3RhbmRhcmQg
bGlicmFyeSBvciBpbnRyaW5zaWNzLmApOworICAgICAgICAgICAgaWYgKGVsZW1lbnRUeXBlLmVx
dWFscyhub2RlLmVsZW1lbnRUeXBlKSkgeworICAgICAgICAgICAgICAgIGlzS25vd25BbGxvd2Vk
VmVjdG9yRWxlbWVudFR5cGUgPSB0cnVlOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgaWYgKCFpc0tub3duQWxsb3dlZFZlY3RvckVs
ZW1lbnRUeXBlKQorICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7bm9kZS5lbGVt
ZW50VHlwZX0gaXMgbm90IGEgcGVybWl0dGVkIHZlY3RvciBlbGVtZW50IHR5cGUuYCk7CisgICAg
ICAgIGlmIChub2RlLm51bVJvd3NWYWx1ZSAhPSAyICYmIG5vZGUubnVtUm93c1ZhbHVlICE9IDMg
JiYgbm9kZS5udW1Sb3dzVmFsdWUgIT0gNCkKKyAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVy
cm9yKGAke25vZGUudG9TdHJpbmcoKX06ICR7bm9kZS5udW1Sb3dzVmFsdWV9IGlzIG5vdCAyLCAz
LCBvciA0LmApOworICAgICAgICBpZiAobm9kZS5udW1Db2x1bW5zVmFsdWUgIT0gMiAmJiBub2Rl
Lm51bUNvbHVtbnNWYWx1ZSAhPSAzICYmIG5vZGUubnVtQ29sdW1uc1ZhbHVlICE9IDQpCisgICAg
ICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUu
bnVtQ29sdW1uc1ZhbHVlfSBpcyBub3QgMiwgMywgb3IgNC5gKTsKICAgICB9CiAgICAgCiAgICAg
dmlzaXRBcnJheVR5cGUobm9kZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL0V2YWx1YXRvci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0V2YWx1
YXRvci5qcwppbmRleCAwMjkwZGUyM2Q0NDFhYTJmM2E4YzEzMjkwZjIxZjFmY2NhNmQyYzdkLi5h
ZWUwYTIzMTJmZWQ3MmMwYzg3ZTczZjE4YWMzNDhlYTFhYzNjN2JhIDEwMDY0NAotLS0gYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9FdmFsdWF0b3IuanMKKysrIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvRXZhbHVhdG9yLmpzCkBAIC0xNDgsNyArMTQ4LDYgQEAgY2xhc3Mg
RXZhbHVhdG9yIGV4dGVuZHMgVmlzaXRvciB7CiAgICAgICAgIGlmIChub2RlLnByZWRpY2F0ZS52
aXNpdCh0aGlzKS5sb2FkVmFsdWUoKSkKICAgICAgICAgICAgIHJldHVybiBub2RlLmJvZHlFeHBy
ZXNzaW9uLnZpc2l0KHRoaXMpOwogICAgICAgICByZXR1cm4gbm9kZS5lbHNlRXhwcmVzc2lvbi52
aXNpdCh0aGlzKTsKLSAgICAgICAgCiAgICAgfQogICAgIAogICAgIHZpc2l0VmFyaWFibGVSZWYo
bm9kZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5l
ZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
RmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKaW5kZXggMTk3MGY4ZWQ5MzJjZDM1MzBh
NDhkYzMxYWY4YzljNDI0MGRkZThkMC4uZTBlMTYxZmYxMGNjZDNjMDk5MmI5YTkyNjQ5ZjRlM2Ew
MGJhMTExNyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRl
bmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKQEAgLTc0LDUgKzc0LDE3IEBA
IGNsYXNzIEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyIGV4dGVuZHMgVmlzaXRvciB7CiAg
ICAgICAgICAgICB9KTsKICAgICAgICAgfQogICAgIH0KKworICAgIHZpc2l0TWF0cml4VHlwZShu
b2RlKQorICAgIHsKKyAgICAgICAgY29uc3QgZmllbGROYW1lcyA9IFsgInJvdzAiLCAicm93MSIs
ICJyb3cyIiwgInJvdzMiIF07CisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbm9kZS5udW1S
b3dzVmFsdWU7IGkrKykgeworICAgICAgICAgICAgdGhpcy5fcmVzdWx0LnB1c2goeworICAgICAg
ICAgICAgICAgIG5hbWU6IHRoaXMuX25hbWUuam9pbigiLiIpICsgIi4iICsgZmllbGROYW1lc1tp
XSwKKyAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMuX29mZnNldCArIGkgKiBub2RlLmVsZW1l
bnRUeXBlLnNpemUgKiBub2RlLm51bUNvbHVtbnNWYWx1ZSwKKyAgICAgICAgICAgICAgICB0eXBl
OiBub2RlLmVsZW1lbnRUeXBlLm5hbWUgKyBub2RlLm51bUNvbHVtbnNWYWx1ZS50b1N0cmluZygp
CisgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW50cmluc2ljcy5qcyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL0ludHJpbnNpY3MuanMKaW5kZXggZTljM2QxYjM0MTc2YTRiZmQ3OWI0
ZjQ0OTRiMzdiZTBlNWU5YjM4MC4uYTg5Njk1NzMxNDljNzE1MGM4OGViZTAzZjZjYzdiNWJhOWIz
Nzc1MSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW50cmluc2lj
cy5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzCkBA
IC0zMTUsOTAgKzMxNSwyMzggQEAgY2xhc3MgSW50cmluc2ljcyB7CiAgICAgICAgICAgICB9CiAg
ICAgICAgIH0KIAorICAgICAgICBmb3IgKGxldCB0eXBlIG9mIFsiaGFsZiIsICJmbG9hdCJdKSB7
CisgICAgICAgICAgICBmb3IgKGxldCBoZWlnaHQgPSAyOyBoZWlnaHQgPD0gNDsgKytoZWlnaHQp
IHsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCB3aWR0aCA9IDI7IHdpZHRoIDw9IDQ7ICsrd2lk
dGgpIHsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYg
bWF0cml4PCR7dHlwZX0sICR7aGVpZ2h0fSwgJHt3aWR0aH0+YCwgdHlwZSA9PiB7CisgICAgICAg
ICAgICAgICAgICAgICAgICB0aGlzW2BtYXRyaXg8JHt0eXBlfSwgJHtoZWlnaHR9LCAke3dpZHRo
fT5gXSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAg
ICAgICAgICAibmF0aXZlIG9wZXJhdG9yIGludCh1aW50KSIsCi0gICAgICAgICAgICBmdW5jID0+
IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQ
dHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpIHwgMCk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAg
ICAgICJuYXRpdmUgdHlwZWRlZiBzYW1wbGVyIiwKKyAgICAgICAgICAgIHR5cGUgPT4geworICAg
ICAgICAgICAgICAgIHRoaXMuc2FtcGxlciA9IHR5cGU7CisgICAgICAgICAgICAgICAgLy8gRklY
TUU6IEZpZ3VyZSBvdXQgd2hhdCB0byBwdXQgaGVyZS4KKyAgICAgICAgICAgIH0pOworCisgICAg
ICAgIGZvciAobGV0IHRleHR1cmVUeXBlIG9mIFsiVGV4dHVyZTFEIiwgIlJXVGV4dHVyZTFEIiwg
IlRleHR1cmUxREFycmF5IiwgIlJXVGV4dHVyZTFEQXJyYXkiLCAiVGV4dHVyZTJEIiwgIlJXVGV4
dHVyZTJEIiwgIlRleHR1cmUyREFycmF5IiwgIlJXVGV4dHVyZTJEQXJyYXkiLCAiVGV4dHVyZTNE
IiwgIlJXVGV4dHVyZTNEIiwgIlRleHR1cmVDdWJlIl0pIHsKKyAgICAgICAgICAgIGZvciAobGV0
IHR5cGVBcmd1bWVudCBvZiBbImJvb2wiLCAidWNoYXIiLCAidXNob3J0IiwgInVpbnQiLCAiY2hh
ciIsICJzaG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICAgICAg
dGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICAgICAgYG5hdGl2ZSB0eXBlZGVmICR7dGV4
dHVyZVR5cGV9PCR7dHlwZUFyZ3VtZW50fT5gLAorICAgICAgICAgICAgICAgICAgICB0eXBlID0+
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNbYCR7dGV4dHVyZVR5cGV9PCR7dHlwZUFy
Z3VtZW50fT5gXSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAg
ICAgIGZvciAobGV0IGkgPSAyOyBpIDw9IDQ7ICsraSkgeworICAgICAgICAgICAgICAgICAgICB0
aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgICAgICAgICAgYG5hdGl2ZSB0eXBlZGVmICR7
dGV4dHVyZVR5cGV9PCR7dHlwZUFyZ3VtZW50fSR7aX0+YCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNbYCR7dGV4dHVy
ZVR5cGV9PCR7dHlwZUFyZ3VtZW50fSR7aX0+YF0gPSB0eXBlOworICAgICAgICAgICAgICAgICAg
ICAgICAgfSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisK
KyAgICAgICAgZm9yIChsZXQgdGV4dHVyZVR5cGUgb2YgWyJUZXh0dXJlRGVwdGgyRCIsICJSV1Rl
eHR1cmVEZXB0aDJEIiwgIlRleHR1cmVEZXB0aDJEQXJyYXkiLCAiUldUZXh0dXJlRGVwdGgyREFy
cmF5IiwgIlRleHR1cmVEZXB0aEN1YmUiXSkgeworICAgICAgICAgICAgZm9yIChsZXQgdHlwZUFy
Z3VtZW50IG9mIFsiZmxvYXQiLCAiaGFsZiJdKSB7CisgICAgICAgICAgICAgICAgdGhpcy5fbWFw
LnNldCgKKyAgICAgICAgICAgICAgICAgICAgYG5hdGl2ZSB0eXBlZGVmICR7dGV4dHVyZVR5cGV9
PCR7dHlwZUFyZ3VtZW50fT5gLAorICAgICAgICAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHRoaXNbYCR7dGV4dHVyZVR5cGV9PCR7dHlwZUFyZ3VtZW50fT5g
XSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgfQorICAgICAg
ICB9CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVzaG9ydCIsICJ1aW50
IiwgImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiLCAiZmxvYXQiXSkgeworICAgICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIHVjaGFy
KCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2
YWx1ZS5sb2FkVmFsdWUoKSAmIDB4ZmYpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9
CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVjaGFyIiwgInVpbnQiLCAi
Y2hhciIsICJzaG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0
aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgdXNob3J0KCR7
cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1
ZS5sb2FkVmFsdWUoKSAmIDB4ZmZmZik7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0K
KworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAidXNob3J0Iiwg
ImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiLCAiZmxvYXQiXSkgeworICAgICAgICAgICAg
dGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIHVpbnQoJHtw
cmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVl
LmxvYWRWYWx1ZSgpID4+PiAwKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisg
ICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAidWlu
dCIsICJzaG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlz
Ll9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgY2hhcigke3ByaW1p
dGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goY2FzdChJbnQ4
QXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAg
IH0KKworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAidXNob3J0
IiwgInVpbnQiLCAiY2hhciIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAg
ICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3Igc2hvcnQo
JHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KGNh
c3QoSW50MTZBcnJheSwgdmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9KTsK
KyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIs
ICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNob3J0IiwgImhhbGYiLCAiZmxvYXQiXSkgewor
ICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJh
dG9yIGludCgke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7Cisg
ICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0
ci5ib3goY2FzdChJbnQzMkFycmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAg
ICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBb
InVjaGFyIiwgInVzaG9ydCIsICJ1aW50IiwgImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImZsb2F0
Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2
ZSBvcGVyYXRvciBoYWxmKCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5j
ID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVd
KSA9PiBFUHRyLmJveChjYXN0VG9IYWxmKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAg
ICAgICAgfSk7CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9m
IFsidWNoYXIiLCAidXNob3J0IiwgInVpbnQiLCAiY2hhciIsICJzaG9ydCIsICJpbnQiLCAiaGFs
ZiJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRp
dmUgb3BlcmF0b3IgZmxvYXQoJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1
bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1
ZV0pID0+IEVQdHIuYm94KE1hdGguZnJvdW5kKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAg
ICAgICAgICAgfSk7CisgICAgICAgIH0KIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAg
ICAgICAgIm5hdGl2ZSBvcGVyYXRvciBpbnQodWNoYXIpIiwKKyAgICAgICAgICAgIGBuYXRpdmUg
b3BlcmF0b3IgaW50KGF0b21pY19pbnQpYCwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFs
dWUubG9hZFZhbHVlKCkgfCAwKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpKTsKICAgICAgICAgICAg
IH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJh
dG9yIGludChmbG9hdCkiLAorICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciB1aW50KGF0b21p
Y191aW50KWAsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpIHwg
MCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBF
UHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0
aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1aW50KGludCkiLAor
ICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPT0oYm9vbCxib29sKSIsCiAgICAgICAg
ICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpID4+PiAwKTsKKyAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkp
OwogICAgICAgICAgICAgfSk7CiAKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBb
InVpbnQiLCAiaW50IiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisg
ICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9wZXJhdG9yPT0oJHtwcmltaXRpdmVUeXBlfSwk
e3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAg
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9h
ZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgYm9vbCBvcGVyYXRvcjwoJHtwcmltaXRpdmVU
eXBlfSwke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAg
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
KyAgICAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPCByaWdo
dC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgICAgIHRoaXMu
X21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9wZXJhdG9yPD0oJHtwcmlt
aXRpdmVUeXBlfSwke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7
CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkg
PD0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAg
ICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgYm9vbCBvcGVyYXRvcj4o
JHtwcmltaXRpdmVUeXBlfSwke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVu
YyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQs
IHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZh
bHVlKCkgPiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgfSk7CisKKyAgICAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9wZXJh
dG9yPj0oJHtwcmltaXRpdmVUeXBlfSwke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAg
ICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQu
bG9hZFZhbHVlKCkgPj0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIH0pOwor
ICAgICAgICB9CisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
b3BlcmF0b3IgdWludCh1Y2hhcikiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3It
KGludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSA+Pj4g
MCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9Pgor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgoLXZhbHVlLmxvYWRWYWx1ZSgpKSB8IDApOwog
ICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJu
YXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBv
cGVyYXRvci0oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZh
bHVlKCkgPj4+IDApOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoLXZhbHVl
LmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hhcihpbnQpIiwKKyAgICAgICAgICAg
ICJuYXRpdmUgaW50IG9wZXJhdG9yKyhpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsK
LSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIu
Ym94KHZhbHVlLmxvYWRWYWx1ZSgpICYgMHhmZik7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRy
LmJveCgobGVmdC5sb2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAg
ICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
b3BlcmF0b3IgdWNoYXIodWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3It
KGludCxpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkg
JiAweGZmKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCBy
aWdodF0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgp
IC0gcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0
aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hhcihmbG9hdCki
LAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3IqKGludCxpbnQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgJiAweGZmKTsKKyAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICogcmlnaHQubG9hZFZhbHVlKCkp
IHwgMCk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAg
ICAgICAgIm5hdGl2ZSBvcGVyYXRvciBmbG9hdChpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUg
aW50IG9wZXJhdG9yLyhpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KE1hdGgu
ZnJvdW5kKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJv
eCgobGVmdC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAg
ICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3Bl
cmF0b3IgZmxvYXQodWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yKyh1
aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goTWF0aC5mcm91bmQodmFsdWUu
bG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFts
ZWZ0LCByaWdodF0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRW
YWx1ZSgpICsgcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsKICAgICAgICAgICAgIH0pOwogCiAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9yIGZsb2F0
KHVjaGFyKSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3ItKHVpbnQsdWludCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChNYXRoLmZyb3VuZCh2YWx1ZS5sb2FkVmFsdWUo
KSkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSBy
aWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yKyhpbnQsaW50KSIs
CisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3IqKHVpbnQsdWludCkiLAogICAgICAg
ICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
bGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2Fk
VmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOworICAgICAgICAgICAgICAgICAgICBF
UHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAg
ICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSB1aW50IG9wZXJhdG9yKyh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgdWlu
dCBvcGVyYXRvci8odWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICsgcmlnaHQubG9hZFZhbHVl
KCkpID4+PiAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVl
KCkgLyByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKQEAgLTQwOSw2NyArNTU3LDY1IEBAIGNsYXNzIEludHJpbnNpY3Mg
ewogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAg
ICJuYXRpdmUgaW50IG9wZXJhdG9yLShpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZs
b2F0IG9wZXJhdG9yLShmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRW
YWx1ZSgpKSB8IDApOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChs
ZWZ0LmxvYWRWYWx1ZSgpIC0gcmlnaHQubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwog
CiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0
b3ItKHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvciooZmxv
YXQsZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChsZWZ0LmxvYWRWYWx1ZSgp
ICogcmlnaHQubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCxmbG9h
dCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvci8oZmxvYXQsZmxvYXQpIiwK
ICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0
aC5mcm91bmQobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CisgICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgLyByaWdo
dC5sb2FkVmFsdWUoKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yKihpbnQsaW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGludCBvcGVyYXRvciYoaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9
PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRd
KSA9PiB7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiBFUHRyLmJveCgobGVmdC5sb2FkVmFs
dWUoKSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwotICAgICAgICAgICAgICAgIH07CisgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAmIHJpZ2h0LmxvYWRW
YWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgK
LSAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcioodWludCx1aW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGludCBvcGVyYXRvcnwoaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9
PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRd
KSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAqIHJp
Z2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChs
ZWZ0LmxvYWRWYWx1ZSgpIHwgcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9
KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBv
cGVyYXRvciooZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9y
XihpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUo
KSkpOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSBeIHJp
Z2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5f
bWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yLyhpbnQsaW50KSIsCisg
ICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcn4oaW50KSIsCiAgICAgICAgICAgICBmdW5j
ID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdo
dF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIC8g
cmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgofnZhbHVlLmxvYWRWYWx1ZSgpKSB8IDApOwog
ICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJu
YXRpdmUgdWludCBvcGVyYXRvci8odWludCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGlu
dCBvcGVyYXRvcjw8KGludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIC8gcmlnaHQubG9hZFZhbHVl
KCkpID4+PiAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVl
KCkgPDwgcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAg
ICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3ImKGludCxp
bnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yPj4oaW50LHVpbnQpIiwKICAg
ICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24g
PSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5s
b2FkVmFsdWUoKSAmIHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0
ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgPj4gcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAg
ICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KApAQCAtNDgwLDIyMyArNjI2LDI5
MyBAQCBjbGFzcyBJbnRyaW5zaWNzIHsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcnwoaW50LGludCkiLAor
ICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yfCh1aW50LHVpbnQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFs
dWUoKSB8IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
KGxlZnQubG9hZFZhbHVlKCkgfCByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAg
ICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdWlu
dCBvcGVyYXRvcnwodWludCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0
b3JeKHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSB8IHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4g
MCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIF4gcmln
aHQubG9hZFZhbHVlKCkpID4+PiAwKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcl4oaW50LGludCkiLAor
ICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yfih1aW50KSIsCiAgICAgICAgICAgICBm
dW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCBy
aWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkg
XiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlv
biA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgofnZhbHVlLmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAg
ICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSB1aW50IG9wZXJhdG9yXih1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgdWlu
dCBvcGVyYXRvcjw8KHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSBeIHJpZ2h0LmxvYWRWYWx1
ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1
ZSgpIDw8IHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKIAogICAg
ICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3I8PChp
bnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCx1aW50
KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KGxlZnQubG9hZFZhbHVlKCkgPDwgcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSA+Pj4gcmlnaHQubG9hZFZhbHVlKCkpID4+
PiAwKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3I8PCh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJu
YXRpdmUgZmxvYXQgY29zKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIDw8IHJpZ2h0LmxvYWRWYWx1
ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmNv
cyh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcj4+KGludCx1aW50KSIs
CisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHNpbihmbG9hdCkiLAogICAgICAgICAgICAgZnVu
YyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmln
aHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID4+
IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5k
KE1hdGguc2luKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcj4+KHVp
bnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCB0YW4oZmxvYXQpIiwKICAgICAg
ICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2Fk
VmFsdWUoKSA+Pj4gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
TWF0aC5mcm91bmQoTWF0aC50YW4odmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9
KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3Bl
cmF0b3J+KGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhY29zKGZsb2F0KSIsCiAg
ICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KH52YWx1ZS5sb2FkVmFsdWUoKSk7CisgICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmFjb3ModmFsdWUubG9hZFZhbHVlKCkpKSk7
CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAg
Im5hdGl2ZSB1aW50IG9wZXJhdG9yfih1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0
IGFzaW4oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goKH52YWx1ZS5sb2FkVmFs
dWUoKSkgPj4+IDApOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5h
c2luKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgb3BlcmF0b3IvKGZsb2F0LGZs
b2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGF0YW4oZmxvYXQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQo
bGVmdC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBF
UHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmF0YW4odmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAg
ICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2
ZSBib29sIG9wZXJhdG9yPT0oaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBj
b3NoKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5jb3NoKHZhbHVlLmxvYWRWYWx1ZSgp
KSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAg
ICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5h
dGl2ZSBmbG9hdCBzaW5oKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVl
KCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4K
KyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5zaW5oKHZhbHVl
LmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KGJvb2wsYm9vbCkiLAorICAg
ICAgICAgICAgIm5hdGl2ZSBmbG9hdCB0YW5oKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+
IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0p
ID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmln
aHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0
aC50YW5oKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAg
dGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KGZsb2F0
LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGNlaWwoZmxvYXQpIiwKICAgICAg
ICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2Fk
VmFsdWUoKSA9PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChN
YXRoLmZyb3VuZChNYXRoLmNlaWwodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9
KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9w
ZXJhdG9yPChpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGV4cChmbG9hdCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChs
ZWZ0LmxvYWRWYWx1ZSgpIDwgcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0
ci5ib3goTWF0aC5mcm91bmQoTWF0aC5leHAodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAg
ICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBi
b29sIG9wZXJhdG9yPCh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgZmxv
b3IoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAg
ICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguZmxvb3IodmFsdWUubG9hZFZhbHVlKCkp
KSk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAg
ICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPChmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5h
dGl2ZSBmbG9hdCBsb2coZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAg
ICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8IHJpZ2h0LmxvYWRWYWx1ZSgp
KTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+Cisg
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgubG9nKHZhbHVlLmxv
YWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgK
LSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcjw9KGludCxpbnQpIiwKKyAgICAgICAg
ICAgICJuYXRpdmUgZmxvYXQgcm91bmQoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewot
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
LSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5s
b2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLnJv
dW5kKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcjw9KHVpbnQsdWlu
dCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBzcXJ0KGZsb2F0KSIsCiAgICAgICAgICAg
ICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0
LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVl
KCkgPD0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50
YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5m
cm91bmQoTWF0aC5zcXJ0KHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRv
cjw9KGZsb2F0LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHRydW5jKGZsb2F0
KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KGxlZnQubG9hZFZhbHVlKCkgPD0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC50cnVuYyh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAg
ICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIGJvb2wgb3BlcmF0b3I+KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQg
ZGR4KGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgwKTsK
ICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAi
bmF0aXZlIGJvb2wgb3BlcmF0b3I+KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBm
bG9hdCBkZHkoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94
KDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAg
ICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj4oZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJu
YXRpdmUgZmxvYXQgcG93KGZsb2F0LGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0g
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPiByaWdodC5sb2Fk
VmFsdWUoKSk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgu
cG93KGxlZnQubG9hZFZhbHVlKCksIHJpZ2h0LmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAg
fSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBv
cGVyYXRvcj49KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgYm9vbCBpc2Zpbml0ZShm
bG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRy
LmJveChsZWZ0LmxvYWRWYWx1ZSgpID49IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAg
ICAgIEVQdHIuYm94KE51bWJlci5pc0Zpbml0ZSh2YWx1ZS5sb2FkVmFsdWUoKSkpOwogICAgICAg
ICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
Ym9vbCBvcGVyYXRvcj49KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBib29sIGlz
aW5mKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPj0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goKHZhbHVlLmxvYWRWYWx1ZSgpID09IE51bWJlci5QT1NJVElWRV9J
TkZJTklUWSkgfHwgKHZhbHVlLmxvYWRWYWx1ZSgpID09IE51bWJlci5ORUdBVElWRV9JTkZJTklU
WSkpOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAg
ICAgICJuYXRpdmUgYm9vbCBpc25hbihmbG9hdCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7Cisg
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveChOdW1iZXIuaXNOYU4odmFsdWUubG9hZFZhbHVlKCkpKTsK
KyAgICAgICAgICAgIH0pOworCisgICAgICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhpcy4KKyAg
ICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRpdmUgYm9vbCBpc25vcm1hbCho
YWxmKSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxl
bWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGlz
TmFOKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICAvLyBG
SVhNRTogSW1wbGVtZW50IHRoaXMuCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAg
ICAibmF0aXZlIGJvb2wgaXNub3JtYWwoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4gewor
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAg
ICAgICAgICAgICAgICAgRVB0ci5ib3goaXNOYU4odmFsdWUubG9hZFZhbHVlKCkpKTsKICAgICAg
ICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IGJvb2wgb3BlcmF0b3I+PShmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9h
dCBhdGFuMihmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID49IHJpZ2h0LmxvYWRWYWx1ZSgp
KTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5hdGFuMihs
ZWZ0LmxvYWRWYWx1ZSgpLCByaWdodC5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0pOwog
Ci0gICAgICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5cGVOYW1lIG9mIGFsbFZlY3RvclR5cGVO
YW1lcygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYgJHtuYXRp
dmVWZWN0b3JUeXBlTmFtZX1gLCB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0eXBlLmlzUHJp
bWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRp
dmUgaW50IGFzaW50KGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAg
ICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KEZsb2F0MzJBcnJheSwgSW50MzJBcnJheSwgdmFsdWUu
bG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwogCi0gICAgICAgIGZvciAobGV0IHN3aXp6
bGUgb2YgU3dpenpsZU9wLmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChz
d2l6emxlLnRvU3RyaW5nKCksIGZ1bmMgPT4gc3dpenpsZS5pbnN0YW50aWF0ZUltcGxlbWVudGF0
aW9uKGZ1bmMpKTsKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRpdmUg
dWludCBhc3VpbnQoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3goYml0d2lzZUNhc3QoRmxvYXQzMkFycmF5LCBVaW50MzJBcnJheSwgdmFsdWUu
bG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5zZXQo
CisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGFzZmxvYXQoaW50KSIsCisgICAgICAgICAgICBm
dW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0p
ID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KEludDMyQXJyYXks
IEZsb2F0MzJBcnJheSwgdmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0pOworCisg
ICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGFzZmxvYXQo
dWludCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChi
aXR3aXNlQ2FzdChVaW50MzJBcnJheSwgRmxvYXQzMkFycmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkp
OworICAgICAgICAgICAgfSk7CiAKLSAgICAgICAgZm9yIChsZXQgYm9vbE9wIG9mIE9wZXJhdG9y
Qm9vbC5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoYm9vbE9wLnRvU3Ry
aW5nKCksIGZ1bmMgPT4gYm9vbE9wLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwor
ICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMuCisgICAgICAgIHRoaXMuX21hcC5zZXQo
CisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGYxNnRvZjMyKHVpbnQpIiwKKyAgICAgICAgICAg
IGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goMCk7CisgICAgICAgICAgICB9KTsK
IAotICAgICAgICBmb3IgKGxldCBhbmRlckluZGV4IG9mIE9wZXJhdG9yQW5kZXJJbmRleGVyLmZ1
bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChhbmRlckluZGV4LnRvU3RyaW5n
KCksIGZ1bmMgPT4gYW5kZXJJbmRleC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsK
KyAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGlzLgorICAgICAgICB0aGlzLl9tYXAuc2V0
KAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IGYzMnRvZjE2KGZsb2F0KSIsCisgICAgICAgICAg
ICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1
ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KDApOworICAgICAgICAgICAgfSk7
CiAKLSAgICAgICAgZm9yIChsZXQgY2FzdCBvZiBCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmZ1
bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChjYXN0LnRvU3RyaW5nKCksIGZ1
bmMgPT4gY2FzdC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgdGhp
cy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRpdmUgdm9pZCBBbGxNZW1vcnlCYXJyaWVyV2l0
aEdyb3VwU3luYygpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSBmdW5jdGlvbigpIHt9OworICAgICAgICAgICAgfSk7CiAKLSAg
ICAgICAgZm9yIChsZXQgZ2V0dGVyIG9mIEJ1aWx0aW5WZWN0b3JJbmRleEdldHRlci5mdW5jdGlv
bnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZ2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMg
PT4gZ2V0dGVyLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworICAgICAgICB0aGlz
Ll9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSB2b2lkIERldmljZU1lbW9yeUJhcnJpZXJX
aXRoR3JvdXBTeW5jKCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IGZ1bmN0aW9uKCkge307CisgICAgICAgICAgICB9KTsKIAot
ICAgICAgICBmb3IgKGxldCBzZXR0ZXIgb2YgQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmZ1bmN0
aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwgZnVu
YyA9PiBzZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisgICAgICAgIHRo
aXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIHZvaWQgR3JvdXBNZW1vcnlCYXJyaWVy
V2l0aEdyb3VwU3luYygpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSBmdW5jdGlvbigpIHt9OworICAgICAgICAgICAgfSk7CiAK
LSAgICAgICAgZm9yIChsZXQgZXF1YWxpdHlPcGVyYXRvciBvZiBCdWlsdGluVmVjdG9yRXF1YWxp
dHlPcGVyYXRvci5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZXF1YWxp
dHlPcGVyYXRvci50b1N0cmluZygpLCBmdW5jID0+IGVxdWFsaXR5T3BlcmF0b3IuaW5zdGFudGlh
dGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisgICAgICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5
cGVOYW1lIG9mIGFsbFZlY3RvclR5cGVOYW1lcygpKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAu
c2V0KGBuYXRpdmUgdHlwZWRlZiAke25hdGl2ZVZlY3RvclR5cGVOYW1lfWAsIHR5cGUgPT4gewor
ICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOworICAgICAgICAgICAgfSk7
CisgICAgICAgIH0KIAogICAgICAgICBmb3IgKGxldCBnZXR0ZXIgb2YgQnVpbHRpblZlY3Rvckdl
dHRlci5mdW5jdGlvbnMoKSkKICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZ2V0dGVyLnRvU3Ry
aW5nKCksIGZ1bmMgPT4gZ2V0dGVyLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwog
CiAgICAgICAgIGZvciAobGV0IHNldHRlciBvZiBCdWlsdGluVmVjdG9yU2V0dGVyLmZ1bmN0aW9u
cygpKQogICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwgZnVuYyA9
PiBzZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisKKyAgICAgICAgZm9y
IChsZXQgZ2V0dGVyIG9mIEJ1aWx0aW5NYXRyaXhHZXR0ZXIuZnVuY3Rpb25zKCkpCisgICAgICAg
ICAgICB0aGlzLl9tYXAuc2V0KGdldHRlci50b1N0cmluZygpLCBmdW5jID0+IGdldHRlci5pbnN0
YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKworICAgICAgICBmb3IgKGxldCBzZXR0ZXIg
b2YgQnVpbHRpbk1hdHJpeFNldHRlci5mdW5jdGlvbnMoKSkKKyAgICAgICAgICAgIHRoaXMuX21h
cC5zZXQoc2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMgPT4gc2V0dGVyLmluc3RhbnRpYXRlSW1wbGVt
ZW50YXRpb24oZnVuYykpOwogICAgIH0KIAogICAgIGFkZCh0aGluZykKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01hdHJpeFR5cGUuanMgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9NYXRyaXhUeXBlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkOTk2YmY0NjMzNzcw
Njg1MTQwYjkwMDUyZmFhMTlkY2E2MjEyYTgKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9NYXRyaXhUeXBlLmpzCkBAIC0wLDAgKzEsNjEgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworInVzZSBzdHJpY3QiOworCitj
bGFzcyBNYXRyaXhUeXBlIGV4dGVuZHMgTmF0aXZlVHlwZSB7CisgICAgY29uc3RydWN0b3Iob3Jp
Z2luLCBuYW1lLCB0eXBlQXJndW1lbnRzKQorICAgIHsKKyAgICAgICAgc3VwZXIob3JpZ2luLCBu
YW1lLCB0eXBlQXJndW1lbnRzKTsKKyAgICB9CisKKyAgICBnZXQgZWxlbWVudFR5cGUoKSB7IHJl
dHVybiB0aGlzLnR5cGVBcmd1bWVudHNbMF07IH0KKyAgICBnZXQgbnVtUm93cygpIHsgcmV0dXJu
IHRoaXMudHlwZUFyZ3VtZW50c1sxXTsgfQorICAgIGdldCBudW1Db2x1bW5zKCkgeyByZXR1cm4g
dGhpcy50eXBlQXJndW1lbnRzWzJdOyB9CisgICAgZ2V0IG51bVJvd3NWYWx1ZSgpIHsgcmV0dXJu
IHRoaXMubnVtUm93cy52YWx1ZTsgfQorICAgIGdldCBudW1Db2x1bW5zVmFsdWUoKSB7IHJldHVy
biB0aGlzLm51bUNvbHVtbnMudmFsdWU7IH0KKyAgICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRoaXMu
ZWxlbWVudFR5cGUuc2l6ZSAqIHRoaXMubnVtUm93c1ZhbHVlICogdGhpcy5udW1Db2x1bW5zVmFs
dWU7IH0KKworICAgIHVuaWZ5SW1wbCh1bmlmaWNhdGlvbkNvbnRleHQsIG90aGVyKQorICAgIHsK
KyAgICAgICAgaWYgKCEob3RoZXIgaW5zdGFuY2VvZiBNYXRyaXhUeXBlKSkKKyAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKKworICAgICAgICBpZiAodGhpcy5udW1Sb3dzVmFsdWUgIT09IG90aGVy
Lm51bVJvd3NWYWx1ZSB8fCB0aGlzLm51bUNvbHVtbnNWYWx1ZSAhPT0gb3RoZXIubnVtQ29sdW1u
c1ZhbHVlKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIHJldHVybiB0aGlz
LmVsZW1lbnRUeXBlLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgb3RoZXIuZWxlbWVudFR5cGUp
OworICAgIH0KKworICAgIHBvcHVsYXRlRGVmYXVsdFZhbHVlKGJ1ZmZlciwgb2Zmc2V0KQorICAg
IHsKKyAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLm51bVJvd3NWYWx1ZSAqIHRoaXMu
cnVuQ29sdW1uc1ZhbHVlOyArK2kpCisgICAgICAgICAgICB0aGlzLmVsZW1lbnRUeXBlLnBvcHVs
YXRlRGVmYXVsdFZhbHVlKGJ1ZmZlciwgb2Zmc2V0ICsgaSAqIHRoaXMuZWxlbWVudFR5cGUuc2l6
ZSk7CisgICAgfQorCisgICAgdG9TdHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGBuYXRp
dmUgdHlwZWRlZiBtYXRyaXg8JHt0aGlzLmVsZW1lbnRUeXBlfSwgJHt0aGlzLm51bVJvd3NWYWx1
ZX0sICR7dGhpcy5udW1Db2x1bW5zVmFsdWV9PmA7CisgICAgfQorfQpkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZUNvbnRleHQuanMgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5qcwppbmRleCBkYzY4NTc4ZmY1NTZiMzEyYjA5
MjdlZjNjMGRmZmEwMDY4ZjFiZTYzLi5jODk5NjhjNzc5NjA3YjdjYWJjYzZhNWY5NjliNGFiOTEz
ZTcyNjNlIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29u
dGV4dC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5q
cwpAQCAtNzEsNyArNzEsNyBAQCBjbGFzcyBOYW1lQ29udGV4dCB7CiAKICAgICAgICAgaWYgKHRo
aW5nLmtpbmQgPT0gVHlwZSkgewogICAgICAgICAgICAgdGhpcy5fc2V0LmFkZCh0aGluZyk7Ci0g
ICAgICAgICAgICBpZiAodGhpbmcubmFtZSA9PSAidmVjdG9yIikgeworICAgICAgICAgICAgaWYg
KHRoaW5nLnR5cGVBcmd1bWVudHMgJiYgdGhpbmcudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMCkg
ewogICAgICAgICAgICAgICAgIGxldCBhcnJheSA9IHRoaXMuX21hcC5nZXQodGhpbmcubmFtZSk7
CiAgICAgICAgICAgICAgICAgaWYgKCFhcnJheSkgewogICAgICAgICAgICAgICAgICAgICBhcnJh
eSA9IFtdOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmF0aXZl
VHlwZS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hdGl2ZVR5cGUuanMKaW5k
ZXggMjM4MWI1YTZiMGIwMTBlMGZkZDRkYzUzNTUwYThlYTZiNGY4MzQ3Yi4uYjM2OGEyZThiMjRm
NTQ4ZWFiODhhMjgyNGI0OTViZTIzYzg3Y2I4NSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvTmF0aXZlVHlwZS5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9OYXRpdmVUeXBlLmpzCkBAIC02Niw2ICs2Niw4IEBAIGNsYXNzIE5hdGl2ZVR5cGUg
ZXh0ZW5kcyBUeXBlIHsKICAgICB7CiAgICAgICAgIGlmIChuYW1lID09ICJ2ZWN0b3IiKQogICAg
ICAgICAgICAgcmV0dXJuIG5ldyBWZWN0b3JUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50
cyk7CisgICAgICAgIGlmIChuYW1lID09ICJtYXRyaXgiKQorICAgICAgICAgICAgcmV0dXJuIG5l
dyBNYXRyaXhUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CiAKICAgICAgICAgcmV0
dXJuIG5ldyBOYXRpdmVUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CiAgICAgfQpk
aWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlcklu
ZGV4LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4
LmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NzAzNzFmYjkwZjJhMWZkMTVjMmRk
ZjZjNGEzOTZjMGYyMzljZWJmLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRl
eC5qcworKysgL2Rldi9udWxsCkBAIC0xLDcxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJpY3QiOwotCi1jbGFzcyBPcGVyYXRvckFu
ZGVySW5kZXhlciB7Ci0gICAgY29uc3RydWN0b3IoYmFzZVR5cGVOYW1lLCBhZGRyZXNzU3BhY2Up
Ci0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5hbWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAg
ICAgIHRoaXMuX2FkZHJlc3NTcGFjZSA9IGFkZHJlc3NTcGFjZTsKLSAgICB9Ci0KLSAgICBnZXQg
YWRkcmVzc1NwYWNlKCkgeyByZXR1cm4gdGhpcy5fYWRkcmVzc1NwYWNlOyB9Ci0gICAgZ2V0IGJh
c2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQotCi0gICAgdG9TdHJp
bmcoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGBuYXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0q
ICR7dGhpcy5hZGRyZXNzU3BhY2V9IG9wZXJhdG9yJltdKCR7dGhpcy5iYXNlVHlwZU5hbWV9W10g
JHt0aGlzLmFkZHJlc3NTcGFjZX0sdWludClgOwotICAgIH0KLQotICAgIHN0YXRpYyBmdW5jdGlv
bnMoKQotICAgIHsKLSAgICAgICAgaWYgKCF0aGlzLl9mdW5jdGlvbnMpIHsKLSAgICAgICAgICAg
IHRoaXMuX2Z1bmN0aW9ucyA9IFtdOwotCi0gICAgICAgICAgICBjb25zdCB0eXBlTmFtZXMgPSBb
ICJ1aW50IiwgImludCIsICJmbG9hdCIsICJib29sIiBdLmNvbmNhdChhbGxWZWN0b3JUeXBlTmFt
ZXMoKSk7Ci0gICAgICAgICAgICBjb25zdCBhZGRyZXNzU3BhY2VzID0gWyAidGhyZWFkIiwgInRo
cmVhZGdyb3VwIiwgImRldmljZSIsICJjb25zdGFudCIgXTsKLQotICAgICAgICAgICAgZm9yIChs
ZXQgYWRkcmVzc1NwYWNlIG9mIGFkZHJlc3NTcGFjZXMpIHsKLSAgICAgICAgICAgICAgICBmb3Ig
KGxldCB0eXBlTmFtZSBvZiB0eXBlTmFtZXMpCi0gICAgICAgICAgICAgICAgICAgIHRoaXMuX2Z1
bmN0aW9ucy5wdXNoKG5ldyBPcGVyYXRvckFuZGVySW5kZXhlcih0eXBlTmFtZSwgYWRkcmVzc1Nw
YWNlKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIHRoaXMuX2Z1
bmN0aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCi0g
ICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtyZWYsIGluZGV4XSwgbm9kZSkg
PT4gewotICAgICAgICAgICAgcmVmID0gcmVmLmxvYWRWYWx1ZSgpOwotICAgICAgICAgICAgaWYg
KCFyZWYpCi0gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUcmFwRXJyb3Iobm9kZS5vcmlnaW4u
b3JpZ2luU3RyaW5nLCAiTnVsbCBkZXJlZmVyZW5jZSIpOwotICAgICAgICAgICAgaW5kZXggPSBp
bmRleC5sb2FkVmFsdWUoKTsKLSAgICAgICAgICAgIGlmIChpbmRleCA+IHJlZi5sZW5ndGgpCi0g
ICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUcmFwRXJyb3Iobm9kZS5vcmlnaW4ub3JpZ2luU3Ry
aW5nLCAiQXJyYXkgaW5kZXggIiArIGluZGV4ICsgIiBpcyBvdXQgb2YgYm91bmRzIG9mICIgKyBy
ZWYpOwotICAgICAgICAgICAgcmV0dXJuIEVQdHIuYm94KHJlZi5wdHIucGx1cyhpbmRleCAqIG5v
ZGUuYXJndW1lbnRUeXBlc1swXS5lbGVtZW50VHlwZS5zaXplKSk7Ci0gICAgICAgIH07Ci0gICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKLSAgICB9Ci19ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9PcGVyYXRvckFuZGVySW5kZXhlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMTJmMDY3ODBmN2FkOTMyMmQ2
YzdiZTQ3OTBjZDQ0NjE4MWY4OWI0Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanMKQEAgLTAsMCArMSw1NSBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAq
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisidXNlIHN0cmljdCI7
CisKK2NsYXNzIE9wZXJhdG9yQW5kZXJJbmRleGVyIHsKKyAgICBjb25zdHJ1Y3RvcihiYXNlVHlw
ZU5hbWUsIGFkZHJlc3NTcGFjZSkKKyAgICB7CisgICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9
IGJhc2VUeXBlTmFtZTsKKyAgICAgICAgdGhpcy5fYWRkcmVzc1NwYWNlID0gYWRkcmVzc1NwYWNl
OworICAgIH0KKworICAgIGdldCBhZGRyZXNzU3BhY2UoKSB7IHJldHVybiB0aGlzLl9hZGRyZXNz
U3BhY2U7IH0KKyAgICBnZXQgYmFzZVR5cGVOYW1lKCkgeyByZXR1cm4gdGhpcy5fYmFzZVR5cGVO
YW1lOyB9CisKKyAgICB0b1N0cmluZygpCisgICAgeworICAgICAgICByZXR1cm4gYG5hdGl2ZSAk
e3RoaXMuYmFzZVR5cGVOYW1lfSogJHt0aGlzLmFkZHJlc3NTcGFjZX0gb3BlcmF0b3ImW10oJHt0
aGlzLmJhc2VUeXBlTmFtZX1bXSAke3RoaXMuYWRkcmVzc1NwYWNlfSx1aW50KWA7CisgICAgfQor
CisgICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQorICAgIHsKKyAgICAgICAgZnVu
Yy5pbXBsZW1lbnRhdGlvbiA9IChbcmVmLCBpbmRleF0sIG5vZGUpID0+IHsKKyAgICAgICAgICAg
IHJlZiA9IHJlZi5sb2FkVmFsdWUoKTsKKyAgICAgICAgICAgIGlmICghcmVmKQorICAgICAgICAg
ICAgICAgIHRocm93IG5ldyBXVHJhcEVycm9yKG5vZGUub3JpZ2luLm9yaWdpblN0cmluZywgIk51
bGwgZGVyZWZlcmVuY2UiKTsKKyAgICAgICAgICAgIGluZGV4ID0gaW5kZXgubG9hZFZhbHVlKCk7
CisgICAgICAgICAgICBpZiAoaW5kZXggPiByZWYubGVuZ3RoKQorICAgICAgICAgICAgICAgIHRo
cm93IG5ldyBXVHJhcEVycm9yKG5vZGUub3JpZ2luLm9yaWdpblN0cmluZywgIkFycmF5IGluZGV4
ICIgKyBpbmRleCArICIgaXMgb3V0IG9mIGJvdW5kcyBvZiAiICsgcmVmKTsKKyAgICAgICAgICAg
IHJldHVybiBFUHRyLmJveChyZWYucHRyLnBsdXMoaW5kZXggKiBub2RlLmFyZ3VtZW50VHlwZXNb
MF0uZWxlbWVudFR5cGUuc2l6ZSkpOworICAgICAgICB9OworICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uRGF0YSA9IHRoaXM7CisgICAgfQorfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JCb29sLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvT3BlcmF0b3JCb29sLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1OGJi
MGUwOWI4MGJlZTEwNzA4OWIxYzlkMjAwY2JjNjhhNWNiOWQzLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L09wZXJhdG9yQm9vbC5qcworKysgL2Rldi9udWxsCkBAIC0xLDY4ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElT
JycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJpY3QiOwotCi1jbGFz
cyBPcGVyYXRvckJvb2wgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSkKLSAgICB7Ci0g
ICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJhc2VUeXBlTmFtZTsKLSAgICB9Ci0KLSAgICBn
ZXQgYmFzZVR5cGVOYW1lKCkgeyByZXR1cm4gdGhpcy5fYmFzZVR5cGVOYW1lOyB9Ci0KLSAgICB0
b1N0cmluZygpCi0gICAgewotICAgICAgICByZXR1cm4gYG5hdGl2ZSBvcGVyYXRvciBib29sKCR7
dGhpcy5iYXNlVHlwZU5hbWV9KWA7Ci0gICAgfQotCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0g
ICAgewotICAgICAgICAvLyBGSVhNRTogVGhlc2Ugb3BlcmF0b3JzIHNob3VsZCBiZSBpbiB0aGUg
c3RhbmRhcmQgbGlicmFyeSB3aGVyZSBwb3NzaWJsZS4KLSAgICAgICAgaWYgKCFPcGVyYXRvckJv
b2wuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgT3BlcmF0b3JCb29sLl9mdW5jdGlvbnMgPSBb
XTsKLQotICAgICAgICAgICAgLy8gYm9vbCBpcyBub3QgaW5jbHVkZWQgYmVjYXVzZSB0aGlzIGlz
IGdlbmVyYXRlZCBieSB0aGUgY29weSBjb25zdHJ1Y3Rvci4KLSAgICAgICAgICAgIC8vIEZJWE1F
OiBJbmNsdWRlIGFsbCBuYXRpdmUgdHlwZXMuCi0gICAgICAgICAgICBjb25zdCB0eXBlTmFtZXMg
PSBbICJ1Y2hhciIsICJ1aW50IiwgImludCIsICJmbG9hdCIgXS5jb25jYXQoYWxsVmVjdG9yVHlw
ZU5hbWVzKCkpOwotCi0gICAgICAgICAgICBmb3IgKGxldCB0eXBlTmFtZSBvZiB0eXBlTmFtZXMp
Ci0gICAgICAgICAgICAgICAgT3BlcmF0b3JCb29sLl9mdW5jdGlvbnMucHVzaChuZXcgT3BlcmF0
b3JCb29sKHR5cGVOYW1lKSk7Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIE9wZXJhdG9yQm9v
bC5fZnVuY3Rpb25zOwotICAgIH0KLQotICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykKLSAgICB7Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3JlZl0sIG5vZGUpID0+
IHsKLSAgICAgICAgICAgIGNvbnN0IHNpemUgPSBub2RlLmFyZ3VtZW50VHlwZXNbMF0uc2l6ZTsK
LSAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZTsgKytpKSB7Ci0gICAgICAgICAg
ICAgICAgaWYgKCEhcmVmLmdldChpKSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEVQdHIu
Ym94KHRydWUpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgcmV0dXJuIEVQdHIuYm94KGZh
bHNlKTsKLSAgICAgICAgfQotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7
Ci0gICAgfQotfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1BhcnNlLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUGFyc2UuanMKaW5kZXggYTIwMjQ4ZDM2MTljMDUwZjdkNGIzOGEyZWEwY2QwYjI5
ZjJjMTg3OS4uMzIwNTViMzFiZmJkMWU1OGQxYjY3NmFkYjcwYWI4MDM4ZGU0MjhkZiAxMDA2NDQK
LS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUGFyc2UuanMKKysrIGIvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUGFyc2UuanMKQEAgLTk1MywyMyArOTUzLDI5IEBAIGZ1
bmN0aW9uIHBhcnNlKHByb2dyYW0sIG9yaWdpbiwgb3JpZ2luS2luZCwgbGluZU51bWJlck9mZnNl
dCwgdGV4dCkKICAgICB9CiAgICAgCiAgICAgZm9yICg7OykgeworICAgICAgICB2YXIgdGhpbmc7
CiAgICAgICAgIGxldCB0b2tlbiA9IGxleGVyLnBlZWsoKTsKICAgICAgICAgaWYgKCF0b2tlbikK
ICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgaWYgKHRva2VuLnRleHQgPT0gIjsiKQogICAg
ICAgICAgICAgbGV4ZXIubmV4dCgpOwogICAgICAgICBlbHNlIGlmICh0b2tlbi50ZXh0ID09ICJ0
eXBlZGVmIikKLSAgICAgICAgICAgIHByb2dyYW0uYWRkKHBhcnNlVHlwZURlZigpKTsKKyAgICAg
ICAgICAgIHRoaW5nID0gcGFyc2VUeXBlRGVmKCk7CiAgICAgICAgIGVsc2UgaWYgKG9yaWdpbktp
bmQgPT0gIm5hdGl2ZSIgJiYgdG9rZW4udGV4dCA9PSAibmF0aXZlIikKLSAgICAgICAgICAgIHBy
b2dyYW0uYWRkKHBhcnNlTmF0aXZlKCkpOworICAgICAgICAgICAgdGhpbmcgPSBwYXJzZU5hdGl2
ZSgpOwogICAgICAgICBlbHNlIGlmIChvcmlnaW5LaW5kID09ICJuYXRpdmUiICYmIHRva2VuLnRl
eHQgPT0gInJlc3RyaWN0ZWQiKQotICAgICAgICAgICAgcHJvZ3JhbS5hZGQocGFyc2VSZXN0cmlj
dGVkRnVuY0RlZigpKTsKKyAgICAgICAgICAgIHRoaW5nID0gcGFyc2VSZXN0cmljdGVkRnVuY0Rl
ZigpOwogICAgICAgICBlbHNlIGlmICh0b2tlbi50ZXh0ID09ICJzdHJ1Y3QiKQotICAgICAgICAg
ICAgcHJvZ3JhbS5hZGQocGFyc2VTdHJ1Y3RUeXBlKCkpOworICAgICAgICAgICAgdGhpbmcgPSBw
YXJzZVN0cnVjdFR5cGUoKTsKICAgICAgICAgZWxzZSBpZiAodG9rZW4udGV4dCA9PSAiZW51bSIp
Ci0gICAgICAgICAgICBwcm9ncmFtLmFkZChwYXJzZUVudW1UeXBlKCkpOworICAgICAgICAgICAg
dGhpbmcgPSBwYXJzZUVudW1UeXBlKCk7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIHByb2dy
YW0uYWRkKHBhcnNlRnVuY0RlZigpKTsKKyAgICAgICAgICAgIHRoaW5nID0gcGFyc2VGdW5jRGVm
KCk7CisgICAgICAgIGlmICh0aGluZykgeworICAgICAgICAgICAgcHJpbnQoYFBhcnNlZCAke3Ro
aW5nfWApOworICAgICAgICAgICAgLy95aWVsZDsKKyAgICAgICAgICAgIHByb2dyYW0uYWRkKHRo
aW5nKTsKKyAgICAgICAgfQogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1ByZXBhcmUuanMKaW5kZXggOWZhY2E4NmUyMDU3NTViMmM2YTY2ZjQxMmI1NjkyZTk5ZTdiMDNh
Zi4uN2Q2MzEyOWM5MWY1MWNiYTcwZmY5NGNkYzJlYTQxNmMxZTk2MDk1ZCAxMDA2NDQKLS0tIGEv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5qcworKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzCkBAIC0yNiw1MiArMjYsMTIyIEBACiAKIGxl
dCBwcmVwYXJlID0gKCgpID0+IHsKICAgICBsZXQgc3RhbmRhcmRQcm9ncmFtOworICAgIGZ1bmN0
aW9uIHRpbWVDYWxsYmFjayhtZXNzYWdlLCBjYWxsYmFjaykgeworICAgICAgICBwcmludChtZXNz
YWdlKTsKKyAgICAgICAgdmFyIHRoZW4gPSBEYXRlLm5vdygpOworICAgICAgICBjYWxsYmFjaygp
OworICAgICAgICB2YXIgbm93ID0gRGF0ZS5ub3coKTsKKyAgICAgICAgcHJpbnQoYFRvb2sgJHtu
b3cgLSB0aGVufW1zLmApOworICAgIH0KKwogICAgIHJldHVybiBmdW5jdGlvbihvcmlnaW4sIGxp
bmVOdW1iZXJPZmZzZXQsIHRleHQpIHsKICAgICAgICAgaWYgKCFzdGFuZGFyZFByb2dyYW0pIHsK
ICAgICAgICAgICAgIHN0YW5kYXJkUHJvZ3JhbSA9IG5ldyBQcm9ncmFtKCk7CiAgICAgICAgICAg
ICBsZXQgZmlyc3RMaW5lT2ZTdGFuZGFyZExpYnJhcnkgPSAyODsgLy8gU2VlIFN0YW5kYXJkTGli
cmFyeS5qcy4KLSAgICAgICAgICAgIHBhcnNlKHN0YW5kYXJkUHJvZ3JhbSwgIi9pbnRlcm5hbC9z
dGRsaWIiLCAibmF0aXZlIiwgZmlyc3RMaW5lT2ZTdGFuZGFyZExpYnJhcnkgLSAxLCBzdGFuZGFy
ZExpYnJhcnkpOworICAgICAgICAgICAgdGltZUNhbGxiYWNrKCJQYXJzaW5nIHN0YW5kYXJkIGxp
YnJhcnkuLi4iLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICBwYXJzZShzdGFuZGFyZFBy
b2dyYW0sICIvaW50ZXJuYWwvc3RkbGliIiwgIm5hdGl2ZSIsIGZpcnN0TGluZU9mU3RhbmRhcmRM
aWJyYXJ5IC0gMSwgc3RhbmRhcmRMaWJyYXJ5KTsKKyAgICAgICAgICAgIH0pOwogICAgICAgICB9
CiAgICAgICAgIAotICAgICAgICBsZXQgcHJvZ3JhbSA9IGNsb25lUHJvZ3JhbShzdGFuZGFyZFBy
b2dyYW0pOworICAgICAgICBsZXQgcHJvZ3JhbTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJDbG9u
aW5nIHByb2dyYW0uLi4iLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHByb2dyYW0gPSBjbG9u
ZVByb2dyYW0oc3RhbmRhcmRQcm9ncmFtKTsKKyAgICAgICAgfSk7CiAgICAgICAgIGlmIChhcmd1
bWVudHMubGVuZ3RoKSB7Ci0gICAgICAgICAgICBwYXJzZShwcm9ncmFtLCBvcmlnaW4sICJ1c2Vy
IiwgbGluZU51bWJlck9mZnNldCwgdGV4dCk7Ci0gICAgICAgICAgICBwcm9ncmFtID0gcHJvZ3Jh
bVdpdGhVbm5lY2Vzc2FyeVRoaW5nc1JlbW92ZWQocHJvZ3JhbSk7CisgICAgICAgICAgICB0aW1l
Q2FsbGJhY2soIlBhcnNpbmcgdXNlciBwcm9ncmFtIiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAg
ICAgICAgcGFyc2UocHJvZ3JhbSwgb3JpZ2luLCAidXNlciIsIGxpbmVOdW1iZXJPZmZzZXQsIHRl
eHQpOworICAgICAgICAgICAgfSk7CisgICAgICAgICAgICB0aW1lQ2FsbGJhY2soIlJlbW92aW5n
IHVubmVjZXNzYXJ5IHRoaW5ncyIsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgIHByb2dy
YW0gPSBwcm9ncmFtV2l0aFVubmVjZXNzYXJ5VGhpbmdzUmVtb3ZlZChwcm9ncmFtKTsKKyAgICAg
ICAgICAgIH0pOwogICAgICAgICB9CiAgICAgICAgIAotICAgICAgICBmb2xkQ29uc3RleHBycyhw
cm9ncmFtKTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJGb2xkaW5nIGNvbnN0ZXhwcnMiLCBmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgIGZvbGRDb25zdGV4cHJzKHByb2dyYW0pOworICAgICAgICB9
KTsKIAogICAgICAgICBsZXQgbmFtZVJlc29sdmVyID0gY3JlYXRlTmFtZVJlc29sdmVyKHByb2dy
YW0pOwotICAgICAgICByZXNvbHZlTmFtZXNJblR5cGVzKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7
Ci0gICAgICAgIHJlc29sdmVUeXBlRGVmc0luVHlwZXMocHJvZ3JhbSk7Ci0gICAgICAgIGNoZWNr
UmVjdXJzaXZlVHlwZXMocHJvZ3JhbSk7Ci0gICAgICAgIHN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3Nv
cnMocHJvZ3JhbSk7Ci0gICAgICAgIHN5bnRoZXNpemVPcGVyYXRvckJvb2wocHJvZ3JhbSk7Ci0g
ICAgICAgIHN5bnRoZXNpemVFbnVtRnVuY3Rpb25zKHByb2dyYW0pOwotICAgICAgICBzeW50aGVz
aXplQXJyYXlPcGVyYXRvckxlbmd0aChwcm9ncmFtKTsKLSAgICAgICAgc3ludGhlc2l6ZUNvcHlD
b25zdHJ1Y3Rvck9wZXJhdG9yKHByb2dyYW0pOwotICAgICAgICBzeW50aGVzaXplRGVmYXVsdENv
bnN0cnVjdG9yT3BlcmF0b3IocHJvZ3JhbSk7Ci0gICAgICAgIHJlc29sdmVOYW1lc0luRnVuY3Rp
b25zKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7Ci0gICAgICAgIHJlc29sdmVUeXBlRGVmc0luRnVu
Y3Rpb25zKHByb2dyYW0pOwotICAgICAgICBjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9ncmFt
KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJSZXNvbHZpbmcgbmFtZXMgaW4gVHlwZXMiLCBmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgIHJlc29sdmVOYW1lc0luVHlwZXMocHJvZ3JhbSwgbmFtZVJl
c29sdmVyKTsKKyAgICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiUmVzb2x2aW5nIHR5
cGVkZWZzIGluIHR5cGVzIiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICByZXNvbHZlVHlwZURl
ZnNJblR5cGVzKHByb2dyYW0pOworICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJD
aGVja2luZyByZWN1cnNpdmUgdHlwZXMiLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGNoZWNr
UmVjdXJzaXZlVHlwZXMocHJvZ3JhbSk7CisgICAgICAgIH0pOworICAgICAgICB0aW1lQ2FsbGJh
Y2soIlN5bnRoZXNpemluZyBzdHJ1Y3QgYWNjZXNzb3JzIiwgZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICBzeW50aGVzaXplU3RydWN0QWNjZXNzb3JzKHByb2dyYW0pOworICAgICAgICB9KTsKKyAg
ICAgICAgdGltZUNhbGxiYWNrKCJTeW50aGVzaXppbmcgZW51bSBmdW5jdGlvbnMiLCBmdW5jdGlv
bigpIHsKKyAgICAgICAgICAgIHN5bnRoZXNpemVFbnVtRnVuY3Rpb25zKHByb2dyYW0pOworICAg
ICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJTeW50aGVzaXppbmcgYXJyYXkgb3BlcmF0
b3IgbGVuZ3RoIiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBzeW50aGVzaXplQXJyYXlPcGVy
YXRvckxlbmd0aChwcm9ncmFtKTsKKyAgICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygi
U3ludGhlc2l6aW5nIGNvcHkgY29uc3RydWN0b3Igb3BlcmF0b3IiLCBmdW5jdGlvbigpIHsKKyAg
ICAgICAgICAgIHN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvcihwcm9ncmFtKTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiU3ludGhlc2l6aW5nIGRlZmF1bHQgY29u
c3RydWN0b3Igb3BlcmF0b3IiLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHN5bnRoZXNpemVE
ZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcihwcm9ncmFtKTsKKyAgICAgICAgfSk7CisgICAgICAg
IHRpbWVDYWxsYmFjaygiUmVzb2x2aW5nIG5hbWVzIGluIGZ1bmN0aW9ucyIsIGZ1bmN0aW9uKCkg
eworICAgICAgICAgICAgcmVzb2x2ZU5hbWVzSW5GdW5jdGlvbnMocHJvZ3JhbSwgbmFtZVJlc29s
dmVyKTsKKyAgICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiUmVzb2x2aW5nIHR5cGVk
ZWZzIGluIGZ1bmN0aW9ucyIsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgcmVzb2x2ZVR5cGVE
ZWZzSW5GdW5jdGlvbnMocHJvZ3JhbSk7CisgICAgICAgIH0pOworICAgICAgICB0aW1lQ2FsbGJh
Y2soIkNoZWNraW5nIHR5cGVzIHdpdGggYXJndW1lbnRzIiwgZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICBjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9ncmFtKTsKKyAgICAgICAgfSk7CiAgICAg
ICAgIAotICAgICAgICBjaGVjayhwcm9ncmFtKTsKLSAgICAgICAgY2hlY2tMaXRlcmFsVHlwZXMo
cHJvZ3JhbSk7Ci0gICAgICAgIHJlc29sdmVQcm9wZXJ0aWVzKHByb2dyYW0pOwotICAgICAgICBm
aW5kSGlnaFpvbWJpZXMocHJvZ3JhbSk7Ci0gICAgICAgIGNoZWNrTGl0ZXJhbFR5cGVzKHByb2dy
YW0pOwotICAgICAgICBjaGVja1Byb2dyYW1XcmFwcGVkKHByb2dyYW0pOwotICAgICAgICBjaGVj
a1JldHVybnMocHJvZ3JhbSk7Ci0gICAgICAgIGNoZWNrVW5yZWFjaGFibGVDb2RlKHByb2dyYW0p
OwotICAgICAgICBjaGVja0xvb3BzKHByb2dyYW0pOwotICAgICAgICBjaGVja1JlY3Vyc2lvbihw
cm9ncmFtKTsKLSAgICAgICAgY2hlY2tQcm9ncmFtV3JhcHBlZChwcm9ncmFtKTsKLSAgICAgICAg
Y2hlY2tUeXBlc1dpdGhBcmd1bWVudHMocHJvZ3JhbSk7Ci0gICAgICAgIGZpbmRIaWdoWm9tYmll
cyhwcm9ncmFtKTsKLSAgICAgICAgcHJvZ3JhbS52aXNpdChuZXcgU3RydWN0TGF5b3V0QnVpbGRl
cigpKTsKLSAgICAgICAgaW5saW5lKHByb2dyYW0pOworICAgICAgICB0aW1lQ2FsbGJhY2soIkNo
ZWNraW5nLi4uIiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBjaGVjayhwcm9ncmFtKTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgbGl0ZXJhbCB0eXBlcyIs
IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgY2hlY2tMaXRlcmFsVHlwZXMocHJvZ3JhbSk7Cisg
ICAgICAgIH0pOworICAgICAgICB0aW1lQ2FsbGJhY2soIlJlc29sdmluZyBwcm9wZXJ0aWVzIiwg
ZnVuY3Rpb24oKSB7CisgICAgICAgICAgICByZXNvbHZlUHJvcGVydGllcyhwcm9ncmFtKTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiRmluZGluZyBoaWdoIHpvbWJpZXMiLCBm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgIGZpbmRIaWdoWm9tYmllcyhwcm9ncmFtKTsKKyAgICAg
ICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgbGl0ZXJhbCB0eXBlcyAyIiwg
ZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBjaGVja0xpdGVyYWxUeXBlcyhwcm9ncmFtKTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgcHJvZ3JhbSB3cmFwcGVk
IiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBjaGVja1Byb2dyYW1XcmFwcGVkKHByb2dyYW0p
OworICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJDaGVja2luZyByZXR1cm5zIiwg
ZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBjaGVja1JldHVybnMocHJvZ3JhbSk7CisgICAgICAg
IH0pOworICAgICAgICB0aW1lQ2FsbGJhY2soIkNoZWNraW5nIHVucmVhY2hhYmxlIGNvZGUiLCBm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgIGNoZWNrVW5yZWFjaGFibGVDb2RlKHByb2dyYW0pOwor
ICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJDaGVja2luZyBsb29wcyIsIGZ1bmN0
aW9uKCkgeworICAgICAgICAgICAgY2hlY2tMb29wcyhwcm9ncmFtKTsKKyAgICAgICAgfSk7Cisg
ICAgICAgIHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgcmVjdXJzaW9uIiwgZnVuY3Rpb24oKSB7Cisg
ICAgICAgICAgICBjaGVja1JlY3Vyc2lvbihwcm9ncmFtKTsKKyAgICAgICAgfSk7CisgICAgICAg
IHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgcHJvZ3JhbSB3cmFwcGVkIDIiLCBmdW5jdGlvbigpIHsK
KyAgICAgICAgICAgIGNoZWNrUHJvZ3JhbVdyYXBwZWQocHJvZ3JhbSk7CisgICAgICAgIH0pOwor
ICAgICAgICB0aW1lQ2FsbGJhY2soIkNoZWNraW5nIHR5cGVzIHdpdGggYXJndW1lbnRzIDIiLCBm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgIGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzKHByb2dyYW0p
OworICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJDaGVja2luZyBoaWdoIHpvbWJp
ZXMgMiIsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgZmluZEhpZ2hab21iaWVzKHByb2dyYW0p
OworICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJCdWlsZGluZyBzdHJ1Y3QgbGF5
b3V0cyIsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgcHJvZ3JhbS52aXNpdChuZXcgU3RydWN0
TGF5b3V0QnVpbGRlcigpKTsKKyAgICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiSW5s
aW5pbmciLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGlubGluZShwcm9ncmFtKTsKKyAgICAg
ICAgfSk7CisgICAgICAgIHByaW50KCJEb25lIGNvbXBpbGluZyEiKTsKICAgICAgICAgCiAgICAg
ICAgIHJldHVybiBwcm9ncmFtOwogICAgIH07CiB9KSgpOwotCmRpZmYgLS1naXQgYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUHJvZ3JhbS5qcwppbmRleCAxMTE2YzRmNTc3NTYyMjE1ZmRkNzQyOGEzMTc1Nzlh
OTI5MTY1NDE0Li5hYzFkZWZiNGZiYWFhNmU4ZTEzNDI5NzM0Y2NmNDkxNTMzOWJhNTM5IDEwMDY0
NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzCisrKyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Byb2dyYW0uanMKQEAgLTUxLDcgKzUxLDcgQEAg
Y2xhc3MgUHJvZ3JhbSBleHRlbmRzIE5vZGUgewogICAgICAgICAgICAgICAgIHRoaXMuZnVuY3Rp
b25zLnNldChzdGF0ZW1lbnQubmFtZSwgYXJyYXkgPSBbXSk7CiAgICAgICAgICAgICBhcnJheS5w
dXNoKHN0YXRlbWVudCk7CiAgICAgICAgIH0gZWxzZSBpZiAoc3RhdGVtZW50IGluc3RhbmNlb2Yg
VHlwZSkgewotICAgICAgICAgICAgaWYgKHN0YXRlbWVudC5pc05hdGl2ZSAmJiBzdGF0ZW1lbnQu
bmFtZSA9PSAidmVjdG9yIikgeworICAgICAgICAgICAgaWYgKHN0YXRlbWVudC5pc05hdGl2ZSAm
JiBzdGF0ZW1lbnQudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMCkgewogICAgICAgICAgICAgICAg
IGxldCBhcnJheSA9IHRoaXMudHlwZXMuZ2V0KHN0YXRlbWVudC5uYW1lKTsKICAgICAgICAgICAg
ICAgICBpZiAoIWFycmF5KQogICAgICAgICAgICAgICAgICAgICB0aGlzLnR5cGVzLnNldChzdGF0
ZW1lbnQubmFtZSwgYXJyYXkgPSBbXSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9SZXdyaXRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jl
d3JpdGVyLmpzCmluZGV4IDk0ZDNhNzYyZTM4ZmI5MjFjNTg0Y2JhZmZmMWY1OTQ3OGViYjc5MWQu
LjdjMmRmYmE2OTU1MzM5ODg0ZGJiZjkxMDQ3OGQ0M2VmZmRlYzY1Y2YgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVyLmpzCkBAIC0zOTEsNSArMzkxLDExIEBAIGNsYXNz
IFJld3JpdGVyIHsKICAgICAgICAgdmVjVHlwZS5fZWxlbWVudFR5cGUgPSBub2RlLmVsZW1lbnRU
eXBlLnZpc2l0KHRoaXMpOwogICAgICAgICByZXR1cm4gdmVjVHlwZTsKICAgICB9CisKKyAgICB2
aXNpdE1hdHJpeFR5cGUobm9kZSkKKyAgICB7CisgICAgICAgIGNvbnN0IG1hdFR5cGUgPSBuZXcg
TWF0cml4VHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lLCBub2RlLnR5cGVBcmd1bWVudHMubWFw
KGFyZ3VtZW50ID0+IGFyZ3VtZW50LnZpc2l0KHRoaXMpKSk7CisgICAgICAgIHJldHVybiBtYXRU
eXBlOworICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvU1BJUlYuaHRtbCBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1NQSVJWLmh0bWwK
aW5kZXggZmYyYzAyYzdiYWZjYTRkMWUyY2Y4MzNjNmM3OWZhMWNlYzg5MDEzYy4uNzhkMDA4Zjgz
NWY5ZTljMjM0ZWYyZGY2ZDZkZWVhM2Y3NDI2Y2U2NSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TUElSVi5odG1sCkBAIC0xNyw3ICsxNyw2IEBAIHRkIHsKICAgICA8c2NyaXB0IHNy
Yz0iQ3JlYXRlTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNyZWF0ZUxp
dGVyYWxUeXBlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iUHJvcGVydHlBY2Nlc3NF
eHByZXNzaW9uLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iU3dpenpsZU9wLmpzIj48
L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTmF0aXZlVHlwZS5qcyI+PC9zY3JpcHQ+CiAKICAg
ICA8c2NyaXB0IHNyYz0iQWRkcmVzc1NwYWNlLmpzIj48L3NjcmlwdD4KQEAgLTI5LDEyICsyOCwx
MCBAQCB0ZCB7CiAgICAgPHNjcmlwdCBzcmM9IkJsb2NrLmpzIj48L3NjcmlwdD4KICAgICA8c2Ny
aXB0IHNyYz0iQm9vbExpdGVyYWwuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJCcmVh
ay5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3Rv
cnMuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJCdWlsdGluTWF0cml4R2V0dGVyLmpz
Ij48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iQnVpbHRpbk1hdHJpeFNldHRlci5qcyI+PC9z
Y3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwvc2NyaXB0
PgogICAgIDxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9yU2V0dGVyLmpzIj48L3NjcmlwdD4KLSAg
ICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4R2V0dGVyLmpzIj48L3NjcmlwdD4KLSAg
ICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmpzIj48L3NjcmlwdD4KLSAg
ICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuanMiPjwvc2NyaXB0
PgogICAgIDxzY3JpcHQgc3JjPSJDYWxsRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9IkNhbGxGdW5jdGlvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNo
ZWNrLmpzIj48L3NjcmlwdD4KQEAgLTk2LDYgKzkzLDcgQEAgdGQgewogICAgIDxzY3JpcHQgc3Jj
PSJMb29wQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9Ik1ha2VBcnJheVJl
ZkV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJNYWtlUHRyRXhwcmVz
c2lvbi5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ik1hdHJpeFR5cGUuanMiPjwvc2Ny
aXB0PgogICAgIDxzY3JpcHQgc3JjPSJOYW1lQ29udGV4dC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9Ik5hbWVGaW5kZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJOYW1l
UmVzb2x2ZXIuanMiPjwvc2NyaXB0PgpAQCAtMTAzLDkgKzEwMSw4IEBAIHRkIHsKICAgICA8c2Ny
aXB0IHNyYz0iTm9ybWFsVXNlUHJvcGVydHlSZXNvbHZlci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9Ik51bGxMaXRlcmFsLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTnVs
bFR5cGUuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFuZGVySW5kZXgu
anMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFuZGVySW5kZXhlci5qcyI+
PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQXJyYXlSZWZMZW5ndGguanMiPjwv
c2NyaXB0PgotICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckJvb2wuanMiPjwvc2NyaXB0PgogICAg
IDxzY3JpcHQgc3JjPSJPcmlnaW5LaW5kLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0i
T3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9
IlBhcnNlLmpzIj48L3NjcmlwdD4KQEAgLTEzMyw3ICsxMzAsNiBAQCB0ZCB7CiAgICAgPHNjcmlw
dCBzcmM9IlN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KICAgICA8
c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogICAgIDxz
Y3JpcHQgc3JjPSJTeW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9IlN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+
CiAgICAgPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5q
cyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlRlcm5hcnlFeHByZXNzaW9uLmpzIj48L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJk
TGlicmFyeS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFy
eS5qcwppbmRleCA4MTkwYTQzNTY5MjNhNjFlNTQ4NWJkZDRmMTgwZDEzODM3NzQ4OThiLi45ODUx
ZjdlYTcwMjQ0MmNhNzlhZGJmMGVkYWM4YTBlMTlhMmVmY2Y1IDEwMDY0NAotLS0gYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGFuZGFyZExpYnJhcnkuanMKKysrIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhbmRhcmRMaWJyYXJ5LmpzCkBAIC0zMCw2ICszMCw4IEBA
IGxldCBzdGFuZGFyZExpYnJhcnkgPSBgCiAvLyBJbnRyaW5zaWNzLmpzLgogCiAvLyBOZWVkIHRv
IGJvb3RzdHJhcCB2b2lkIGZpcnN0LgorLy8gVGhpcyB3YXMgYXV0b2dlbmVyYXRlZCBmcm9tIEdl
bmVyYXRlX1N0YW5kYXJkX0xpYnJhcnkuc3dpZnQhIERvIG5vdCBlZGl0ISEKKwogbmF0aXZlIHR5
cGVkZWYgdm9pZDsKIG5hdGl2ZSB0eXBlZGVmIGJvb2w7CiBuYXRpdmUgdHlwZWRlZiB1Y2hhcjsK
QEAgLTQyLDcgKzQ0LDYgQEAgbmF0aXZlIHR5cGVkZWYgaGFsZjsKIG5hdGl2ZSB0eXBlZGVmIGZs
b2F0OwogbmF0aXZlIHR5cGVkZWYgYXRvbWljX2ludDsKIG5hdGl2ZSB0eXBlZGVmIGF0b21pY191
aW50OwotCiBuYXRpdmUgdHlwZWRlZiB2ZWN0b3I8Ym9vbCwgMj47CiB0eXBlZGVmIGJvb2wyID0g
dmVjdG9yPGJvb2wsIDI+OwogbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGJvb2wsIDM+OwpAQCAtOTgs
NDAgKzk5LDU3NyBAQCB0eXBlZGVmIGZsb2F0MyA9IHZlY3RvcjxmbG9hdCwgMz47CiBuYXRpdmUg
dHlwZWRlZiB2ZWN0b3I8ZmxvYXQsIDQ+OwogdHlwZWRlZiBmbG9hdDQgPSB2ZWN0b3I8ZmxvYXQs
IDQ+OwogCi1uYXRpdmUgb3BlcmF0b3IgaW50KHVpbnQpOwotbmF0aXZlIG9wZXJhdG9yIGludCh1
Y2hhcik7Ci1uYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKLW5hdGl2ZSBvcGVyYXRvciB1aW50
KGludCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWludCh1Y2hhcik7Ci1uYXRpdmUgb3BlcmF0b3IgdWlu
dChmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWNoYXIoaW50KTsKK25hdGl2ZSB0eXBlZGVmIG1h
dHJpeDxoYWxmLCAyLCAyPjsKK3R5cGVkZWYgaGFsZjJ4MiA9IG1hdHJpeDxoYWxmLCAyLCAyPjsK
K25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCAzPjsKK3R5cGVkZWYgaGFsZjJ4MyA9IG1h
dHJpeDxoYWxmLCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCA0PjsKK3R5
cGVkZWYgaGFsZjJ4NCA9IG1hdHJpeDxoYWxmLCAyLCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJp
eDxoYWxmLCAzLCAyPjsKK3R5cGVkZWYgaGFsZjN4MiA9IG1hdHJpeDxoYWxmLCAzLCAyPjsKK25h
dGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCAzPjsKK3R5cGVkZWYgaGFsZjN4MyA9IG1hdHJp
eDxoYWxmLCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCA0PjsKK3R5cGVk
ZWYgaGFsZjN4NCA9IG1hdHJpeDxoYWxmLCAzLCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxo
YWxmLCA0LCAyPjsKK3R5cGVkZWYgaGFsZjR4MiA9IG1hdHJpeDxoYWxmLCA0LCAyPjsKK25hdGl2
ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCAzPjsKK3R5cGVkZWYgaGFsZjR4MyA9IG1hdHJpeDxo
YWxmLCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCA0PjsKK3R5cGVkZWYg
aGFsZjR4NCA9IG1hdHJpeDxoYWxmLCA0LCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9h
dCwgMiwgMj47Cit0eXBlZGVmIGZsb2F0MngyID0gbWF0cml4PGZsb2F0LCAyLCAyPjsKK25hdGl2
ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgMz47Cit0eXBlZGVmIGZsb2F0MngzID0gbWF0cml4
PGZsb2F0LCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgND47Cit0eXBl
ZGVmIGZsb2F0Mng0ID0gbWF0cml4PGZsb2F0LCAyLCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJp
eDxmbG9hdCwgMywgMj47Cit0eXBlZGVmIGZsb2F0M3gyID0gbWF0cml4PGZsb2F0LCAzLCAyPjsK
K25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgMz47Cit0eXBlZGVmIGZsb2F0M3gzID0g
bWF0cml4PGZsb2F0LCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgND47
Cit0eXBlZGVmIGZsb2F0M3g0ID0gbWF0cml4PGZsb2F0LCAzLCA0PjsKK25hdGl2ZSB0eXBlZGVm
IG1hdHJpeDxmbG9hdCwgNCwgMj47Cit0eXBlZGVmIGZsb2F0NHgyID0gbWF0cml4PGZsb2F0LCA0
LCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgNCwgMz47Cit0eXBlZGVmIGZsb2F0
NHgzID0gbWF0cml4PGZsb2F0LCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwg
NCwgND47Cit0eXBlZGVmIGZsb2F0NHg0ID0gbWF0cml4PGZsb2F0LCA0LCA0PjsKK25hdGl2ZSB0
eXBlZGVmIHNhbXBsZXI7CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Ym9vbD47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMUQ8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGJvb2wz
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxib29sND47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHVjaGFyMj47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMUQ8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1Y2hh
cjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMUQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0Mz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MUQ8dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dWludDI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEPHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1aW50ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8
Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxRDxjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8
c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEPGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50Mj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50
ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGhhbGYzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxRDxoYWxmND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8ZmxvYXQ+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxmbG9hdDQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMUQ8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxi
b29sMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxib29sMz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUxRDxib29sND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1Y2hhcj47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMUQ8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVjaGFyND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1c2hvcnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8dWludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1aW50Mj47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUxRDx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1
aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxjaGFyPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTFEPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNoYXIzPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHNob3J0Mj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxRDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MUQ8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGludD47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxRDxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGludDM+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUxRDxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGhhbGYyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFE
PGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGZsb2F0PjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTFEPGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxmbG9h
dDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8Ym9v
bDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbDM+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8
dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWNoYXIyPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxREFycmF5PHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURB
cnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dXNob3J0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTFEQXJyYXk8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1c2hv
cnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHVpbnQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEQXJyYXk8dWludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8
dWludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWludDQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTFEQXJyYXk8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJh
eTxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyMz47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURB
cnJheTxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxzaG9ydDI+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUxREFycmF5PHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxpbnQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMURBcnJheTxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGludDQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMURBcnJheTxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmMz47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmND47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMURBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxmbG9h
dDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8ZmxvYXQzPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUxREFycmF5PGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFy
cmF5PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxib29sMj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEQXJyYXk8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTx1Y2hh
cj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVjaGFyMj47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxREFycmF5PHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUx
REFycmF5PHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydD47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFE
QXJyYXk8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVpbnQ+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUxREFycmF5PHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8
dWludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxjaGFyPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MURBcnJheTxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGNoYXI0PjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMURBcnJheTxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJh
eTxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxzaG9ydDQ+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMURBcnJheTxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aW50Mz47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGludDQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMURBcnJheTxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8
aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxoYWxmMz47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTFEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdDI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdDM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGJv
b2w+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyRDxib29sMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Ym9vbDQ+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1Y2hh
cjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMkQ8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVzaG9ydDQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEPHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVpbnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkQ8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGNoYXI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxjaGFyMz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxzaG9ydDI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEPHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8c2hvcnQ0PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PGludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGludDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEPGludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGhhbGY+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxoYWxm
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxmbG9hdDI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Zmxv
YXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGJvb2w+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkQ8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9vbDM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkQ8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWNoYXIyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
RDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dXNob3J0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8
dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1c2hvcnQ0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWlu
dDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWludDM+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkQ8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Y2hhcj47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUyRDxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxjaGFyND47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyRDxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxz
aG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8c2hvcnQzPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEPHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxpbnQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyRDxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGludDQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMkQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxo
YWxmMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxoYWxmMz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUyRDxoYWxmND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxmbG9hdD47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMkQ8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGZsb2F0ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUyREFycmF5PGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2wzPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyREFycmF5PHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVjaGFy
Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEQXJyYXk8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5
PHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1c2hvcnQyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTJEQXJyYXk8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1aW50PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyREFycmF5PHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVpbnQ0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGNoYXI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEQXJyYXk8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hh
cjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hhcjQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEQXJyYXk8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8
c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHNob3J0Mz47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMkRBcnJheTxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGludDI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRB
cnJheTxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGhhbGY+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aGFsZjQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTJEQXJyYXk8ZmxvYXQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGZsb2F0Mz47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkRBcnJheTxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8
Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxib29sMz47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEQXJyYXk8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcjI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1c2hvcnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dXNob3J0Mz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUyREFycmF5PHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dWludDI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyREFycmF5PHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8Y2hh
cj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGNoYXIyPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEQXJyYXk8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTxjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHNob3J0PjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTJEQXJyYXk8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8
c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aW50PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
REFycmF5PGludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxpbnQ0PjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyREFycmF5PGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aGFs
ZjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxoYWxmND47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUyREFycmF5PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJE
QXJyYXk8ZmxvYXQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQzPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUzRDxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxib29sMj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlM0Q8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGJv
b2w0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlM0Q8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1Y2hhcjM+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8
dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1c2hvcnQ0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUzRDx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWludDM+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTNEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxjaGFyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
M0Q8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGNoYXI0PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8c2hvcnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTNEPHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8aW50PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxpbnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxo
YWxmPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlM0Q8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGhhbGY0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUzRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8Zmxv
YXQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTNEPGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxib29sPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTNEPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGJvb2w0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTNEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVj
aGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlM0Q8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVzaG9y
dD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTNEPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dXNob3J0
ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTNEPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTNEPGNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Y2hhcjI+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlM0Q8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Y2hh
cjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlM0Q8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHNob3J0Mz47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlM0Q8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGludDI+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlM0Q8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxp
bnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlM0Q8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFsZjM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlM0Q8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8ZmxvYXQyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUz
RDxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Ym9vbD47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlQ3ViZTxib29sMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxib29s
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxib29sND47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlQ3ViZTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1Y2hhcjI+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmVDdWJlPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
Q3ViZTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVzaG9ydDQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3Vi
ZTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1aW50Mz47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlQ3ViZTx1aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxjaGFy
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmVDdWJlPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGNoYXI0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVD
dWJlPHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxzaG9ydDM+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZUN1YmU8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJl
PGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxpbnQyPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmVDdWJlPGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aW50ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVD
dWJlPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGhhbGYzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmVDdWJlPGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGZs
b2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGZsb2F0Mj47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlQ3ViZTxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8ZmxvYXQ0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVEZXB0aDJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmVEZXB0aDJEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVwdGgyRDxm
bG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmVEZXB0aDJEPGhhbGY+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZURlcHRoMkRBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
RGVwdGgyREFycmF5PGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVwdGgyREFycmF5
PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZURlcHRoMkRBcnJheTxoYWxmPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVEZXB0aEN1YmU8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZURlcHRoQ3ViZTxoYWxmPjsKKworbmF0aXZlIG9wZXJhdG9yIHVjaGFyKHVzaG9ydCk7CiBu
YXRpdmUgb3BlcmF0b3IgdWNoYXIodWludCk7CituYXRpdmUgb3BlcmF0b3IgdWNoYXIoY2hhcik7
CituYXRpdmUgb3BlcmF0b3IgdWNoYXIoc2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIHVjaGFyKGlu
dCk7CituYXRpdmUgb3BlcmF0b3IgdWNoYXIoaGFsZik7CiBuYXRpdmUgb3BlcmF0b3IgdWNoYXIo
ZmxvYXQpOwotbmF0aXZlIG9wZXJhdG9yIGZsb2F0KGludCk7Ci1uYXRpdmUgb3BlcmF0b3IgZmxv
YXQodWludCk7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRv
ciB1c2hvcnQodWludCk7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KGNoYXIpOworbmF0aXZlIG9w
ZXJhdG9yIHVzaG9ydChzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KGludCk7CituYXRp
dmUgb3BlcmF0b3IgdXNob3J0KGhhbGYpOworbmF0aXZlIG9wZXJhdG9yIHVzaG9ydChmbG9hdCk7
CituYXRpdmUgb3BlcmF0b3IgdWludCh1Y2hhcik7CituYXRpdmUgb3BlcmF0b3IgdWludCh1c2hv
cnQpOworbmF0aXZlIG9wZXJhdG9yIHVpbnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgdWludChz
aG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdWludChpbnQpOworbmF0aXZlIG9wZXJhdG9yIHVpbnQo
aGFsZik7CituYXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCk7CituYXRpdmUgb3BlcmF0b3IgY2hh
cih1Y2hhcik7CituYXRpdmUgb3BlcmF0b3IgY2hhcih1c2hvcnQpOworbmF0aXZlIG9wZXJhdG9y
IGNoYXIodWludCk7CituYXRpdmUgb3BlcmF0b3IgY2hhcihzaG9ydCk7CituYXRpdmUgb3BlcmF0
b3IgY2hhcihpbnQpOworbmF0aXZlIG9wZXJhdG9yIGNoYXIoaGFsZik7CituYXRpdmUgb3BlcmF0
b3IgY2hhcihmbG9hdCk7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQodWNoYXIpOworbmF0aXZlIG9w
ZXJhdG9yIHNob3J0KHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQodWludCk7CituYXRp
dmUgb3BlcmF0b3Igc2hvcnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQoaW50KTsKK25h
dGl2ZSBvcGVyYXRvciBzaG9ydChoYWxmKTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydChmbG9hdCk7
CituYXRpdmUgb3BlcmF0b3IgaW50KHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodXNob3J0
KTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodWludCk7CituYXRpdmUgb3BlcmF0b3IgaW50KGNoYXIp
OworbmF0aXZlIG9wZXJhdG9yIGludChzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgaW50KGhhbGYp
OworbmF0aXZlIG9wZXJhdG9yIGludChmbG9hdCk7CituYXRpdmUgb3BlcmF0b3IgaGFsZih1Y2hh
cik7CituYXRpdmUgb3BlcmF0b3IgaGFsZih1c2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGhhbGYo
dWludCk7CituYXRpdmUgb3BlcmF0b3IgaGFsZihjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBoYWxm
KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKGludCk7CituYXRpdmUgb3BlcmF0b3IgaGFs
ZihmbG9hdCk7CiBuYXRpdmUgb3BlcmF0b3IgZmxvYXQodWNoYXIpOworbmF0aXZlIG9wZXJhdG9y
IGZsb2F0KHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQodWludCk7CituYXRpdmUgb3Bl
cmF0b3IgZmxvYXQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQoc2hvcnQpOworbmF0aXZl
IG9wZXJhdG9yIGZsb2F0KGludCk7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQoaGFsZik7CisKK29w
ZXJhdG9yIGJvb2wodWNoYXIgeCkgeworICAgIHJldHVybiB4ICE9IDA7Cit9CitvcGVyYXRvciBi
b29sKHVzaG9ydCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2wodWlu
dCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woY2hhciB4KSB7Cisg
ICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woc2hvcnQgeCkgeworICAgIHJldHVy
biB4ICE9IDA7Cit9CitvcGVyYXRvciBib29sKGludCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsK
K30KK29wZXJhdG9yIGJvb2woaGFsZiB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJh
dG9yIGJvb2woZmxvYXQgeCkgeworICAgIHJldHVybiB4ICE9IDA7Cit9CiAKK25hdGl2ZSBvcGVy
YXRvciBpbnQoYXRvbWljX2ludCk7CituYXRpdmUgb3BlcmF0b3IgdWludChhdG9taWNfdWludCk7
CisKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0oYm9vbCwgYm9vbCk7Citib29sIG9wZXJhdG9yJihi
b29sIGEsIGJvb2wgYikgeworICAgIHJldHVybiBhICYmIGI7Cit9Citib29sIG9wZXJhdG9yfChi
b29sIGEsIGJvb2wgYikgeworICAgIHJldHVybiBhIHx8IGI7Cit9Citib29sIG9wZXJhdG9yXihi
b29sIGEsIGJvb2wgYikgeworICAgIGlmIChhKQorICAgICAgICByZXR1cm4gIWI7CisgICAgcmV0
dXJuIGI7Cit9Citib29sIG9wZXJhdG9yfihib29sIHZhbHVlKSB7CisgICAgcmV0dXJuICF2YWx1
ZTsKK30KIG5hdGl2ZSBpbnQgb3BlcmF0b3IrKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJh
dG9yKyh1aW50LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yKyh1Y2hhciBhLCB1Y2hhciBiKSB7IHJl
dHVybiB1Y2hhcih1aW50KGEpICsgdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvciso
ZmxvYXQsIGZsb2F0KTsKLWludCBvcGVyYXRvcisrKGludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUg
KyAxOyB9Ci11aW50IG9wZXJhdG9yKysodWludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgKyAxOyB9
Ci11Y2hhciBvcGVyYXRvcisrKHVjaGFyIHZhbHVlKSB7IHJldHVybiB2YWx1ZSArIDE7IH0KIG5h
dGl2ZSBpbnQgb3BlcmF0b3ItKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yLSh1aW50
LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yLSh1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hh
cih1aW50KGEpIC0gdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsIGZs
b2F0KTsKLWludCBvcGVyYXRvci0tKGludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgLSAxOyB9Ci11
aW50IG9wZXJhdG9yLS0odWludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgLSAxOyB9Ci11Y2hhciBv
cGVyYXRvci0tKHVjaGFyIHZhbHVlKSB7IHJldHVybiB2YWx1ZSAtIDE7IH0KIG5hdGl2ZSBpbnQg
b3BlcmF0b3IqKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LCB1aW50KTsK
LXVjaGFyIG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEp
ICogdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvciooZmxvYXQsIGZsb2F0KTsKIG5h
dGl2ZSBpbnQgb3BlcmF0b3IvKGludCwgaW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0oaW50
LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCwgaW50KTsKK25hdGl2ZSBib29sIG9w
ZXJhdG9yPD0oaW50LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+KGludCwgaW50KTsKK25h
dGl2ZSBib29sIG9wZXJhdG9yPj0oaW50LCBpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IrKHVp
bnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3ItKHVpbnQsIHVpbnQpOworbmF0aXZlIHVp
bnQgb3BlcmF0b3IqKHVpbnQsIHVpbnQpOwogbmF0aXZlIHVpbnQgb3BlcmF0b3IvKHVpbnQsIHVp
bnQpOwotdWNoYXIgb3BlcmF0b3IvKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVp
bnQoYSkgLyB1aW50KGIpKTsgfQorbmF0aXZlIGJvb2wgb3BlcmF0b3I9PSh1aW50LCB1aW50KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPCh1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9y
PD0odWludCwgdWludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4odWludCwgdWludCk7CituYXRp
dmUgYm9vbCBvcGVyYXRvcj49KHVpbnQsIHVpbnQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yKyhm
bG9hdCwgZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCwgZmxvYXQpOworbmF0
aXZlIGZsb2F0IG9wZXJhdG9yKihmbG9hdCwgZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9y
LyhmbG9hdCwgZmxvYXQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShmbG9hdCwgZmxvYXQpOwor
bmF0aXZlIGJvb2wgb3BlcmF0b3I8KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRv
cjw9KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4oZmxvYXQsIGZsb2F0KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPj0oZmxvYXQsIGZsb2F0KTsKIG5hdGl2ZSBpbnQgb3BlcmF0
b3ImKGludCwgaW50KTsKIG5hdGl2ZSBpbnQgb3BlcmF0b3J8KGludCwgaW50KTsKIG5hdGl2ZSBp
bnQgb3BlcmF0b3JeKGludCwgaW50KTsKQEAgLTE0NCw5NSArNjgyLDY0Nzc0IEBAIG5hdGl2ZSB1
aW50IG9wZXJhdG9yXih1aW50LCB1aW50KTsKIG5hdGl2ZSB1aW50IG9wZXJhdG9yfih1aW50KTsK
IG5hdGl2ZSB1aW50IG9wZXJhdG9yPDwodWludCwgdWludCk7CiBuYXRpdmUgdWludCBvcGVyYXRv
cj4+KHVpbnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3ImKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0
dXJuIHVjaGFyKHVpbnQoYSkgJiB1aW50KGIpKTsgfQotdWNoYXIgb3BlcmF0b3J8KHVjaGFyIGEs
IHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgfCB1aW50KGIpKTsgfQotdWNoYXIgb3Bl
cmF0b3JeKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgXiB1aW50KGIp
KTsgfQotdWNoYXIgb3BlcmF0b3J+KHVjaGFyIHZhbHVlKSB7IHJldHVybiB1Y2hhcih+dWludCh2
YWx1ZSkpOyB9Ci11Y2hhciBvcGVyYXRvcjw8KHVjaGFyIGEsIHVpbnQgYikgeyByZXR1cm4gdWNo
YXIodWludChhKSA8PCAoYiAmIDcpKTsgfQotdWNoYXIgb3BlcmF0b3I+Pih1Y2hhciBhLCB1aW50
IGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgPj4gKGIgJiA3KSk7IH0KLW5hdGl2ZSBmbG9hdCBv
cGVyYXRvci8oZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPT0oaW50LCBpbnQp
OwotbmF0aXZlIGJvb2wgb3BlcmF0b3I9PSh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I9PSh1
Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1aW50KGEpID09IHVpbnQoYik7IH0KLW5hdGl2ZSBi
b29sIG9wZXJhdG9yPT0oYm9vbCwgYm9vbCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGZsb2F0
LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcjwoaW50LCBpbnQpOwotbmF0aXZlIGJvb2wg
b3BlcmF0b3I8KHVpbnQsIHVpbnQpOwotYm9vbCBvcGVyYXRvcjwodWNoYXIgYSwgdWNoYXIgYikg
eyByZXR1cm4gdWludChhKSA8IHVpbnQoYik7IH0KLW5hdGl2ZSBib29sIG9wZXJhdG9yPChmbG9h
dCwgZmxvYXQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8PShpbnQsIGludCk7Ci1uYXRpdmUgYm9v
bCBvcGVyYXRvcjw9KHVpbnQsIHVpbnQpOwotYm9vbCBvcGVyYXRvcjw9KHVjaGFyIGEsIHVjaGFy
IGIpIHsgcmV0dXJuIHVpbnQoYSkgPD0gdWludChiKTsgfQotbmF0aXZlIGJvb2wgb3BlcmF0b3I8
PShmbG9hdCwgZmxvYXQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I+KGludCwgaW50KTsKLW5hdGl2
ZSBib29sIG9wZXJhdG9yPih1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I+KHVjaGFyIGEsIHVj
aGFyIGIpIHsgcmV0dXJuIHVpbnQoYSkgPiB1aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRv
cj4oZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPj0oaW50LCBpbnQpOwotbmF0
aXZlIGJvb2wgb3BlcmF0b3I+PSh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I+PSh1Y2hhciBh
LCB1Y2hhciBiKSB7IHJldHVybiB1aW50KGEpID49IHVpbnQoYik7IH0KLW5hdGl2ZSBib29sIG9w
ZXJhdG9yPj0oZmxvYXQsIGZsb2F0KTsKLQotYm9vbCBvcGVyYXRvciYoYm9vbCBhLCBib29sIGIp
Ci17Ci0gICAgaWYgKGEpCi0gICAgICAgIHJldHVybiBiOwotICAgIHJldHVybiBmYWxzZTsKK3Vj
aGFyIG9wZXJhdG9yKyh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJuIHVjaGFyKHVpbnQo
YSkgKyB1aW50KGIpKTsKIH0KLQotYm9vbCBvcGVyYXRvcnwoYm9vbCBhLCBib29sIGIpCi17Ci0g
ICAgaWYgKGEpCi0gICAgICAgIHJldHVybiB0cnVlOwotICAgIGlmIChiKQotICAgICAgICByZXR1
cm4gdHJ1ZTsKLSAgICByZXR1cm4gZmFsc2U7Cit1Y2hhciBvcGVyYXRvci0odWNoYXIgYSwgdWNo
YXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIC0gdWludChiKSk7CiB9Ci0KLWJvb2wg
b3BlcmF0b3JeKGJvb2wgYSwgYm9vbCBiKQotewotICAgIGlmIChhKQotICAgICAgICByZXR1cm4g
IWI7Ci0gICAgcmV0dXJuIGI7Cit1Y2hhciBvcGVyYXRvcioodWNoYXIgYSwgdWNoYXIgYikgewor
ICAgIHJldHVybiB1Y2hhcih1aW50KGEpICogdWludChiKSk7CiB9Ci0KLWJvb2wgb3BlcmF0b3J+
KGJvb2wgdmFsdWUpCi17Ci0gICAgcmV0dXJuICF2YWx1ZTsKK3VjaGFyIG9wZXJhdG9yLyh1Y2hh
ciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJuIHVjaGFyKHVpbnQoYSkgLyB1aW50KGIpKTsKIH0K
LWA7Ci0KLS8vIEZJWE1FOiBPbmNlIHRoZSBzdGFuZGFyZCBsaWJyYXJ5IGhhcyBiZWVuIHJlcGxh
Y2VkIHdpdGggYSBuZXcgdmVyc2lvbiwgdGhpcyBjb21tZW50cyBzaG91bGQgYmUgcmVtb3ZlZC4K
LS8vIFRoaXMgbGlzdCBpcyB1c2VkIHRvIHJlc3RyaWN0IHRoZSBhdmFpbGFiaWxpdHkgb2YgdmVj
dG9yIHR5cGVzIGF2YWlsYWJsZSBpbiB0aGUgbGFuZ2F1Z2UuCi0vLyBQZXJtaXNzaWJsZSB2ZWN0
b3IgZWxlbWVudCB0eXBlcyBtdXN0IGFwcGVhciBpbiB0aGlzIGxpc3QgYW5kIGluIHRoZSBzdGFu
ZGFyZCBsaWJyYXJ5Ci1jb25zdCBWZWN0b3JFbGVtZW50VHlwZXMgPSBbICJib29sIiwgInVjaGFy
IiwgImNoYXIiLCAidXNob3J0IiwgInNob3J0IiwgInVpbnQiLCAiaW50IiwgImhhbGYiLCAiZmxv
YXQiIF07Ci1jb25zdCBWZWN0b3JFbGVtZW50U2l6ZXMgPSBbIDIsIDMsIDQgXTsKLQotZnVuY3Rp
b24gYWxsVmVjdG9yVHlwZU5hbWVzKCkKLXsKLSAgICBjb25zdCBuYW1lcyA9IFtdOwotICAgIGZv
ciAobGV0IGVsZW1lbnRUeXBlIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewotICAgICAgICBmb3Ig
KGxldCBzaXplIG9mIFZlY3RvckVsZW1lbnRTaXplcykKLSAgICAgICAgICAgIG5hbWVzLnB1c2go
YCR7ZWxlbWVudFR5cGV9JHtzaXplfWApOwotICAgIH0KLSAgICByZXR1cm4gbmFtZXM7Cit1Y2hh
ciBvcGVyYXRvciYodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEp
ICYgdWludChiKSk7CiB9Cit1Y2hhciBvcGVyYXRvcnwodWNoYXIgYSwgdWNoYXIgYikgeworICAg
IHJldHVybiB1Y2hhcih1aW50KGEpIHwgdWludChiKSk7Cit9Cit1Y2hhciBvcGVyYXRvcl4odWNo
YXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIF4gdWludChiKSk7Cit9
Cit1Y2hhciBvcGVyYXRvcn4odWNoYXIgYSkgeworICAgIHJldHVybiB1Y2hhcih+dWludChhKSk7
Cit9Citib29sIG9wZXJhdG9yPT0odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50
KGEpID09IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPCh1Y2hhciBhLCB1Y2hhciBiKSB7Cisg
ICAgcmV0dXJuIHVpbnQoYSkgPCB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KHVjaGFyIGEs
IHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWludChhKSA8PSB1aW50KGIpOworfQorYm9vbCBvcGVy
YXRvcj4odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEpID4gdWludChiKTsK
K30KK2Jvb2wgb3BlcmF0b3I+PSh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJuIHVpbnQo
YSkgPj0gdWludChiKTsKK30KK3VzaG9ydCBvcGVyYXRvcisodXNob3J0IGEsIHVzaG9ydCBiKSB7
CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpICsgdWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0
b3ItKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWludChhKSAtIHVp
bnQoYikpOworfQordXNob3J0IG9wZXJhdG9yKih1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICBy
ZXR1cm4gdXNob3J0KHVpbnQoYSkgKiB1aW50KGIpKTsKK30KK3VzaG9ydCBvcGVyYXRvci8odXNo
b3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpIC8gdWludChiKSk7
Cit9Cit1c2hvcnQgb3BlcmF0b3ImKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1
c2hvcnQodWludChhKSAmIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yfCh1c2hvcnQgYSwg
dXNob3J0IGIpIHsKKyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgfCB1aW50KGIpKTsKK30KK3Vz
aG9ydCBvcGVyYXRvcl4odXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1
aW50KGEpIF4gdWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3J+KHVzaG9ydCBhKSB7CisgICAg
cmV0dXJuIHVzaG9ydCh+dWludChhKSk7Cit9Citib29sIG9wZXJhdG9yPT0odXNob3J0IGEsIHVz
aG9ydCBiKSB7CisgICAgcmV0dXJuIHVpbnQoYSkgPT0gdWludChiKTsKK30KK2Jvb2wgb3BlcmF0
b3I8KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpIDwgdWludChiKTsK
K30KK2Jvb2wgb3BlcmF0b3I8PSh1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4gdWlu
dChhKSA8PSB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcj4odXNob3J0IGEsIHVzaG9ydCBiKSB7
CisgICAgcmV0dXJuIHVpbnQoYSkgPiB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcj49KHVzaG9y
dCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpID49IHVpbnQoYik7Cit9Cit1Y2hh
ciBvcGVyYXRvcjw8KHVjaGFyIGEsIHVpbnQgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEp
IDw8IChiICYgMjU1KSk7Cit9Cit1c2hvcnQgb3BlcmF0b3I8PCh1c2hvcnQgYSwgdWludCBiKSB7
CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpIDw8IChiICYgNjU1MzUpKTsKK30KK3VjaGFyIG9w
ZXJhdG9yPj4odWNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIHVjaGFyKHVpbnQoYSkgPj4g
KGIgJiAyNTUpKTsKK30KK3VzaG9ydCBvcGVyYXRvcj4+KHVzaG9ydCBhLCB1aW50IGIpIHsKKyAg
ICByZXR1cm4gdXNob3J0KHVpbnQoYSkgPj4gKGIgJiA2NTUzNSkpOworfQorY2hhciBvcGVyYXRv
cisoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgKyBpbnQoYikpOwor
fQorY2hhciBvcGVyYXRvci0oY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQo
YSkgLSBpbnQoYikpOworfQorY2hhciBvcGVyYXRvciooY2hhciBhLCBjaGFyIGIpIHsKKyAgICBy
ZXR1cm4gY2hhcihpbnQoYSkgKiBpbnQoYikpOworfQorY2hhciBvcGVyYXRvci8oY2hhciBhLCBj
aGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgLyBpbnQoYikpOworfQorY2hhciBvcGVy
YXRvciYoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgJiBpbnQoYikp
OworfQorY2hhciBvcGVyYXRvcnwoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihp
bnQoYSkgfCBpbnQoYikpOworfQorY2hhciBvcGVyYXRvcl4oY2hhciBhLCBjaGFyIGIpIHsKKyAg
ICByZXR1cm4gY2hhcihpbnQoYSkgXiBpbnQoYikpOworfQorY2hhciBvcGVyYXRvcn4oY2hhciBh
KSB7CisgICAgcmV0dXJuIGNoYXIofmludChhKSk7Cit9Citib29sIG9wZXJhdG9yPT0oY2hhciBh
LCBjaGFyIGIpIHsKKyAgICByZXR1cm4gaW50KGEpID09IGludChiKTsKK30KK2Jvb2wgb3BlcmF0
b3I+KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGludChhKSA+IGludChiKTsKK30KK2Jv
b2wgb3BlcmF0b3I+PShjaGFyIGEsIGNoYXIgYikgeworICAgIHJldHVybiBpbnQoYSkgPj0gaW50
KGIpOworfQorYm9vbCBvcGVyYXRvcjwoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gaW50
KGEpIDwgaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KGNoYXIgYSwgY2hhciBiKSB7CisgICAg
cmV0dXJuIGludChhKSA8PSBpbnQoYik7Cit9CitzaG9ydCBvcGVyYXRvcisoc2hvcnQgYSwgc2hv
cnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgKyBpbnQoYikpOworfQorc2hvcnQgb3Bl
cmF0b3ItKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpIC0gaW50
KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0dXJu
IHNob3J0KGludChhKSAqIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvci8oc2hvcnQgYSwgc2hv
cnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgLyBpbnQoYikpOworfQorc2hvcnQgb3Bl
cmF0b3ImKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpICYgaW50
KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yfChzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0dXJu
IHNob3J0KGludChhKSB8IGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvcl4oc2hvcnQgYSwgc2hv
cnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgXiBpbnQoYikpOworfQorc2hvcnQgb3Bl
cmF0b3J+KHNob3J0IGEpIHsKKyAgICByZXR1cm4gc2hvcnQofmludChhKSk7Cit9Citib29sIG9w
ZXJhdG9yPT0oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPT0gaW50KGIp
OworfQorYm9vbCBvcGVyYXRvcj4oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQo
YSkgPiBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0oc2hvcnQgYSwgc2hvcnQgYikgeworICAg
IHJldHVybiBpbnQoYSkgPj0gaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjwoc2hvcnQgYSwgc2hv
cnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPCBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPD0o
c2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPD0gaW50KGIpOworfQorY2hh
ciBvcGVyYXRvcjw8KGNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIDw8
IChiICYgMjU1KSk7Cit9CitzaG9ydCBvcGVyYXRvcjw8KHNob3J0IGEsIHVpbnQgYikgeworICAg
IHJldHVybiBzaG9ydChpbnQoYSkgPDwgKGIgJiA2NTUzNSkpOworfQorY2hhciBvcGVyYXRvcj4+
KGNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpID4+IChiICYgMjU1KSk7
Cit9CitzaG9ydCBvcGVyYXRvcj4+KHNob3J0IGEsIHVpbnQgYikgeworICAgIHJldHVybiBzaG9y
dChpbnQoYSkgPj4gKGIgJiA2NTUzNSkpOworfQordWNoYXIgb3BlcmF0b3IrKyh1Y2hhciB2YWx1
ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9Cit1Y2hhciBvcGVyYXRvci0tKHVjaGFyIHZh
bHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK3VzaG9ydCBvcGVyYXRvcisrKHVzaG9y
dCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9Cit1c2hvcnQgb3BlcmF0b3ItLSh1
c2hvcnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQordWludCBvcGVyYXRvcisr
KHVpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQordWludCBvcGVyYXRvci0t
KHVpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorY2hhciBvcGVyYXRvcisr
KGNoYXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQorY2hhciBvcGVyYXRvci0t
KGNoYXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorc2hvcnQgb3BlcmF0b3Ir
KyhzaG9ydCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitzaG9ydCBvcGVyYXRv
ci0tKHNob3J0IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK2ludCBvcGVyYXRv
cisrKGludCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitpbnQgb3BlcmF0b3It
LShpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQoraGFsZiBvcGVyYXRvcisr
KGhhbGYgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQoraGFsZiBvcGVyYXRvci0t
KGhhbGYgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorZmxvYXQgb3BlcmF0b3Ir
KyhmbG9hdCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitmbG9hdCBvcGVyYXRv
ci0tKGZsb2F0IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK2hhbGYgb3BlcmF0
b3IrKGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxvYXQoYSkgKyBmbG9hdChi
KSk7Cit9CitoYWxmIG9wZXJhdG9yLShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBoYWxm
KGZsb2F0KGEpIC0gZmxvYXQoYikpOworfQoraGFsZiBvcGVyYXRvciooaGFsZiBhLCBoYWxmIGIp
IHsKKyAgICByZXR1cm4gaGFsZihmbG9hdChhKSAqIGZsb2F0KGIpKTsKK30KK2hhbGYgb3BlcmF0
b3IvKGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxvYXQoYSkgLyBmbG9hdChi
KSk7Cit9Citib29sIG9wZXJhdG9yPT0oaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxv
YXQoYSkgPT0gZmxvYXQoYik7Cit9Citib29sIG9wZXJhdG9yPChoYWxmIGEsIGhhbGYgYikgewor
ICAgIHJldHVybiBmbG9hdChhKSA8IGZsb2F0KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KGhhbGYg
YSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGZsb2F0KGEpIDw9IGZsb2F0KGIpOworfQorYm9vbCBv
cGVyYXRvcj4oaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQoYSkgPCBmbG9hdChi
KTsKK30KK2Jvb2wgb3BlcmF0b3I+PShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBmbG9h
dChhKSA8PSBmbG9hdChiKTsKK30KK2NoYXIgb3BlcmF0b3ItKGNoYXIgeCkgeworICAgIHJldHVy
biBjaGFyKC1pbnQoeCkpOworfQorc2hvcnQgb3BlcmF0b3ItKHNob3J0IHgpIHsKKyAgICByZXR1
cm4gc2hvcnQoLWludCh4KSk7Cit9CitoYWxmIG9wZXJhdG9yLShoYWxmIHgpIHsKKyAgICByZXR1
cm4gaGFsZigtZmxvYXQoeCkpOworfQorbmF0aXZlIGludCBvcGVyYXRvci0oaW50KTsKK25hdGl2
ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQpOwogCi0vLyBQcm92aWRlcyBvcGVyYXRvciZbXQotc3Rh
bmRhcmRMaWJyYXJ5ICs9IE9wZXJhdG9yQW5kZXJJbmRleGVyLmZ1bmN0aW9ucygpLmpvaW4oIjtc
biIpICsgIjtcbiI7Ci0KLS8vIE5hdGl2ZSB2ZWN0b3IgdHlwZXMgYXJlIGxpa2Ugc3RydWN0cyBp
biB0aGUgbGFuZ2F1Z2UsIGJ1dCB0aGV5IGRvIG5vdCBoYXZlIHRoZSBhbmRlciBmaWVsZCBhY2Nl
c3MuCi0vLyBJdCBpcyBub3QgcG9zc2libGUgdG8gdGFrZSB0aGUgYWRkcmVzcyBvZiBhIHZlY3Rv
ciBmaWVsZC4KLXN0YW5kYXJkTGlicmFyeSArPSBCdWlsdGluVmVjdG9yR2V0dGVyLmZ1bmN0aW9u
cygpLmpvaW4oIjtcbiIpICsgIjtcbiI7Ci1zdGFuZGFyZExpYnJhcnkgKz0gQnVpbHRpblZlY3Rv
clNldHRlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotc3RhbmRhcmRMaWJyYXJ5
ICs9IEJ1aWx0aW5WZWN0b3JJbmRleEdldHRlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7
XG4iOwotc3RhbmRhcmRMaWJyYXJ5ICs9IEJ1aWx0aW5WZWN0b3JJbmRleFNldHRlci5mdW5jdGlv
bnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotCi0vLyBGSVhNRTogRm9yIG5hdGl2ZSB0eXBlcyB0
aGVzZSBjb3VsZCBiZSBpbmNsdWRlZCBhcyBzb3VyY2UgaW4gdGhlIHN0YW5kYXJkIGxpYnJhcnku
Ci0vLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4Njg1Ci1zdGFu
ZGFyZExpYnJhcnkgKz0gT3BlcmF0b3JCb29sLmZ1bmN0aW9ucygpLmpvaW4oIjtcbiIpICsgIjtc
biI7Ci1zdGFuZGFyZExpYnJhcnkgKz0gQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuZnVu
Y3Rpb25zKCkuam9pbigiO1xuIikgKyAiO1xuIjsKLQotLy8gRklYTUU6IFRoZXNlIG5lZWQgdG8g
YmUgaW5jbHVkZWQgYXMgc291cmNlIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5Lgotc3RhbmRhcmRM
aWJyYXJ5ICs9IFN3aXp6bGVPcC5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotc3Rh
bmRhcmRMaWJyYXJ5ICs9IEJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuZnVuY3Rpb25zKCkuam9p
bigiO1xuIikgKyAiO1xuIjsKK3VjaGFyMiBvcGVyYXRvcisodWNoYXIyIGEsIHVjaGFyMiBiKSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9w
ZXJhdG9yLSh1Y2hhcjIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IqKHVjaGFyMiBhLCB1Y2hhcjIgYikg
eworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBv
cGVyYXRvcioodWNoYXIyIGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyMiBiKSB7CisgICAg
dWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLyh1Y2hh
cjIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFb
MF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IvKHVjaGFyMiBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXIy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLyh1Y2hhciBhLCB1
Y2hhcjIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
MyBvcGVyYXRvcisodWNoYXIzIGEsIHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXIzIG9wZXJhdG9yLSh1Y2hhcjMgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjMgb3BlcmF0b3IqKHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyMyBvcGVyYXRvcioodWNoYXIzIGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOwor
ICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMg
b3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9y
Lyh1Y2hhcjMgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0
b3IvKHVjaGFyMyBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0g
PSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLyh1Y2hh
ciBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAv
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvcisodWNoYXI0IGEsIHVj
aGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsg
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLSh1Y2hhcjQgYSwgdWNoYXI0IGIpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
LSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFb
M10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IqKHVjaGFy
NCBhLCB1Y2hhcjQgYikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvcioodWNoYXI0IGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10g
KiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IqKHVjaGFyIGEsIHVj
aGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAg
ICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLyh1Y2hhcjQgYSwgdWNoYXI0IGIpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IvKHVjaGFyNCBhLCB1Y2hhciBi
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXN1
bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lyh1Y2hhciBhLCB1Y2hhcjQgYikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDIgb3BlcmF0b3IrKHVzaG9ydDIgYSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3ItKHVz
aG9ydDIgYSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IqKHVzaG9ydDIgYSwgdXNob3J0MiBiKSB7Cisg
ICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3Bl
cmF0b3IqKHVzaG9ydDIgYSwgdXNob3J0IGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvcioodXNob3J0IGEsIHVzaG9ydDIgYikgewor
ICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9y
Lyh1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLyh1c2hvcnQyIGEsIHVzaG9ydCBiKSB7
CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0
b3IvKHVzaG9ydCBhLCB1c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvcisodXNob3J0MyBhLCB1c2hvcnQzIGIpIHsKKyAg
ICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci0odXNob3J0MyBhLCB1c2hvcnQzIGIp
IHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvcioodXNob3J0MyBhLCB1c2hv
cnQzIGIpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICog
YlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvcioodXNob3J0MyBh
LCB1c2hvcnQgYikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBi
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yKih1c2hvcnQgYSwgdXNo
b3J0MyBiKSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IvKHVzaG9ydDMgYSwgdXNob3J0
MyBiKSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IvKHVzaG9ydDMgYSwg
dXNob3J0IGIpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci8odXNob3J0IGEsIHVzaG9y
dDMgYikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKyh1c2hvcnQ0IGEsIHVzaG9ydDQg
YikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJd
OworICAgIHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLSh1c2hvcnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
LSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFb
M10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKih1c2hv
cnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKih1c2hvcnQ0IGEsIHVzaG9ydCBiKSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNd
ID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IqKHVz
aG9ydCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBh
ICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci8odXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10g
PSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci8o
dXNob3J0NCBhLCB1c2hvcnQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9
IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLyh1c2hvcnQgYSwgdXNob3J0NCBiKSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAv
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yKyh1aW50MiBhLCB1aW50
MiBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MiBvcGVyYXRvci0odWludDIgYSwgdWludDIgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IqKHVpbnQyIGEsIHVpbnQyIGIpIHsK
KyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJh
dG9yKih1aW50MiBhLCB1aW50IGIpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQyIG9wZXJhdG9yKih1aW50IGEsIHVpbnQyIGIpIHsKKyAgICB1aW50MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLyh1aW50MiBhLCB1aW50MiBi
KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBv
cGVyYXRvci8odWludDIgYSwgdWludCBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci8odWludCBhLCB1aW50MiBiKSB7CisgICAgdWludDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBi
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvcisodWludDMgYSwgdWlu
dDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3ItKHVpbnQzIGEsIHVpbnQz
IGIpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yKih1aW50MyBhLCB1aW50MyBi
KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvcioodWludDMgYSwgdWludCBiKSB7
CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvcioodWludCBhLCB1aW50MyBiKSB7CisgICAgdWludDMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50MyBvcGVyYXRvci8odWludDMgYSwgdWludDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDMgb3BlcmF0b3IvKHVpbnQzIGEsIHVpbnQgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1
bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iv
KHVpbnQgYSwgdWludDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
IC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8g
YlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IrKHVpbnQ0IGEsIHVp
bnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJb
Ml07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLSh1aW50NCBhLCB1aW50NCBiKSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvcioodWludDQgYSwgdWlu
dDQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsy
XTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IqKHVpbnQ0IGEsIHVpbnQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IqKHVpbnQgYSwgdWludDQgYikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
ICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICog
YlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IvKHVpbnQ0IGEsIHVp
bnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJb
Ml07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLyh1aW50NCBhLCB1aW50IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAg
cmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLyh1aW50IGEsIHVpbnQ0IGIpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAv
IGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yKyhjaGFyMiBhLCBj
aGFyMiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMiBvcGVyYXRvci0oY2hhcjIgYSwgY2hhcjIgYikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IqKGNoYXIyIGEsIGNoYXIyIGIp
IHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9w
ZXJhdG9yKihjaGFyMiBhLCBjaGFyIGIpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yKihjaGFyIGEsIGNoYXIyIGIpIHsKKyAgICBjaGFyMiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJb
MV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLyhjaGFyMiBhLCBjaGFy
MiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MiBvcGVyYXRvci8oY2hhcjIgYSwgY2hhciBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci8oY2hhciBhLCBjaGFyMiBiKSB7CisgICAgY2hh
cjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEg
LyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvcisoY2hhcjMgYSwg
Y2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsg
YlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3ItKGNoYXIzIGEsIGNo
YXIzIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yKihjaGFyMyBhLCBjaGFy
MyBiKSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvciooY2hhcjMgYSwgY2hhciBi
KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvciooY2hhciBhLCBjaGFyMyBiKSB7CisgICAgY2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEg
KiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMyBvcGVyYXRvci8oY2hhcjMgYSwgY2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsx
XTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjMgb3BlcmF0b3IvKGNoYXIzIGEsIGNoYXIgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0
b3IvKGNoYXIgYSwgY2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBh
IC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IrKGNoYXI0IGEs
IGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAr
IGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLShjaGFyNCBhLCBjaGFyNCBiKSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10g
LSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvciooY2hhcjQgYSwg
Y2hhcjQgYikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICog
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IqKGNoYXI0IGEsIGNoYXIgYikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IqKGNoYXIgYSwgY2hhcjQgYikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBh
ICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IvKGNoYXI0IGEs
IGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAv
IGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLyhjaGFyNCBhLCBjaGFyIGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLyhjaGFyIGEsIGNoYXI0IGIpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0g
YSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvcisoc2hvcnQy
IGEsIHNob3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
ICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQyIG9wZXJhdG9yLShzaG9ydDIgYSwgc2hvcnQyIGIpIHsKKyAgICBzaG9ydDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IqKHNob3J0
MiBhLCBzaG9ydDIgYikgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0MiBvcGVyYXRvciooc2hvcnQyIGEsIHNob3J0IGIpIHsKKyAgICBzaG9ydDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
KiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IqKHNob3J0IGEsIHNo
b3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQy
IG9wZXJhdG9yLyhzaG9ydDIgYSwgc2hvcnQyIGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IvKHNob3J0MiBhLCBzaG9ydCBi
KSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJh
dG9yLyhzaG9ydCBhLCBzaG9ydDIgYikgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvcisoc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hv
cnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLShzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IqKHNob3J0MyBhLCBzaG9ydDMgYikgeworICAg
IHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvciooc2hvcnQzIGEsIHNob3J0IGIpIHsKKyAg
ICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IqKHNob3J0IGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICog
YlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQzIG9wZXJhdG9yLyhzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDMgb3BlcmF0b3IvKHNob3J0MyBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsK
KyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQz
IG9wZXJhdG9yLyhzaG9ydCBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
cisoc2hvcnQ0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLShzaG9ydDQgYSwgc2hvcnQ0IGIpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAg
IHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3IqKHNob3J0NCBhLCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvciooc2hvcnQ0IGEsIHNob3J0
IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJl
c3VsdFszXSA9IGFbM10gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3IqKHNob3J0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLyhzaG9ydDQgYSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9
IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IvKHNo
b3J0NCBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLyhzaG9ydCBhLCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IrKGludDIgYSwgaW50MiBiKSB7CisgICAg
aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3ItKGlu
dDIgYSwgaW50MiBiKSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAt
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDIgb3BlcmF0b3IqKGludDIgYSwgaW50MiBiKSB7CisgICAgaW50MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IqKGludDIgYSwgaW50IGIpIHsK
KyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvciooaW50
IGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQy
IG9wZXJhdG9yLyhpbnQyIGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLyhpbnQyIGEsIGludCBiKSB7CisgICAgaW50
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsx
XSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IvKGludCBhLCBpbnQy
IGIpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRv
cisoaW50MyBhLCBpbnQzIGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci0oaW50
MyBhLCBpbnQzIGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC0gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvciooaW50MyBhLCBp
bnQzIGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvciooaW50MyBhLCBpbnQgYikg
eworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yKihpbnQgYSwgaW50MyBiKSB7CisgICAgaW50MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMg
b3BlcmF0b3IvKGludDMgYSwgaW50MyBiKSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0
b3IvKGludDMgYSwgaW50IGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci8oaW50IGEsIGludDMg
YikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yKyhpbnQ0IGEsIGludDQgYikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJlc3VsdFszXSA9
IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLShpbnQ0
IGEsIGludDQgYikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0g
LSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yKihpbnQ0IGEsIGludDQgYikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yKihpbnQ0IGEsIGludCBi
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0
WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IqKGlu
dCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsK
KyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci8oaW50NCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci8oaW50NCBhLCBpbnQgYikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10g
LyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLyhpbnQgYSwgaW50NCBi
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0
WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yKyho
YWxmMiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFb
MF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMiBvcGVyYXRvci0oaGFsZjIgYSwgaGFsZjIgYikgeworICAgIGhhbGYyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC0gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IqKGhhbGYyIGEs
IGhhbGYyIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyIG9wZXJhdG9yKihoYWxmMiBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yKihoYWxmIGEsIGhhbGYyIGIpIHsKKyAg
ICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLyhoYWxm
MiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
LyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMiBvcGVyYXRvci8oaGFsZjIgYSwgaGFsZiBiKSB7CisgICAgaGFsZjIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci8oaGFsZiBhLCBoYWxmMiBiKSB7
CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvciso
aGFsZjMgYSwgaGFsZjMgYikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3ItKGhh
bGYzIGEsIGhhbGYzIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YVsyXSAtIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yKihoYWxm
MyBhLCBoYWxmMyBiKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFb
Ml0gKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvciooaGFsZjMg
YSwgaGFsZiBiKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBi
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvciooaGFsZiBhLCBoYWxmMyBiKSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci8oaGFsZjMgYSwgaGFsZjMgYikgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgb3BlcmF0b3IvKGhhbGYzIGEsIGhhbGYgYikgeworICAgIGhhbGYzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8g
YjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjMgb3BlcmF0b3IvKGhhbGYgYSwgaGFsZjMgYikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Ir
KGhhbGY0IGEsIGhhbGY0IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJd
ID0gYVsyXSArIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLShoYWxmNCBhLCBoYWxmNCBiKSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFsz
XSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvcioo
aGFsZjQgYSwgaGFsZjQgYikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IqKGhhbGY0IGEsIGhhbGYgYikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICog
YjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjQg
YikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1
bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iv
KGhhbGY0IGEsIGhhbGY0IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJd
ID0gYVsyXSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLyhoYWxmNCBhLCBoYWxmIGIpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsx
XSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAv
IGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLyhoYWxmIGEsIGhhbGY0
IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRv
cisoZmxvYXQyIGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yLShmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0
b3IqKGZsb2F0MiBhLCBmbG9hdDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvciooZmxvYXQyIGEsIGZsb2F0IGIpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IqKGZs
b2F0IGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
ICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQyIG9wZXJhdG9yLyhmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdDIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
LyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IvKGZsb2F0MiBh
LCBmbG9hdCBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQyIG9wZXJhdG9yLyhmbG9hdCBhLCBmbG9hdDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvcisoZmxvYXQzIGEsIGZsb2F0MyBiKSB7
CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLShmbG9hdDMgYSwgZmxvYXQzIGIp
IHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IqKGZsb2F0MyBhLCBmbG9hdDMg
YikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvciooZmxvYXQzIGEsIGZsb2F0
IGIpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0MyBiKSB7Cisg
ICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzIG9wZXJhdG9yLyhmbG9hdDMgYSwgZmxvYXQzIGIpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IvKGZsb2F0MyBhLCBmbG9hdCBiKSB7CisgICAgZmxv
YXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQzIG9wZXJhdG9yLyhmbG9hdCBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvcisoZmxvYXQ0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLShmbG9hdDQgYSwgZmxv
YXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBi
WzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IqKGZsb2F0NCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAq
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVsz
XSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvciooZmxvYXQ0
IGEsIGZsb2F0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBi
OworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLyhmbG9hdDQgYSwgZmxvYXQ0IGIpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJl
c3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3IvKGZsb2F0NCBhLCBmbG9hdCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdIC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLyhmbG9hdCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAv
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLShjaGFyMiBhKSB7Cisg
ICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9
IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci0oY2hhcjMgYSkg
eworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRb
MV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3ItKGNoYXI0IGEpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0g
LWFbMl07CisgICAgcmVzdWx0WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0MiBvcGVyYXRvci0oc2hvcnQyIGEpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDMgb3BlcmF0b3ItKHNob3J0MyBhKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXN1bHRb
Ml0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLShzaG9y
dDQgYSkgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAg
cmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmVzdWx0WzNd
ID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3ItKGludDIgYSkg
eworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsx
XSA9IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLShpbnQzIGEp
IHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRb
MV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci0oaW50NCBhKSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFb
Ml07CisgICAgcmVzdWx0WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYy
IG9wZXJhdG9yLShoYWxmMiBhKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMyBvcGVyYXRvci0oaGFsZjMgYSkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3ItKGhhbGY0IGEpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0g
LWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmVzdWx0WzNdID0gLWFbM107Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvci0oZmxvYXQyIGEpIHsKKyAgICBm
bG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1h
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3ItKGZsb2F0MyBhKSB7
CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRb
MV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLShmbG9hdDQgYSkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJd
ID0gLWFbMl07CisgICAgcmVzdWx0WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDIgb3BlcmF0b3IrKGhhbGYyeDIgYSwgaGFsZjJ4MiBiKSB7CisgICAgaGFsZjJ4MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSArIGJbMF1bMF07CisgICAgcmVzdWx0
WzBdWzFdID0gYVswXVsxXSArIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAr
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSArIGJbMV1bMV07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgb3BlcmF0b3ItKGhhbGYyeDIgYSwgaGFsZjJ4MiBiKSB7
CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAtIGJbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAtIGJbMF1bMV07CisgICAgcmVzdWx0WzFd
WzBdID0gYVsxXVswXSAtIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAtIGJb
MV1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgb3BlcmF0b3ItKGhhbGYyeDIg
YSkgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IC1hWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IC1hWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IC1hWzFdWzBd
OworICAgIHJlc3VsdFsxXVsxXSA9IC1hWzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMngyIG9wZXJhdG9yKihoYWxmMngyIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAgIHJlc3VsdFsw
XVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmMngyIG9wZXJhdG9yKihoYWxmMngyIGEsIGhhbGYgYikgeworICAg
IGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiOworICAgIHJl
c3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBi
OworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmMngyIG9wZXJhdG9yKihoYWxmIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGEgKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9
IGEgKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGEgKiBiWzFdWzBdOworICAgIHJlc3Vs
dFsxXVsxXSA9IGEgKiBiWzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngyIG9w
ZXJhdG9yLyhoYWxmMngyIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFb
MF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMngyIG9wZXJhdG9yLyhoYWxmMngyIGEsIGhhbGYgYikgeworICAgIGhhbGYyeDIg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLyBiOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiOworICAgIHJl
c3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngy
IG9wZXJhdG9yLyhoYWxmIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGEgLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGEgLyBiWzBd
WzFdOworICAgIHJlc3VsdFsxXVswXSA9IGEgLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9
IGEgLyBiWzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIG9wZXJhdG9yKyho
YWxmMngzIGEsIGhhbGYyeDMgYikgeworICAgIGhhbGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBi
WzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3Vs
dFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0g
KyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMngzIG9wZXJhdG9yLShoYWxmMngzIGEsIGhhbGYyeDMgYikg
eworICAgIGhhbGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLSBiWzBd
WzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLSBiWzBdWzFdOworICAgIHJlc3VsdFsw
XVsyXSA9IGFbMF1bMl0gLSBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLSBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLSBiWzFdWzFdOworICAgIHJlc3Vs
dFsxXVsyXSA9IGFbMV1bMl0gLSBiWzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
MngzIG9wZXJhdG9yLShoYWxmMngzIGEpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSAtYVswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSAtYVswXVsxXTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSAtYVswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSAtYVsxXVswXTsKKyAg
ICByZXN1bHRbMV1bMV0gPSAtYVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSAtYVsxXVsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBvcGVyYXRvciooaGFsZjJ4MyBhLCBoYWxm
MngzIGIpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
ICogYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYlswXVsxXTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFd
WzBdICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYlsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjJ4MyBvcGVyYXRvciooaGFsZjJ4MyBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMngzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0g
PSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjJ4MyBvcGVyYXRvciooaGFsZiBhLCBoYWxmMngzIGIpIHsKKyAgICBoYWxmMngzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhICogYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBh
ICogYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhICogYlswXVsyXTsKKyAgICByZXN1bHRb
MV1bMF0gPSBhICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhICogYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhICogYlsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4MyBvcGVyYXRvci8oaGFsZjJ4MyBhLCBoYWxmMngzIGIpIHsKKyAgICBoYWxmMngzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhWzBdWzFdIC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYlsw
XVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYlsxXVswXTsKKyAgICByZXN1bHRb
MV1bMV0gPSBhWzFdWzFdIC8gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8g
YlsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBvcGVyYXRvci8oaGFsZjJ4
MyBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBh
WzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRb
MF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBvcGVyYXRvci8oaGFsZiBhLCBo
YWxmMngzIGIpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhIC8g
YlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhIC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1b
Ml0gPSBhIC8gYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhIC8gYlsxXVswXTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBhIC8gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhIC8gYlsxXVsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBvcGVyYXRvcisoaGFsZjJ4NCBhLCBo
YWxmMng0IGIpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBd
WzBdICsgYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICsgYlswXVsxXTsKKyAg
ICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICsgYlswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gPSBh
WzBdWzNdICsgYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICsgYlsxXVswXTsK
KyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICsgYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0g
PSBhWzFdWzJdICsgYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdICsgYlsxXVsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBvcGVyYXRvci0oaGFsZjJ4NCBhLCBo
YWxmMng0IGIpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBd
WzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAg
ICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gPSBh
WzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsK
KyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0g
PSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdIC0gYlsxXVsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBvcGVyYXRvci0oaGFsZjJ4NCBhKSB7
CisgICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAg
cmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07Cisg
ICAgcmVzdWx0WzBdWzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1b
Ml07CisgICAgcmVzdWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDQgb3BlcmF0b3IqKGhhbGYyeDQgYSwgaGFsZjJ4NCBiKSB7CisgICAgaGFsZjJ4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAqIGJbMF1bMF07CisgICAgcmVzdWx0
WzBdWzFdID0gYVswXVsxXSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAq
IGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGJbMF1bM107CisgICAgcmVz
dWx0WzFdWzBdID0gYVsxXVswXSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsx
XSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGJbMV1bMl07CisgICAg
cmVzdWx0WzFdWzNdID0gYVsxXVszXSAqIGJbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDQgb3BlcmF0b3IqKGhhbGYyeDQgYSwgaGFsZiBiKSB7CisgICAgaGFsZjJ4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAqIGI7CisgICAgcmVzdWx0WzBdWzFdID0g
YVswXVsxXSAqIGI7CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAqIGI7CisgICAgcmVzdWx0
WzBdWzNdID0gYVswXVszXSAqIGI7CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAqIGI7Cisg
ICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAqIGI7CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsy
XSAqIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyeDQgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjJ4NCBiKSB7CisgICAgaGFsZjJ4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBd
WzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAg
cmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJbMV1b
MF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0g
YSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJbMV1bM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyeDQgb3BlcmF0b3IvKGhhbGYyeDQgYSwgaGFsZjJ4NCBiKSB7Cisg
ICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAvIGJbMF1bMF07
CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJd
ID0gYVswXVsyXSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGJbMF1b
M107CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFd
WzFdID0gYVsxXVsxXSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAvIGJb
MV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAvIGJbMV1bM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyeDQgb3BlcmF0b3IvKGhhbGYyeDQgYSwgaGFsZiBiKSB7CisgICAg
aGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAvIGI7CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSAvIGI7CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAvIGI7
CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGI7CisgICAgcmVzdWx0WzFdWzBdID0gYVsx
XVswXSAvIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAvIGI7CisgICAgcmVzdWx0WzFd
WzJdID0gYVsxXVsyXSAvIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAvIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgb3BlcmF0b3IvKGhhbGYgYSwgaGFsZjJ4NCBiKSB7
CisgICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07Cisg
ICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJb
MF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBd
ID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVz
dWx0WzFdWzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAvIGJbMV1bM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgb3BlcmF0b3IrKGhhbGYzeDIgYSwgaGFs
ZjN4MiBiKSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVsw
XSArIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSArIGJbMF1bMV07CisgICAg
cmVzdWx0WzFdWzBdID0gYVsxXVswXSArIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsx
XVsxXSArIGJbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSArIGJbMl1bMF07Cisg
ICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSArIGJbMl1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzeDIgb3BlcmF0b3ItKGhhbGYzeDIgYSwgaGFsZjN4MiBiKSB7CisgICAgaGFsZjN4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAtIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSAtIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVsw
XSAtIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAtIGJbMV1bMV07CisgICAg
cmVzdWx0WzJdWzBdID0gYVsyXVswXSAtIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsy
XVsxXSAtIGJbMl1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgb3BlcmF0b3It
KGhhbGYzeDIgYSkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IC1h
WzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IC1hWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9
IC1hWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IC1hWzFdWzFdOworICAgIHJlc3VsdFsyXVsw
XSA9IC1hWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IC1hWzJdWzFdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJhdG9yKihoYWxmM3gyIGEsIGhhbGYzeDIgYikgeworICAg
IGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFd
OworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsx
XSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9w
ZXJhdG9yKihoYWxmM3gyIGEsIGhhbGYgYikgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGFbMF1bMF0gKiBiOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBi
OworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gKiBiOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiOworICAgIHJlc3VsdFsy
XVsxXSA9IGFbMl1bMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJh
dG9yKihoYWxmIGEsIGhhbGYzeDIgYikgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGEgKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGEgKiBiWzBdWzFdOwor
ICAgIHJlc3VsdFsxXVswXSA9IGEgKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGEgKiBi
WzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGEgKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsx
XSA9IGEgKiBiWzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJhdG9y
LyhoYWxmM3gyIGEsIGhhbGYzeDIgYikgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0g
LyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJl
c3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1b
MF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJdWzFdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJhdG9yLyhoYWxmM3gyIGEsIGhhbGYgYikg
eworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1b
MF0gLyBiOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiOworICAgIHJlc3VsdFsyXVsw
XSA9IGFbMl1bMF0gLyBiOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJhdG9yLyhoYWxmIGEsIGhhbGYzeDIgYikgewor
ICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGEgLyBiWzBdWzBdOworICAg
IHJlc3VsdFswXVsxXSA9IGEgLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGEgLyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGEgLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9
IGEgLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGEgLyBiWzJdWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmM3gzIG9wZXJhdG9yKyhoYWxmM3gzIGEsIGhhbGYzeDMgYikgewor
ICAgIGhhbGYzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBd
OworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsy
XSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsx
XVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKyBi
WzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJlc3Vs
dFsyXVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
M3gzIG9wZXJhdG9yLShoYWxmM3gzIGEsIGhhbGYzeDMgYikgeworICAgIGhhbGYzeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLSBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLSBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLSBiWzBd
WzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLSBiWzFdWzBdOworICAgIHJlc3VsdFsx
XVsxXSA9IGFbMV1bMV0gLSBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLSBi
WzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gLSBiWzJdWzBdOworICAgIHJlc3Vs
dFsyXVsxXSA9IGFbMl1bMV0gLSBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0g
LSBiWzJdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIG9wZXJhdG9yLShoYWxm
M3gzIGEpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSAtYVswXVsw
XTsKKyAgICByZXN1bHRbMF1bMV0gPSAtYVswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSAtYVsw
XVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSAtYVsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSAt
YVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSAtYVsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0g
PSAtYVsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSAtYVsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSAtYVsyXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBvcGVyYXRvcioo
aGFsZjN4MyBhLCBoYWxmM3gzIGIpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBhWzBdWzBdICogYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICog
YlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYlswXVsyXTsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFd
ICogYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYlsxXVsyXTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJd
WzFdICogYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICogYlsyXVsyXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBvcGVyYXRvciooaGFsZjN4MyBhLCBoYWxmIGIp
IHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsK
KyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBd
WzJdICogYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1b
MV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICog
YjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjN4MyBvcGVyYXRvciooaGFsZiBhLCBoYWxmM3gzIGIpIHsKKyAgICBoYWxmM3gzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhICogYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0g
PSBhICogYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhICogYlswXVsyXTsKKyAgICByZXN1
bHRbMV1bMF0gPSBhICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhICogYlsxXVsxXTsK
KyAgICByZXN1bHRbMV1bMl0gPSBhICogYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhICog
YlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhICogYlsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhICogYlsyXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBvcGVyYXRv
ci8oaGFsZjN4MyBhLCBoYWxmM3gzIGIpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFd
WzFdIC8gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYlsxXVsyXTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBh
WzJdWzFdIC8gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYlsyXVsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBvcGVyYXRvci8oaGFsZjN4MyBhLCBoYWxm
IGIpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8g
YjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMF1bMl0gPSBh
WzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRb
MV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAg
ICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFd
IC8gYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjN4MyBvcGVyYXRvci8oaGFsZiBhLCBoYWxmM3gzIGIpIHsKKyAgICBoYWxmM3gz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhIC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhIC8gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBhIC8gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhIC8gYlsxXVsx
XTsKKyAgICByZXN1bHRbMV1bMl0gPSBhIC8gYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBh
IC8gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhIC8gYlsyXVsxXTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBhIC8gYlsyXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCBvcGVy
YXRvcisoaGFsZjN4NCBhLCBoYWxmM3g0IGIpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBhWzBdWzBdICsgYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdICsgYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICsgYlswXVsyXTsKKyAg
ICByZXN1bHRbMF1bM10gPSBhWzBdWzNdICsgYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBh
WzFdWzBdICsgYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICsgYlsxXVsxXTsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICsgYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10g
PSBhWzFdWzNdICsgYlsxXVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICsgYlsyXVsw
XTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICsgYlsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhWzJdWzJdICsgYlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdICsgYlsy
XVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCBvcGVyYXRvci0oaGFsZjN4NCBh
LCBoYWxmM3g0IGIpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBh
WzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsK
KyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRbMF1bM10g
PSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVsw
XTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdIC0gYlsx
XVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC0g
YlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC0gYlsyXVszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjN4NCBvcGVyYXRvci0oaGFsZjN4NCBhKSB7CisgICAgaGFsZjN4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzBd
WzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0
WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmVz
dWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07Cisg
ICAgcmVzdWx0WzJdWzNdID0gLWFbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
eDQgb3BlcmF0b3IqKGhhbGYzeDQgYSwgaGFsZjN4NCBiKSB7CisgICAgaGFsZjN4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gYVswXVsxXSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAqIGJbMF1b
Ml07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGJbMF1bM107CisgICAgcmVzdWx0WzFd
WzBdID0gYVsxXVswXSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAqIGJb
MV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGJbMV1bMl07CisgICAgcmVzdWx0
WzFdWzNdID0gYVsxXVszXSAqIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAq
IGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSAqIGJbMl1bMV07CisgICAgcmVz
dWx0WzJdWzJdID0gYVsyXVsyXSAqIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYVsyXVsz
XSAqIGJbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgb3BlcmF0b3IqKGhh
bGYzeDQgYSwgaGFsZiBiKSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYVswXVswXSAqIGI7CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAqIGI7CisgICAgcmVz
dWx0WzBdWzJdID0gYVswXVsyXSAqIGI7CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGI7
CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAqIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsx
XVsxXSAqIGI7CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGI7CisgICAgcmVzdWx0WzFd
WzNdID0gYVsxXVszXSAqIGI7CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAqIGI7CisgICAg
cmVzdWx0WzJdWzFdID0gYVsyXVsxXSAqIGI7CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAq
IGI7CisgICAgcmVzdWx0WzJdWzNdID0gYVsyXVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzeDQgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjN4NCBiKSB7CisgICAgaGFsZjN4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVz
dWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAq
IGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJbMV1bM107CisgICAgcmVzdWx0WzJd
WzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAqIGJbMl1bMV07CisgICAg
cmVzdWx0WzJdWzJdID0gYSAqIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYSAqIGJbMl1b
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgb3BlcmF0b3IvKGhhbGYzeDQgYSwg
aGFsZjN4NCBiKSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVsw
XVswXSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAvIGJbMF1bMV07Cisg
ICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0g
YVswXVszXSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAvIGJbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJd
ID0gYVsxXVsyXSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAvIGJbMV1b
M107CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJd
WzFdID0gYVsyXVsxXSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAvIGJb
Ml1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYVsyXVszXSAvIGJbMl1bM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYzeDQgb3BlcmF0b3IvKGhhbGYzeDQgYSwgaGFsZiBiKSB7CisgICAg
aGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAvIGI7CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSAvIGI7CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAvIGI7
CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGI7CisgICAgcmVzdWx0WzFdWzBdID0gYVsx
XVswXSAvIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAvIGI7CisgICAgcmVzdWx0WzFd
WzJdID0gYVsxXVsyXSAvIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAvIGI7CisgICAg
cmVzdWx0WzJdWzBdID0gYVsyXVswXSAvIGI7CisgICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSAv
IGI7CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAvIGI7CisgICAgcmVzdWx0WzJdWzNdID0g
YVsyXVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgb3BlcmF0b3IvKGhh
bGYgYSwgaGFsZjN4NCBiKSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVz
dWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107
CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAv
IGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFd
WzNdID0gYSAvIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1b
Ml07CisgICAgcmVzdWx0WzJdWzNdID0gYSAvIGJbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0eDIgb3BlcmF0b3IrKGhhbGY0eDIgYSwgaGFsZjR4MiBiKSB7CisgICAgaGFsZjR4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSArIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSArIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVsw
XSArIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSArIGJbMV1bMV07CisgICAg
cmVzdWx0WzJdWzBdID0gYVsyXVswXSArIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsy
XVsxXSArIGJbMl1bMV07CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSArIGJbM11bMF07Cisg
ICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSArIGJbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0eDIgb3BlcmF0b3ItKGhhbGY0eDIgYSwgaGFsZjR4MiBiKSB7CisgICAgaGFsZjR4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAtIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSAtIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVsw
XSAtIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAtIGJbMV1bMV07CisgICAg
cmVzdWx0WzJdWzBdID0gYVsyXVswXSAtIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsy
XVsxXSAtIGJbMl1bMV07CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAtIGJbM11bMF07Cisg
ICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAtIGJbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0eDIgb3BlcmF0b3ItKGhhbGY0eDIgYSkgeworICAgIGhhbGY0eDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IC1hWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IC1hWzBdWzFd
OworICAgIHJlc3VsdFsxXVswXSA9IC1hWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IC1hWzFd
WzFdOworICAgIHJlc3VsdFsyXVswXSA9IC1hWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IC1h
WzJdWzFdOworICAgIHJlc3VsdFszXVswXSA9IC1hWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9
IC1hWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9wZXJhdG9yKihoYWxm
NHgyIGEsIGhhbGY0eDIgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBd
WzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsx
XVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBi
WzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJlc3Vs
dFszXVswXSA9IGFbM11bMF0gKiBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0g
KiBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9wZXJhdG9yKihoYWxm
NHgyIGEsIGhhbGYgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IGFbMF1bMF0gKiBiOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiOworICAgIHJlc3Vs
dFsxXVswXSA9IGFbMV1bMF0gKiBiOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiOwor
ICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1b
MV0gKiBiOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gKiBiOworICAgIHJlc3VsdFszXVsx
XSA9IGFbM11bMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9wZXJhdG9y
KihoYWxmIGEsIGhhbGY0eDIgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGEgKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGEgKiBiWzBdWzFdOworICAg
IHJlc3VsdFsxXVswXSA9IGEgKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGEgKiBiWzFd
WzFdOworICAgIHJlc3VsdFsyXVswXSA9IGEgKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9
IGEgKiBiWzJdWzFdOworICAgIHJlc3VsdFszXVswXSA9IGEgKiBiWzNdWzBdOworICAgIHJlc3Vs
dFszXVsxXSA9IGEgKiBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9w
ZXJhdG9yLyhoYWxmNHgyIGEsIGhhbGY0eDIgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFb
MF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9
IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJdWzFd
OworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gLyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsx
XSA9IGFbM11bMV0gLyBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9w
ZXJhdG9yLyhoYWxmNHgyIGEsIGhhbGYgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGFbMF1bMF0gLyBiOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBi
OworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gLyBiOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gLyBiOworICAgIHJlc3VsdFsy
XVsxXSA9IGFbMl1bMV0gLyBiOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gLyBiOworICAg
IHJlc3VsdFszXVsxXSA9IGFbM11bMV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NHgyIG9wZXJhdG9yLyhoYWxmIGEsIGhhbGY0eDIgYikgeworICAgIGhhbGY0eDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGEgLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGEgLyBi
WzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGEgLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsx
XSA9IGEgLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGEgLyBiWzJdWzBdOworICAgIHJl
c3VsdFsyXVsxXSA9IGEgLyBiWzJdWzFdOworICAgIHJlc3VsdFszXVswXSA9IGEgLyBiWzNdWzBd
OworICAgIHJlc3VsdFszXVsxXSA9IGEgLyBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNHgzIG9wZXJhdG9yKyhoYWxmNHgzIGEsIGhhbGY0eDMgYikgeworICAgIGhhbGY0eDMg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3Vs
dFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0g
KyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJl
c3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1b
Ml0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKyBiWzJdWzBdOworICAg
IHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFb
Ml1bMl0gKyBiWzJdWzJdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gKyBiWzNdWzBdOwor
ICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKyBiWzNdWzFdOworICAgIHJlc3VsdFszXVsyXSA9
IGFbM11bMl0gKyBiWzNdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIG9wZXJh
dG9yLShoYWxmNHgzIGEsIGhhbGY0eDMgYikgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGFbMF1bMF0gLSBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1b
MV0gLSBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLSBiWzBdWzJdOworICAg
IHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLSBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gLSBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLSBiWzFdWzJdOwor
ICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gLSBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9
IGFbMl1bMV0gLSBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gLSBiWzJdWzJd
OworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gLSBiWzNdWzBdOworICAgIHJlc3VsdFszXVsx
XSA9IGFbM11bMV0gLSBiWzNdWzFdOworICAgIHJlc3VsdFszXVsyXSA9IGFbM11bMl0gLSBiWzNd
WzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIG9wZXJhdG9yLShoYWxmNHgzIGEp
IHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSAtYVswXVswXTsKKyAg
ICByZXN1bHRbMF1bMV0gPSAtYVswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSAtYVswXVsyXTsK
KyAgICByZXN1bHRbMV1bMF0gPSAtYVsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSAtYVsxXVsx
XTsKKyAgICByZXN1bHRbMV1bMl0gPSAtYVsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSAtYVsy
XVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSAtYVsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSAt
YVsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSAtYVszXVswXTsKKyAgICByZXN1bHRbM11bMV0g
PSAtYVszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSAtYVszXVsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MyBvcGVyYXRvciooaGFsZjR4MyBhLCBoYWxmNHgzIGIpIHsKKyAgICBo
YWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYlswXVswXTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBh
WzBdWzJdICogYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYlsxXVswXTsK
KyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0g
PSBhWzFdWzJdICogYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYlsyXVsw
XTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYlsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhWzJdWzJdICogYlsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdICogYlsz
XVswXTsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdICogYlszXVsxXTsKKyAgICByZXN1bHRb
M11bMl0gPSBhWzNdWzJdICogYlszXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4
MyBvcGVyYXRvciooaGFsZjR4MyBhLCBoYWxmIGIpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
ICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMV1bMF0g
PSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1
bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsK
KyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJd
WzJdICogYjsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdICogYjsKKyAgICByZXN1bHRbM11b
MV0gPSBhWzNdWzFdICogYjsKKyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdICogYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBvcGVyYXRvciooaGFsZiBhLCBoYWxmNHgzIGIpIHsK
KyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhICogYlswXVswXTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBhICogYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhICogYlsw
XVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0g
PSBhICogYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhICogYlsxXVsyXTsKKyAgICByZXN1
bHRbMl1bMF0gPSBhICogYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhICogYlsyXVsxXTsK
KyAgICByZXN1bHRbMl1bMl0gPSBhICogYlsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSBhICog
YlszXVswXTsKKyAgICByZXN1bHRbM11bMV0gPSBhICogYlszXVsxXTsKKyAgICByZXN1bHRbM11b
Ml0gPSBhICogYlszXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBvcGVyYXRv
ci8oaGFsZjR4MyBhLCBoYWxmNHgzIGIpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFd
WzFdIC8gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYlsxXVsyXTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBh
WzJdWzFdIC8gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYlsyXVsyXTsK
KyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC8gYlszXVswXTsKKyAgICByZXN1bHRbM11bMV0g
PSBhWzNdWzFdIC8gYlszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdIC8gYlszXVsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBvcGVyYXRvci8oaGFsZjR4MyBhLCBo
YWxmIGIpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
IC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMF1bMl0g
PSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1
bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsK
KyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJd
WzFdIC8gYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYjsKKyAgICByZXN1bHRbM11b
MF0gPSBhWzNdWzBdIC8gYjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC8gYjsKKyAgICBy
ZXN1bHRbM11bMl0gPSBhWzNdWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4
MyBvcGVyYXRvci8oaGFsZiBhLCBoYWxmNHgzIGIpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhIC8gYlsw
XVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhIC8gYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0g
PSBhIC8gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhIC8gYlsxXVsxXTsKKyAgICByZXN1
bHRbMV1bMl0gPSBhIC8gYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhIC8gYlsyXVswXTsK
KyAgICByZXN1bHRbMl1bMV0gPSBhIC8gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhIC8g
YlsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSBhIC8gYlszXVswXTsKKyAgICByZXN1bHRbM11b
MV0gPSBhIC8gYlszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSBhIC8gYlszXVsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBvcGVyYXRvcisoaGFsZjR4NCBhLCBoYWxmNHg0IGIp
IHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICsgYlsw
XVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICsgYlswXVsxXTsKKyAgICByZXN1bHRb
MF1bMl0gPSBhWzBdWzJdICsgYlswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBdWzNdICsg
YlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICsgYlsxXVswXTsKKyAgICByZXN1
bHRbMV1bMV0gPSBhWzFdWzFdICsgYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJd
ICsgYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdICsgYlsxXVszXTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhWzJdWzBdICsgYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJd
WzFdICsgYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICsgYlsyXVsyXTsKKyAg
ICByZXN1bHRbMl1bM10gPSBhWzJdWzNdICsgYlsyXVszXTsKKyAgICByZXN1bHRbM11bMF0gPSBh
WzNdWzBdICsgYlszXVswXTsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdICsgYlszXVsxXTsK
KyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdICsgYlszXVsyXTsKKyAgICByZXN1bHRbM11bM10g
PSBhWzNdWzNdICsgYlszXVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBvcGVy
YXRvci0oaGFsZjR4NCBhLCBoYWxmNHg0IGIpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAg
ICByZXN1bHRbMF1bM10gPSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBh
WzFdWzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10g
PSBhWzFdWzNdIC0gYlsxXVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVsw
XTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhWzJdWzJdIC0gYlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC0gYlsy
XVszXTsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC0gYlszXVswXTsKKyAgICByZXN1bHRb
M11bMV0gPSBhWzNdWzFdIC0gYlszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdIC0g
YlszXVsyXTsKKyAgICByZXN1bHRbM11bM10gPSBhWzNdWzNdIC0gYlszXVszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjR4NCBvcGVyYXRvci0oaGFsZjR4NCBhKSB7CisgICAgaGFsZjR4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzBd
WzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0
WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmVz
dWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07Cisg
ICAgcmVzdWx0WzJdWzNdID0gLWFbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gLWFbM11bMF07
CisgICAgcmVzdWx0WzNdWzFdID0gLWFbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gLWFbM11b
Ml07CisgICAgcmVzdWx0WzNdWzNdID0gLWFbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0eDQgb3BlcmF0b3IqKGhhbGY0eDQgYSwgaGFsZjR4NCBiKSB7CisgICAgaGFsZjR4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAqIGJbMF1bMF07CisgICAgcmVzdWx0
WzBdWzFdID0gYVswXVsxXSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAq
IGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGJbMF1bM107CisgICAgcmVz
dWx0WzFdWzBdID0gYVsxXVswXSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsx
XSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGJbMV1bMl07CisgICAg
cmVzdWx0WzFdWzNdID0gYVsxXVszXSAqIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYVsy
XVswXSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSAqIGJbMl1bMV07Cisg
ICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAqIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0g
YVsyXVszXSAqIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAqIGJbM11bMF07
CisgICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAqIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJd
ID0gYVszXVsyXSAqIGJbM11bMl07CisgICAgcmVzdWx0WzNdWzNdID0gYVszXVszXSAqIGJbM11b
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgb3BlcmF0b3IqKGhhbGY0eDQgYSwg
aGFsZiBiKSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVsw
XSAqIGI7CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAqIGI7CisgICAgcmVzdWx0WzBdWzJd
ID0gYVswXVsyXSAqIGI7CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGI7CisgICAgcmVz
dWx0WzFdWzBdID0gYVsxXVswXSAqIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAqIGI7
CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsx
XVszXSAqIGI7CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAqIGI7CisgICAgcmVzdWx0WzJd
WzFdID0gYVsyXVsxXSAqIGI7CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAqIGI7CisgICAg
cmVzdWx0WzJdWzNdID0gYVsyXVszXSAqIGI7CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAq
IGI7CisgICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAqIGI7CisgICAgcmVzdWx0WzNdWzJdID0g
YVszXVsyXSAqIGI7CisgICAgcmVzdWx0WzNdWzNdID0gYVszXVszXSAqIGI7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0eDQgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjR4NCBiKSB7CisgICAg
aGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07
CisgICAgcmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAq
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFd
WzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJbMV1bM107CisgICAg
cmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAqIGJbMl1b
MV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAqIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0g
YSAqIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYSAqIGJbM11bMF07CisgICAgcmVzdWx0
WzNdWzFdID0gYSAqIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAqIGJbM11bMl07Cisg
ICAgcmVzdWx0WzNdWzNdID0gYSAqIGJbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0eDQgb3BlcmF0b3IvKGhhbGY0eDQgYSwgaGFsZjR4NCBiKSB7CisgICAgaGFsZjR4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBd
WzFdID0gYVswXVsxXSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAvIGJb
MF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGJbMF1bM107CisgICAgcmVzdWx0
WzFdWzBdID0gYVsxXVswXSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAv
IGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAvIGJbMV1bMl07CisgICAgcmVz
dWx0WzFdWzNdID0gYVsxXVszXSAvIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVsw
XSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSAvIGJbMl1bMV07CisgICAg
cmVzdWx0WzJdWzJdID0gYVsyXVsyXSAvIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYVsy
XVszXSAvIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAvIGJbM11bMF07Cisg
ICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAvIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0g
YVszXVsyXSAvIGJbM11bMl07CisgICAgcmVzdWx0WzNdWzNdID0gYVszXVszXSAvIGJbM11bM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgb3BlcmF0b3IvKGhhbGY0eDQgYSwgaGFs
ZiBiKSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAv
IGI7CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAvIGI7CisgICAgcmVzdWx0WzBdWzJdID0g
YVswXVsyXSAvIGI7CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGI7CisgICAgcmVzdWx0
WzFdWzBdID0gYVsxXVswXSAvIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAvIGI7Cisg
ICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAvIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVsz
XSAvIGI7CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAvIGI7CisgICAgcmVzdWx0WzJdWzFd
ID0gYVsyXVsxXSAvIGI7CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAvIGI7CisgICAgcmVz
dWx0WzJdWzNdID0gYVsyXVszXSAvIGI7CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAvIGI7
CisgICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAvIGI7CisgICAgcmVzdWx0WzNdWzJdID0gYVsz
XVsyXSAvIGI7CisgICAgcmVzdWx0WzNdWzNdID0gYVszXVszXSAvIGI7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0eDQgb3BlcmF0b3IvKGhhbGYgYSwgaGFsZjR4NCBiKSB7CisgICAgaGFs
ZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0
WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07Cisg
ICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJd
ID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAvIGJbMV1bM107CisgICAgcmVz
dWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAvIGJbMl1bMV07
CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYSAv
IGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYSAvIGJbM11bMF07CisgICAgcmVzdWx0WzNd
WzFdID0gYSAvIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAvIGJbM11bMl07CisgICAg
cmVzdWx0WzNdWzNdID0gYSAvIGJbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
MngyIG9wZXJhdG9yKyhmbG9hdDJ4MiBhLCBmbG9hdDJ4MiBiKSB7CisgICAgZmxvYXQyeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFsw
XVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDJ4MiBvcGVyYXRvci0oZmxvYXQyeDIgYSwgZmxvYXQyeDIgYikg
eworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlsw
XVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRb
MV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0g
YlsxXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDIgb3BlcmF0b3ItKGZsb2F0
MngyIGEpIHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gLWFb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MngyIG9wZXJhdG9yKihmbG9hdDJ4MiBhLCBmbG9hdDJ4MiBiKSB7CisgICAgZmxv
YXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAg
IHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFb
MV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBvcGVyYXRvciooZmxvYXQyeDIgYSwgZmxv
YXQgYikgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
ICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMV1bMF0g
PSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQyeDIgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0MngyIGIpIHsK
KyAgICBmbG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07Cisg
ICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngyIG9wZXJhdG9yLyhmbG9hdDJ4MiBhLCBmbG9hdDJ4MiBiKSB7CisgICAg
ZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBvcGVyYXRvci8oZmxvYXQyeDIgYSwg
ZmxvYXQgYikgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBd
WzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1b
MF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDIgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0MngyIGIp
IHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07
CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYSAv
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MngzIG9wZXJhdG9yKyhmbG9hdDJ4MyBhLCBmbG9hdDJ4MyBiKSB7Cisg
ICAgZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBd
OworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsy
XSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsx
XVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4
MyBvcGVyYXRvci0oZmxvYXQyeDMgYSwgZmxvYXQyeDMgYikgeworICAgIGZsb2F0MngzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlsw
XVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRb
MV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0g
YlsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgb3BlcmF0b3ItKGZsb2F0
MngzIGEpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFb
MF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0g
LWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngzIG9wZXJhdG9yKihmbG9hdDJ4MyBhLCBmbG9hdDJ4MyBiKSB7CisgICAg
ZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9
IGFbMF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBd
OworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsy
XSA9IGFbMV1bMl0gKiBiWzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBv
cGVyYXRvciooZmxvYXQyeDMgYSwgZmxvYXQgYikgeworICAgIGZsb2F0MngzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
ICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMV1bMF0g
PSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1
bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMg
b3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0MngzIGIpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJb
MF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBd
ID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVz
dWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mngz
IG9wZXJhdG9yLyhmbG9hdDJ4MyBhLCBmbG9hdDJ4MyBiKSB7CisgICAgZmxvYXQyeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBd
WzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsx
XVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBi
WzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBvcGVyYXRvci8oZmxvYXQy
eDMgYSwgZmxvYXQgYikgeworICAgIGZsb2F0MngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1
bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsK
KyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFd
WzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgb3BlcmF0b3IvKGZsb2F0
IGEsIGZsb2F0MngzIGIpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVz
dWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAv
IGJbMV1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IG9wZXJhdG9yKyhmbG9h
dDJ4NCBhLCBmbG9hdDJ4NCBiKSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBi
WzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3Vs
dFswXVszXSA9IGFbMF1bM10gKyBiWzBdWzNdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0g
KyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJl
c3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1b
M10gKyBiWzFdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBvcGVyYXRvci0o
ZmxvYXQyeDQgYSwgZmxvYXQyeDQgYikgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFd
WzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBh
WzFdWzNdIC0gYlsxXVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDQgb3BlcmF0
b3ItKGZsb2F0Mng0IGEpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBd
WzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0
WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVz
dWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gLWFbMV1bM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IG9wZXJhdG9yKihmbG9hdDJ4NCBhLCBmbG9hdDJ4
NCBiKSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0g
KiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJl
c3VsdFswXVsyXSA9IGFbMF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1b
M10gKiBiWzBdWzNdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAg
IHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFb
MV1bMl0gKiBiWzFdWzJdOworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gKiBiWzFdWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBvcGVyYXRvciooZmxvYXQyeDQgYSwgZmxv
YXQgYikgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
ICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0g
PSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBdWzNdICogYjsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFd
WzNdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDQgb3BlcmF0b3IqKGZsb2F0
IGEsIGZsb2F0Mng0IGIpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVz
dWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107
CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAq
IGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFd
WzNdID0gYSAqIGJbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IG9wZXJh
dG9yLyhmbG9hdDJ4NCBhLCBmbG9hdDJ4NCBiKSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFb
MF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBdWzJdOwor
ICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gLyBiWzBdWzNdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFd
OworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBiWzFdWzJdOworICAgIHJlc3VsdFsxXVsz
XSA9IGFbMV1bM10gLyBiWzFdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBv
cGVyYXRvci8oZmxvYXQyeDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC8gYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMF1bM10g
PSBhWzBdWzNdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1
bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsK
KyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQyeDQgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0Mng0IGIpIHsKKyAgICBmbG9hdDJ4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVz
dWx0WzBdWzNdID0gYSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAv
IGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAvIGJbMV1bM107CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0M3gyIG9wZXJhdG9yKyhmbG9hdDN4MiBhLCBmbG9hdDN4MiBiKSB7Cisg
ICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBd
OworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVsw
XSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFd
WzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKyBiWzJdWzBdOworICAgIHJlc3VsdFsy
XVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4
MiBvcGVyYXRvci0oZmxvYXQzeDIgYSwgZmxvYXQzeDIgYikgeworICAgIGZsb2F0M3gyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsx
XVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0g
YlsyXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDIgb3BlcmF0b3ItKGZsb2F0
M3gyIGEpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gLWFb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0g
LWFbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0M3gyIG9wZXJhdG9yKihmbG9hdDN4MiBhLCBmbG9hdDN4MiBiKSB7CisgICAg
ZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFd
OworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsx
XSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBv
cGVyYXRvciooZmxvYXQzeDIgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
ICogYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0g
PSBhWzFdWzFdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICByZXN1
bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDIg
b3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0M3gyIGIpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJb
MF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFd
ID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVz
dWx0WzJdWzFdID0gYSAqIGJbMl1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gy
IG9wZXJhdG9yLyhmbG9hdDN4MiBhLCBmbG9hdDN4MiBiKSB7CisgICAgZmxvYXQzeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsy
XVswXSA9IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBi
WzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBvcGVyYXRvci8oZmxvYXQz
eDIgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsK
KyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJd
WzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDIgb3BlcmF0b3IvKGZsb2F0
IGEsIGZsb2F0M3gyIGIpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVz
dWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07
CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAv
IGJbMl1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIG9wZXJhdG9yKyhmbG9h
dDN4MyBhLCBmbG9hdDN4MyBiKSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBi
WzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3Vs
dFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0g
KyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJl
c3VsdFsyXVswXSA9IGFbMl1bMF0gKyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1b
MV0gKyBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBvcGVyYXRvci0oZmxvYXQzeDMgYSwgZmxvYXQz
eDMgYikgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
IC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFd
WzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBh
WzJdWzBdIC0gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsK
KyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC0gYlsyXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzeDMgb3BlcmF0b3ItKGZsb2F0M3gzIGEpIHsKKyAgICBmbG9hdDN4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFb
MF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0g
LWFbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJd
ID0gLWFbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAgcmVzdWx0WzJd
WzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0M3gzIG9wZXJhdG9yKihmbG9hdDN4MyBhLCBmbG9hdDN4MyBiKSB7
CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBd
WzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsw
XVsyXSA9IGFbMF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3Vs
dFsxXVsyXSA9IGFbMV1bMl0gKiBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0g
KiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJl
c3VsdFsyXVsyXSA9IGFbMl1bMl0gKiBiWzJdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDN4MyBvcGVyYXRvciooZmxvYXQzeDMgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3gzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0g
PSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJd
WzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhWzJdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgb3BlcmF0
b3IqKGZsb2F0IGEsIGZsb2F0M3gzIGIpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07
CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gYSAq
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFd
WzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gYSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAqIGJbMl1b
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIG9wZXJhdG9yLyhmbG9hdDN4MyBh
LCBmbG9hdDN4MyBiKSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiWzBdWzFd
OworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVsw
XSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFd
WzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBiWzFdWzJdOworICAgIHJlc3VsdFsy
XVswXSA9IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBi
WzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gLyBiWzJdWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDN4MyBvcGVyYXRvci8oZmxvYXQzeDMgYSwgZmxvYXQgYikgewor
ICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAg
ICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJd
IC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0g
PSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAgICByZXN1
bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsK
KyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzeDMgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0M3gzIGIpIHsKKyAgICBmbG9hdDN4MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVz
dWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07
CisgICAgcmVzdWx0WzFdWzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gYSAv
IGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJd
WzJdID0gYSAvIGJbMl1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IG9wZXJh
dG9yKyhmbG9hdDN4NCBhLCBmbG9hdDN4NCBiKSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFb
MF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOwor
ICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gKyBiWzBdWzNdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFd
OworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsxXVsz
XSA9IGFbMV1bM10gKyBiWzFdWzNdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKyBiWzJd
WzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJlc3VsdFsy
XVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAgIHJlc3VsdFsyXVszXSA9IGFbMl1bM10gKyBi
WzJdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBvcGVyYXRvci0oZmxvYXQz
eDQgYSwgZmxvYXQzeDQgYikgeworICAgIGZsb2F0M3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlsw
XVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRb
MF1bM10gPSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0g
YlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1
bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNd
IC0gYlsxXVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJd
WzJdIC0gYlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC0gYlsyXVszXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgb3BlcmF0b3ItKGZsb2F0M3g0IGEpIHsKKyAg
ICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAg
cmVzdWx0WzBdWzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07Cisg
ICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07
CisgICAgcmVzdWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1b
MF07CisgICAgcmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFb
Ml1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gLWFbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0M3g0IG9wZXJhdG9yKihmbG9hdDN4NCBhLCBmbG9hdDN4NCBiKSB7CisgICAgZmxv
YXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAg
IHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFb
MF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gKiBiWzBdWzNdOwor
ICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9
IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKiBiWzFdWzJd
OworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gKiBiWzFdWzNdOworICAgIHJlc3VsdFsyXVsw
XSA9IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJd
WzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKiBiWzJdWzJdOworICAgIHJlc3VsdFsy
XVszXSA9IGFbMl1bM10gKiBiWzJdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4
NCBvcGVyYXRvciooZmxvYXQzeDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3g0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMF1b
M10gPSBhWzBdWzNdICogYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICog
YjsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBh
WzJdWzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXN1bHRb
Ml1bMl0gPSBhWzJdWzJdICogYjsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdICogYjsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0M3g0
IGIpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0g
YSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0
WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07Cisg
ICAgcmVzdWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJb
MV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFd
ID0gYSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAqIGJbMl1bMl07CisgICAgcmVz
dWx0WzJdWzNdID0gYSAqIGJbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0
IG9wZXJhdG9yLyhmbG9hdDN4NCBhLCBmbG9hdDN4NCBiKSB7CisgICAgZmxvYXQzeDQgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBd
WzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gLyBiWzBdWzNdOworICAgIHJlc3VsdFsx
XVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBi
WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBiWzFdWzJdOworICAgIHJlc3Vs
dFsxXVszXSA9IGFbMV1bM10gLyBiWzFdWzNdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0g
LyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJdWzFdOworICAgIHJl
c3VsdFsyXVsyXSA9IGFbMl1bMl0gLyBiWzJdWzJdOworICAgIHJlc3VsdFsyXVszXSA9IGFbMl1b
M10gLyBiWzJdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBvcGVyYXRvci8o
ZmxvYXQzeDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3g0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAg
ICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBdWzNd
IC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0g
PSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAgICByZXN1
bHRbMV1bM10gPSBhWzFdWzNdIC8gYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsK
KyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJd
WzJdIC8gYjsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC8gYjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzeDQgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0M3g0IGIpIHsKKyAgICBm
bG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07
CisgICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAv
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFd
WzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAvIGJbMV1bM107CisgICAg
cmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAvIGJbMl1b
MV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0g
YSAvIGJbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIG9wZXJhdG9yKyhm
bG9hdDR4MiBhLCBmbG9hdDR4MiBiKSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0g
KyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJl
c3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1b
MF0gKyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAg
IHJlc3VsdFszXVswXSA9IGFbM11bMF0gKyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFb
M11bMV0gKyBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiBvcGVyYXRv
ci0oZmxvYXQ0eDIgYSwgZmxvYXQ0eDIgYikgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMl1bMF0gPSBh
WzJdWzBdIC0gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsK
KyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC0gYlszXVswXTsKKyAgICByZXN1bHRbM11bMV0g
PSBhWzNdWzFdIC0gYlszXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDIgb3Bl
cmF0b3ItKGZsb2F0NHgyIGEpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0
WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVz
dWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAg
cmVzdWx0WzNdWzBdID0gLWFbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0gLWFbM11bMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIG9wZXJhdG9yKihmbG9hdDR4MiBhLCBmbG9h
dDR4MiBiKSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1b
MF0gKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAg
IHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiWzJdWzBdOwor
ICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJlc3VsdFszXVswXSA9
IGFbM11bMF0gKiBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKiBiWzNdWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiBvcGVyYXRvciooZmxvYXQ0eDIgYSwg
ZmxvYXQgYikgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBd
WzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMV1b
MF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICog
YjsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdICogYjsKKyAgICByZXN1bHRbM11bMV0gPSBh
WzNdWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDIgb3BlcmF0b3IqKGZs
b2F0IGEsIGZsb2F0NHgyIGIpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAg
cmVzdWx0WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1b
MV07CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0g
YSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzNdWzBdID0gYSAqIGJbM11bMF07CisgICAgcmVzdWx0
WzNdWzFdID0gYSAqIGJbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIG9w
ZXJhdG9yLyhmbG9hdDR4MiBhLCBmbG9hdDR4MiBiKSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9
IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBd
OworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVsw
XSA9IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJd
WzFdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gLyBiWzNdWzBdOworICAgIHJlc3VsdFsz
XVsxXSA9IGFbM11bMV0gLyBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4
MiBvcGVyYXRvci8oZmxvYXQ0eDIgYSwgZmxvYXQgYikgeworICAgIGZsb2F0NHgyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1b
MV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC8g
YjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0eDIgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0NHgyIGIpIHsKKyAgICBmbG9hdDR4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBd
WzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAg
cmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1b
MF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzNdWzBdID0g
YSAvIGJbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0gYSAvIGJbM11bMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NHgzIG9wZXJhdG9yKyhmbG9hdDR4MyBhLCBmbG9hdDR4MyBiKSB7
CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBd
WzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsw
XVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3Vs
dFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0g
KyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJl
c3VsdFsyXVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11b
MF0gKyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKyBiWzNdWzFdOworICAg
IHJlc3VsdFszXVsyXSA9IGFbM11bMl0gKyBiWzNdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDR4MyBvcGVyYXRvci0oZmxvYXQ0eDMgYSwgZmxvYXQ0eDMgYikgeworICAgIGZsb2F0
NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBd
WzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBh
WzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsK
KyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0g
PSBhWzJdWzJdIC0gYlsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC0gYlszXVsw
XTsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC0gYlszXVsxXTsKKyAgICByZXN1bHRbM11b
Ml0gPSBhWzNdWzJdIC0gYlszXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDMg
b3BlcmF0b3ItKGZsb2F0NHgzIGEpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVz
dWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAg
cmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07Cisg
ICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gLWFbMl1bMV07
CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07CisgICAgcmVzdWx0WzNdWzBdID0gLWFbM11b
MF07CisgICAgcmVzdWx0WzNdWzFdID0gLWFbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gLWFb
M11bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIG9wZXJhdG9yKihmbG9hdDR4
MyBhLCBmbG9hdDR4MyBiKSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBd
WzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFsx
XVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBi
WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKiBiWzFdWzJdOworICAgIHJlc3Vs
dFsyXVswXSA9IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0g
KiBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKiBiWzJdWzJdOworICAgIHJl
c3VsdFszXVswXSA9IGFbM11bMF0gKiBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11b
MV0gKiBiWzNdWzFdOworICAgIHJlc3VsdFszXVsyXSA9IGFbM11bMl0gKiBiWzNdWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MyBvcGVyYXRvciooZmxvYXQ0eDMgYSwgZmxvYXQg
YikgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICog
YjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBh
WzBdWzJdICogYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRb
MV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAg
ICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFd
ICogYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICogYjsKKyAgICByZXN1bHRbM11bMF0g
PSBhWzNdWzBdICogYjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdICogYjsKKyAgICByZXN1
bHRbM11bMl0gPSBhWzNdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDMg
b3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0NHgzIGIpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJb
MF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBd
ID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVz
dWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07
CisgICAgcmVzdWx0WzJdWzFdID0gYSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAq
IGJbMl1bMl07CisgICAgcmVzdWx0WzNdWzBdID0gYSAqIGJbM11bMF07CisgICAgcmVzdWx0WzNd
WzFdID0gYSAqIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAqIGJbM11bMl07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIG9wZXJhdG9yLyhmbG9hdDR4MyBhLCBmbG9hdDR4
MyBiKSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0g
LyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJl
c3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1b
MF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAg
IHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFb
Ml1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJdWzFdOwor
ICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gLyBiWzJdWzJdOworICAgIHJlc3VsdFszXVswXSA9
IGFbM11bMF0gLyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gLyBiWzNdWzFd
OworICAgIHJlc3VsdFszXVsyXSA9IGFbM11bMl0gLyBiWzNdWzJdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDR4MyBvcGVyYXRvci8oZmxvYXQ0eDMgYSwgZmxvYXQgYikgeworICAgIGZs
b2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1
bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsK
KyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFd
WzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAgICByZXN1bHRbMl1b
MF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsKKyAgICBy
ZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYjsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC8g
YjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC8gYjsKKyAgICByZXN1bHRbM11bMl0gPSBh
WzNdWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDMgb3BlcmF0b3IvKGZs
b2F0IGEsIGZsb2F0NHgzIGIpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAg
cmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1b
MF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0g
YSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVzdWx0
WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1bMl07Cisg
ICAgcmVzdWx0WzNdWzBdID0gYSAvIGJbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0gYSAvIGJb
M11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAvIGJbM11bMl07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NHg0IG9wZXJhdG9yKyhmbG9hdDR4NCBhLCBmbG9hdDR4NCBiKSB7CisgICAg
ZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9
IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gKyBiWzBdWzNd
OworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsx
XSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFd
WzJdOworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gKyBiWzFdWzNdOworICAgIHJlc3VsdFsy
XVswXSA9IGFbMl1bMF0gKyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBi
WzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAgIHJlc3Vs
dFsyXVszXSA9IGFbMl1bM10gKyBiWzJdWzNdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0g
KyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKyBiWzNdWzFdOworICAgIHJl
c3VsdFszXVsyXSA9IGFbM11bMl0gKyBiWzNdWzJdOworICAgIHJlc3VsdFszXVszXSA9IGFbM11b
M10gKyBiWzNdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBvcGVyYXRvci0o
ZmxvYXQ0eDQgYSwgZmxvYXQ0eDQgYikgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFd
WzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBh
WzFdWzNdIC0gYlsxXVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsK
KyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0g
PSBhWzJdWzJdIC0gYlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC0gYlsyXVsz
XTsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC0gYlszXVswXTsKKyAgICByZXN1bHRbM11b
MV0gPSBhWzNdWzFdIC0gYlszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdIC0gYlsz
XVsyXTsKKyAgICByZXN1bHRbM11bM10gPSBhWzNdWzNdIC0gYlszXVszXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0eDQgb3BlcmF0b3ItKGZsb2F0NHg0IGEpIHsKKyAgICBmbG9hdDR4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzBd
WzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0
WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmVz
dWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07Cisg
ICAgcmVzdWx0WzJdWzNdID0gLWFbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gLWFbM11bMF07
CisgICAgcmVzdWx0WzNdWzFdID0gLWFbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gLWFbM11b
Ml07CisgICAgcmVzdWx0WzNdWzNdID0gLWFbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NHg0IG9wZXJhdG9yKihmbG9hdDR4NCBhLCBmbG9hdDR4NCBiKSB7CisgICAgZmxvYXQ0
eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAgIHJl
c3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1b
Ml0gKiBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gKiBiWzBdWzNdOworICAg
IHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKiBiWzFdWzJdOwor
ICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gKiBiWzFdWzNdOworICAgIHJlc3VsdFsyXVswXSA9
IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJdWzFd
OworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKiBiWzJdWzJdOworICAgIHJlc3VsdFsyXVsz
XSA9IGFbMl1bM10gKiBiWzJdWzNdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gKiBiWzNd
WzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKiBiWzNdWzFdOworICAgIHJlc3VsdFsz
XVsyXSA9IGFbM11bMl0gKiBiWzNdWzJdOworICAgIHJlc3VsdFszXVszXSA9IGFbM11bM10gKiBi
WzNdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBvcGVyYXRvciooZmxvYXQ0
eDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1
bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBdWzNdICogYjsK
KyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFd
WzFdICogYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXN1bHRbMV1b
M10gPSBhWzFdWzNdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICog
YjsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdICogYjsKKyAgICByZXN1bHRbM11bMF0gPSBh
WzNdWzBdICogYjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdICogYjsKKyAgICByZXN1bHRb
M11bMl0gPSBhWzNdWzJdICogYjsKKyAgICByZXN1bHRbM11bM10gPSBhWzNdWzNdICogYjsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0NHg0
IGIpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0g
YSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0
WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07Cisg
ICAgcmVzdWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJb
MV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFd
ID0gYSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAqIGJbMl1bMl07CisgICAgcmVz
dWx0WzJdWzNdID0gYSAqIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYSAqIGJbM11bMF07
CisgICAgcmVzdWx0WzNdWzFdID0gYSAqIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAq
IGJbM11bMl07CisgICAgcmVzdWx0WzNdWzNdID0gYSAqIGJbM11bM107CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NHg0IG9wZXJhdG9yLyhmbG9hdDR4NCBhLCBmbG9hdDR4NCBiKSB7Cisg
ICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBd
OworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsy
XSA9IGFbMF1bMl0gLyBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gLyBiWzBd
WzNdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsx
XVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBi
WzFdWzJdOworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gLyBiWzFdWzNdOworICAgIHJlc3Vs
dFsyXVswXSA9IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0g
LyBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gLyBiWzJdWzJdOworICAgIHJl
c3VsdFsyXVszXSA9IGFbMl1bM10gLyBiWzJdWzNdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11b
MF0gLyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gLyBiWzNdWzFdOworICAg
IHJlc3VsdFszXVsyXSA9IGFbM11bMl0gLyBiWzNdWzJdOworICAgIHJlc3VsdFszXVszXSA9IGFb
M11bM10gLyBiWzNdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBvcGVyYXRv
ci8oZmxvYXQ0eDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsK
KyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBd
WzNdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1b
MV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAgICBy
ZXN1bHRbMV1bM10gPSBhWzFdWzNdIC8gYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8g
YjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsKKyAgICByZXN1bHRbMl1bMl0gPSBh
WzJdWzJdIC8gYjsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC8gYjsKKyAgICByZXN1bHRb
M11bMF0gPSBhWzNdWzBdIC8gYjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC8gYjsKKyAg
ICByZXN1bHRbM11bMl0gPSBhWzNdWzJdIC8gYjsKKyAgICByZXN1bHRbM11bM10gPSBhWzNdWzNd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgb3BlcmF0b3IvKGZsb2F0IGEs
IGZsb2F0NHg0IGIpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
YSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0
WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107Cisg
ICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJb
MV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNd
ID0gYSAvIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVz
dWx0WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1bMl07
CisgICAgcmVzdWx0WzJdWzNdID0gYSAvIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYSAv
IGJbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0gYSAvIGJbM11bMV07CisgICAgcmVzdWx0WzNd
WzJdID0gYSAvIGJbM11bMl07CisgICAgcmVzdWx0WzNdWzNdID0gYSAvIGJbM11bM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2wyKGJvb2wgeCwgYm9vbCB5KSB7CisgICAg
Ym9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2wzKGJvb2wgeCwgYm9vbCB5LCBib29sIHop
IHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0g
eTsKKyAgICByZXN1bHQueiA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJv
b2wzKGJvb2wyIHgsIGJvb2wgeSkgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2wzKGJvb2wgeCwgYm9vbDIgeSkgeworICAgIGJvb2wz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7CisgICAgcmVz
dWx0LnogPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wg
eCwgYm9vbCB5LCBib29sIHosIGJvb2wgdykgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1
bHQudyA9IHc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wyIHgs
IGJvb2wgeSwgYm9vbCB6KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geC54
OworICAgIHJlc3VsdC55ID0geC55OworICAgIHJlc3VsdC56ID0geTsKKyAgICByZXN1bHQudyA9
IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wgeCwgYm9vbDIg
eSwgYm9vbCB6KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICBy
ZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wgeCwgYm9vbCB5LCBib29s
MiB6KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQu
eSA9IHk7CisgICAgcmVzdWx0LnogPSB6Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wyIHgsIGJvb2wyIHkpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7Cisg
ICAgcmVzdWx0LnogPSB5Lng7CisgICAgcmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wzIHgsIGJvb2wgeSkgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQu
eiA9IHguejsKKyAgICByZXN1bHQudyA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIGJvb2w0KGJvb2wgeCwgYm9vbDMgeSkgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAg
cmVzdWx0LncgPSB5Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVu
Z3RoKGJvb2wyKSB7CisgICAgcmV0dXJuIDI7Cit9Cit1aW50IG9wZXJhdG9yLmxlbmd0aChib29s
MykgeworICAgIHJldHVybiAzOworfQordWludCBvcGVyYXRvci5sZW5ndGgoYm9vbDQpIHsKKyAg
ICByZXR1cm4gNDsKK30KK29wZXJhdG9yIHVjaGFyMih1Y2hhciB4LCB1Y2hhciB5KSB7CisgICAg
dWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1Y2hhcjModWNoYXIgeCwgdWNoYXIgeSwgdWNo
YXIgeikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3Vs
dC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIHVjaGFyMyh1Y2hhcjIgeCwgdWNoYXIgeSkgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1Y2hhcjModWNoYXIgeCwgdWNoYXIyIHkp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9
IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0
b3IgdWNoYXI0KHVjaGFyIHgsIHVjaGFyIHksIHVjaGFyIHosIHVjaGFyIHcpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVz
dWx0LnogPSB6OworICAgIHJlc3VsdC53ID0gdzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3Bl
cmF0b3IgdWNoYXI0KHVjaGFyMiB4LCB1Y2hhciB5LCB1Y2hhciB6KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1
bHQueiA9IHk7CisgICAgcmVzdWx0LncgPSB6OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVy
YXRvciB1Y2hhcjQodWNoYXIgeCwgdWNoYXIyIHksIHVjaGFyIHopIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQu
eiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIHVjaGFyNCh1Y2hhciB4LCB1Y2hhciB5LCB1Y2hhcjIgeikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9
IHoueDsKKyAgICByZXN1bHQudyA9IHoueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0
b3IgdWNoYXI0KHVjaGFyMiB4LCB1Y2hhcjIgeSkgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7
CisgICAgcmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVj
aGFyNCh1Y2hhcjMgeCwgdWNoYXIgeSkgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB4Lno7CisgICAg
cmVzdWx0LncgPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1Y2hhcjQodWNo
YXIgeCwgdWNoYXIzIHkpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsK
KyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9
IHkuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludCBvcGVyYXRvci5sZW5ndGgodWNoYXIy
KSB7CisgICAgcmV0dXJuIDI7Cit9Cit1aW50IG9wZXJhdG9yLmxlbmd0aCh1Y2hhcjMpIHsKKyAg
ICByZXR1cm4gMzsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVjaGFyNCkgeworICAgIHJldHVy
biA0OworfQorb3BlcmF0b3IgdXNob3J0Mih1c2hvcnQgeCwgdXNob3J0IHkpIHsKKyAgICB1c2hv
cnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1c2hvcnQzKHVzaG9ydCB4LCB1c2hvcnQgeSwgdXNo
b3J0IHopIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVz
dWx0LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3Bl
cmF0b3IgdXNob3J0Myh1c2hvcnQyIHgsIHVzaG9ydCB5KSB7CisgICAgdXNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0Lnog
PSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1c2hvcnQzKHVzaG9ydCB4LCB1
c2hvcnQyIHkpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAg
cmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK29wZXJhdG9yIHVzaG9ydDQodXNob3J0IHgsIHVzaG9ydCB5LCB1c2hvcnQgeiwgdXNob3J0
IHcpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0
LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1bHQudyA9IHc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIHVzaG9ydDQodXNob3J0MiB4LCB1c2hvcnQgeSwgdXNob3J0
IHopIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1
bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmVzdWx0LncgPSB6OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1c2hvcnQ0KHVzaG9ydCB4LCB1c2hvcnQyIHksIHVz
aG9ydCB6KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJl
c3VsdC55ID0geS54OworICAgIHJlc3VsdC56ID0geS55OworICAgIHJlc3VsdC53ID0gejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgdXNob3J0NCh1c2hvcnQgeCwgdXNob3J0IHks
IHVzaG9ydDIgeikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAg
ICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVzaG9ydDQodXNob3J0MiB4LCB1c2hv
cnQyIHkpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICBy
ZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHkueDsKKyAgICByZXN1bHQudyA9IHkueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgdXNob3J0NCh1c2hvcnQzIHgsIHVzaG9y
dCB5KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVz
dWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB4Lno7CisgICAgcmVzdWx0LncgPSB5OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1c2hvcnQ0KHVzaG9ydCB4LCB1c2hvcnQzIHkp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0Lnkg
PSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVzaG9ydDIpIHsKKyAgICByZXR1
cm4gMjsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVzaG9ydDMpIHsKKyAgICByZXR1cm4gMzsK
K30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVzaG9ydDQpIHsKKyAgICByZXR1cm4gNDsKK30KK29w
ZXJhdG9yIHVpbnQyKHVpbnQgeCwgdWludCB5KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29w
ZXJhdG9yIHVpbnQzKHVpbnQgeCwgdWludCB5LCB1aW50IHopIHsKKyAgICB1aW50MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQzKHVpbnQyIHgsIHVpbnQgeSkg
eworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9
IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9y
IHVpbnQzKHVpbnQgeCwgdWludDIgeSkgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQ0KHVpbnQgeCwgdWludCB5LCB1aW50IHosIHVp
bnQgdykgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0
LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1bHQudyA9IHc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQ0KHVpbnQyIHgsIHVpbnQgeSwgdWludCB6KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geC54OworICAgIHJlc3VsdC55ID0geC55
OworICAgIHJlc3VsdC56ID0geTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK29wZXJhdG9yIHVpbnQ0KHVpbnQgeCwgdWludDIgeSwgdWludCB6KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICBy
ZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K29wZXJhdG9yIHVpbnQ0KHVpbnQgeCwgdWludCB5LCB1aW50MiB6KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0Lnog
PSB6Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIHVpbnQ0KHVpbnQyIHgsIHVpbnQyIHkpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7Cisg
ICAgcmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQ0
KHVpbnQzIHgsIHVpbnQgeSkgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgu
eDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHguejsKKyAgICByZXN1bHQu
dyA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQ0KHVpbnQgeCwgdWlu
dDMgeSkgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0
LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVpbnQyKSB7CisgICAgcmV0
dXJuIDI7Cit9Cit1aW50IG9wZXJhdG9yLmxlbmd0aCh1aW50MykgeworICAgIHJldHVybiAzOwor
fQordWludCBvcGVyYXRvci5sZW5ndGgodWludDQpIHsKKyAgICByZXR1cm4gNDsKK30KK29wZXJh
dG9yIGNoYXIyKGNoYXIgeCwgY2hhciB5KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIGNoYXIzKGNoYXIgeCwgY2hhciB5LCBjaGFyIHopIHsKKyAgICBjaGFyMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGNoYXIzKGNoYXIyIHgsIGNoYXIgeSkgewor
ICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgu
eTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGNo
YXIzKGNoYXIgeCwgY2hhcjIgeSkgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIGNoYXI0KGNoYXIgeCwgY2hhciB5LCBjaGFyIHosIGNoYXIg
dykgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0Lnkg
PSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1bHQudyA9IHc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK29wZXJhdG9yIGNoYXI0KGNoYXIyIHgsIGNoYXIgeSwgY2hhciB6KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geC54OworICAgIHJlc3VsdC55ID0geC55Owor
ICAgIHJlc3VsdC56ID0geTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK29wZXJhdG9yIGNoYXI0KGNoYXIgeCwgY2hhcjIgeSwgY2hhciB6KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1
bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29w
ZXJhdG9yIGNoYXI0KGNoYXIgeCwgY2hhciB5LCBjaGFyMiB6KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6
Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9y
IGNoYXI0KGNoYXIyIHgsIGNoYXIyIHkpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7CisgICAg
cmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGNoYXI0KGNo
YXIzIHgsIGNoYXIgeSkgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsK
KyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHguejsKKyAgICByZXN1bHQudyA9
IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGNoYXI0KGNoYXIgeCwgY2hhcjMg
eSkgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0Lnkg
PSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKGNoYXIyKSB7CisgICAgcmV0dXJu
IDI7Cit9Cit1aW50IG9wZXJhdG9yLmxlbmd0aChjaGFyMykgeworICAgIHJldHVybiAzOworfQor
dWludCBvcGVyYXRvci5sZW5ndGgoY2hhcjQpIHsKKyAgICByZXR1cm4gNDsKK30KK29wZXJhdG9y
IHNob3J0MihzaG9ydCB4LCBzaG9ydCB5KSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVy
YXRvciBzaG9ydDMoc2hvcnQgeCwgc2hvcnQgeSwgc2hvcnQgeikgeworICAgIHNob3J0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9
IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHNob3J0MyhzaG9ydDIgeCwgc2hv
cnQgeSkgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVz
dWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9Citv
cGVyYXRvciBzaG9ydDMoc2hvcnQgeCwgc2hvcnQyIHkpIHsKKyAgICBzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHku
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3Igc2hvcnQ0KHNob3J0IHgsIHNob3J0
IHksIHNob3J0IHosIHNob3J0IHcpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6OworICAgIHJlc3VsdC53
ID0gdzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3Igc2hvcnQ0KHNob3J0MiB4LCBz
aG9ydCB5LCBzaG9ydCB6KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgu
eDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmVzdWx0Lncg
PSB6OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBzaG9ydDQoc2hvcnQgeCwgc2hv
cnQyIHksIHNob3J0IHopIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsK
KyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9
IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHNob3J0NChzaG9ydCB4LCBzaG9y
dCB5LCBzaG9ydDIgeikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Owor
ICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHoueDsKKyAgICByZXN1bHQudyA9IHou
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3Igc2hvcnQ0KHNob3J0MiB4LCBzaG9y
dDIgeSkgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVz
dWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7CisgICAgcmVzdWx0LncgPSB5Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHNob3J0NChzaG9ydDMgeCwgc2hvcnQgeSkg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0Lnkg
PSB4Lnk7CisgICAgcmVzdWx0LnogPSB4Lno7CisgICAgcmVzdWx0LncgPSB5OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitvcGVyYXRvciBzaG9ydDQoc2hvcnQgeCwgc2hvcnQzIHkpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAg
ICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHkuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludCBvcGVyYXRvci5sZW5ndGgoc2hvcnQyKSB7CisgICAgcmV0dXJuIDI7Cit9Cit1
aW50IG9wZXJhdG9yLmxlbmd0aChzaG9ydDMpIHsKKyAgICByZXR1cm4gMzsKK30KK3VpbnQgb3Bl
cmF0b3IubGVuZ3RoKHNob3J0NCkgeworICAgIHJldHVybiA0OworfQorb3BlcmF0b3IgaW50Mihp
bnQgeCwgaW50IHkpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAg
cmVzdWx0LnkgPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBpbnQzKGludCB4
LCBpbnQgeSwgaW50IHopIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7Cisg
ICAgcmVzdWx0LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorb3BlcmF0b3IgaW50MyhpbnQyIHgsIGludCB5KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBpbnQzKGludCB4LCBpbnQyIHkpIHsKKyAg
ICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7Cisg
ICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGludDQo
aW50IHgsIGludCB5LCBpbnQgeiwgaW50IHcpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1
bHQudyA9IHc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGludDQoaW50MiB4LCBp
bnQgeSwgaW50IHopIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAg
ICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmVzdWx0LncgPSB6Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBpbnQ0KGludCB4LCBpbnQyIHksIGludCB6
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0g
eS54OworICAgIHJlc3VsdC56ID0geS55OworICAgIHJlc3VsdC53ID0gejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorb3BlcmF0b3IgaW50NChpbnQgeCwgaW50IHksIGludDIgeikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVz
dWx0LnogPSB6Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K29wZXJhdG9yIGludDQoaW50MiB4LCBpbnQyIHkpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHkueDsK
KyAgICByZXN1bHQudyA9IHkueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgaW50
NChpbnQzIHgsIGludCB5KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7
CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB4Lno7CisgICAgcmVzdWx0Lncg
PSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBpbnQ0KGludCB4LCBpbnQzIHkp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5
Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKGludDIpIHsKKyAgICByZXR1cm4gMjsK
K30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKGludDMpIHsKKyAgICByZXR1cm4gMzsKK30KK3VpbnQg
b3BlcmF0b3IubGVuZ3RoKGludDQpIHsKKyAgICByZXR1cm4gNDsKK30KK29wZXJhdG9yIGhhbGYy
KGhhbGYgeCwgaGFsZiB5KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsK
KyAgICByZXN1bHQueSA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGYz
KGhhbGYgeCwgaGFsZiB5LCBoYWxmIHopIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGYzKGhhbGYyIHgsIGhhbGYgeSkgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICBy
ZXN1bHQueiA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGYzKGhhbGYg
eCwgaGFsZjIgeSkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAg
cmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK29wZXJhdG9yIGhhbGY0KGhhbGYgeCwgaGFsZiB5LCBoYWxmIHosIGhhbGYgdykgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAg
IHJlc3VsdC56ID0gejsKKyAgICByZXN1bHQudyA9IHc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K29wZXJhdG9yIGhhbGY0KGhhbGYyIHgsIGhhbGYgeSwgaGFsZiB6KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0geC54OworICAgIHJlc3VsdC55ID0geC55OworICAgIHJlc3Vs
dC56ID0geTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIGhhbGY0KGhhbGYgeCwgaGFsZjIgeSwgaGFsZiB6KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHku
eTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhh
bGY0KGhhbGYgeCwgaGFsZiB5LCBoYWxmMiB6KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6Lng7CisgICAg
cmVzdWx0LncgPSB6Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGY0KGhh
bGYyIHgsIGhhbGYyIHkpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7
CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7CisgICAgcmVzdWx0Lncg
PSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGY0KGhhbGYzIHgsIGhh
bGYgeSkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1
bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHguejsKKyAgICByZXN1bHQudyA9IHk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGY0KGhhbGYgeCwgaGFsZjMgeSkgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7Cisg
ICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKGhhbGYyKSB7CisgICAgcmV0dXJuIDI7Cit9Cit1
aW50IG9wZXJhdG9yLmxlbmd0aChoYWxmMykgeworICAgIHJldHVybiAzOworfQordWludCBvcGVy
YXRvci5sZW5ndGgoaGFsZjQpIHsKKyAgICByZXR1cm4gNDsKK30KK29wZXJhdG9yIGZsb2F0Mihm
bG9hdCB4LCBmbG9hdCB5KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7
CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBmbG9h
dDMoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGZsb2F0MyhmbG9hdDIgeCwgZmxvYXQgeSkgewor
ICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4
Lnk7CisgICAgcmVzdWx0LnogPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBm
bG9hdDMoZmxvYXQgeCwgZmxvYXQyIHkpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgZmxvYXQ0KGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0
IHosIGZsb2F0IHcpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAg
ICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6OworICAgIHJlc3VsdC53ID0gdzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgZmxvYXQ0KGZsb2F0MiB4LCBmbG9hdCB5LCBm
bG9hdCB6KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICBy
ZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmVzdWx0LncgPSB6OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBmbG9hdDQoZmxvYXQgeCwgZmxvYXQyIHksIGZs
b2F0IHopIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1
bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGZsb2F0NChmbG9hdCB4LCBmbG9hdCB5LCBmbG9h
dDIgeikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3Vs
dC55ID0geTsKKyAgICByZXN1bHQueiA9IHoueDsKKyAgICByZXN1bHQudyA9IHoueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgZmxvYXQ0KGZsb2F0MiB4LCBmbG9hdDIgeSkgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4
Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7CisgICAgcmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIGZsb2F0NChmbG9hdDMgeCwgZmxvYXQgeSkgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7Cisg
ICAgcmVzdWx0LnogPSB4Lno7CisgICAgcmVzdWx0LncgPSB5OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitvcGVyYXRvciBmbG9hdDQoZmxvYXQgeCwgZmxvYXQzIHkpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQu
eiA9IHkueTsKKyAgICByZXN1bHQudyA9IHkuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dCBvcGVyYXRvci5sZW5ndGgoZmxvYXQyKSB7CisgICAgcmV0dXJuIDI7Cit9Cit1aW50IG9wZXJh
dG9yLmxlbmd0aChmbG9hdDMpIHsKKyAgICByZXR1cm4gMzsKK30KK3VpbnQgb3BlcmF0b3IubGVu
Z3RoKGZsb2F0NCkgeworICAgIHJldHVybiA0OworfQorYm9vbCBvcGVyYXRvcj09KGJvb2wyIGEs
IGJvb2wyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55OworfQorYm9v
bCBvcGVyYXRvcj09KGJvb2wzIGEsIGJvb2wzIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAm
JiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9wZXJhdG9yPT0oYm9vbDQgYSwg
Ym9vbDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09
IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGJvb2wgb3BlcmF0b3IueChib29sMik7Citu
YXRpdmUgYm9vbCBvcGVyYXRvci55KGJvb2wyKTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLngoYm9v
bDMpOworbmF0aXZlIGJvb2wgb3BlcmF0b3IueShib29sMyk7CituYXRpdmUgYm9vbCBvcGVyYXRv
ci56KGJvb2wzKTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLngoYm9vbDQpOworbmF0aXZlIGJvb2wg
b3BlcmF0b3IueShib29sNCk7CituYXRpdmUgYm9vbCBvcGVyYXRvci56KGJvb2w0KTsKK25hdGl2
ZSBib29sIG9wZXJhdG9yLncoYm9vbDQpOworbmF0aXZlIGJvb2wyIG9wZXJhdG9yLng9KGJvb2wy
LCBib29sKTsKK25hdGl2ZSBib29sMiBvcGVyYXRvci55PShib29sMiwgYm9vbCk7CituYXRpdmUg
Ym9vbDMgb3BlcmF0b3IueD0oYm9vbDMsIGJvb2wpOworbmF0aXZlIGJvb2wzIG9wZXJhdG9yLnk9
KGJvb2wzLCBib29sKTsKK25hdGl2ZSBib29sMyBvcGVyYXRvci56PShib29sMywgYm9vbCk7Citu
YXRpdmUgYm9vbDQgb3BlcmF0b3IueD0oYm9vbDQsIGJvb2wpOworbmF0aXZlIGJvb2w0IG9wZXJh
dG9yLnk9KGJvb2w0LCBib29sKTsKK25hdGl2ZSBib29sNCBvcGVyYXRvci56PShib29sNCwgYm9v
bCk7CituYXRpdmUgYm9vbDQgb3BlcmF0b3Iudz0oYm9vbDQsIGJvb2wpOworYm9vbCBvcGVyYXRv
cltdKGJvb2wyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAg
IGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAg
ICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOwor
ICAgIH0KK30KK2Jvb2wgb3BlcmF0b3JbXShib29sMyB2LCB1aW50IGluZGV4KSB7CisgICAgc3dp
dGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54Owor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBjYXNlIDI6
CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAg
dHJhcDsKKyAgICB9Cit9Citib29sIG9wZXJhdG9yW10oYm9vbDQgdiwgdWludCBpbmRleCkgewor
ICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJu
IHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAg
Y2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgorICAgICAg
ICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7Cisg
ICAgfQorfQorYm9vbDIgb3BlcmF0b3JbXT0oYm9vbDIgdiwgdWludCBpbmRleCwgYm9vbCBhKSB7
CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2Lngg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYu
eSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbDMgb3BlcmF0b3JbXT0oYm9vbDMg
diwgdWludCBpbmRleCwgYm9vbCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBj
YXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0dXJuIHY7Cit9
Citib29sNCBvcGVyYXRvcltdPShib29sNCB2LCB1aW50IGluZGV4LCBib29sIGEpIHsKKyAgICBz
d2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYueCA9IGE7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgdi55ID0gYTsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICB2LnogPSBh
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHYudyA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRy
YXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KHVjaGFyMiBhLCB1
Y2hhcjIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnk7Cit9Citib29s
IG9wZXJhdG9yPT0odWNoYXIzIGEsIHVjaGFyMyBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLngg
JiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVyYXRvcj09KHVjaGFyNCBh
LCB1Y2hhcjQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56
ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHVjaGFyIG9wZXJhdG9yLngodWNoYXIy
KTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRvci55KHVjaGFyMik7CituYXRpdmUgdWNoYXIgb3BlcmF0
b3IueCh1Y2hhcjMpOworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLnkodWNoYXIzKTsKK25hdGl2ZSB1
Y2hhciBvcGVyYXRvci56KHVjaGFyMyk7CituYXRpdmUgdWNoYXIgb3BlcmF0b3IueCh1Y2hhcjQp
OworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLnkodWNoYXI0KTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRv
ci56KHVjaGFyNCk7CituYXRpdmUgdWNoYXIgb3BlcmF0b3Iudyh1Y2hhcjQpOworbmF0aXZlIHVj
aGFyMiBvcGVyYXRvci54PSh1Y2hhcjIsIHVjaGFyKTsKK25hdGl2ZSB1Y2hhcjIgb3BlcmF0b3Iu
eT0odWNoYXIyLCB1Y2hhcik7CituYXRpdmUgdWNoYXIzIG9wZXJhdG9yLng9KHVjaGFyMywgdWNo
YXIpOworbmF0aXZlIHVjaGFyMyBvcGVyYXRvci55PSh1Y2hhcjMsIHVjaGFyKTsKK25hdGl2ZSB1
Y2hhcjMgb3BlcmF0b3Iuej0odWNoYXIzLCB1Y2hhcik7CituYXRpdmUgdWNoYXI0IG9wZXJhdG9y
Lng9KHVjaGFyNCwgdWNoYXIpOworbmF0aXZlIHVjaGFyNCBvcGVyYXRvci55PSh1Y2hhcjQsIHVj
aGFyKTsKK25hdGl2ZSB1Y2hhcjQgb3BlcmF0b3Iuej0odWNoYXI0LCB1Y2hhcik7CituYXRpdmUg
dWNoYXI0IG9wZXJhdG9yLnc9KHVjaGFyNCwgdWNoYXIpOwordWNoYXIgb3BlcmF0b3JbXSh1Y2hh
cjIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAw
OgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAg
cmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQor
fQordWNoYXIgb3BlcmF0b3JbXSh1Y2hhcjMgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAo
aW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAg
ICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAg
ICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7
CisgICAgfQorfQordWNoYXIgb3BlcmF0b3JbXSh1Y2hhcjQgdiwgdWludCBpbmRleCkgeworICAg
IHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYu
eDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2Fz
ZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgorICAgICAgICAg
ICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAg
fQorfQordWNoYXIyIG9wZXJhdG9yW109KHVjaGFyMiB2LCB1aW50IGluZGV4LCB1Y2hhciBhKSB7
CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2Lngg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYu
eSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordWNoYXIzIG9wZXJhdG9yW109KHVjaGFy
MyB2LCB1aW50IGluZGV4LCB1Y2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAg
ICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0dXJuIHY7
Cit9Cit1Y2hhcjQgb3BlcmF0b3JbXT0odWNoYXI0IHYsIHVpbnQgaW5kZXgsIHVjaGFyIGEpIHsK
KyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYueCA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgdi55
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICB2
LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAg
IHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KHVzaG9y
dDIgYSwgdXNob3J0MiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueTsK
K30KK2Jvb2wgb3BlcmF0b3I9PSh1c2hvcnQzIGEsIHVzaG9ydDMgYikgeworICAgIHJldHVybiBh
LnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3BlcmF0b3I9
PSh1c2hvcnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9
PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHVzaG9ydCBvcGVy
YXRvci54KHVzaG9ydDIpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci55KHVzaG9ydDIpOworbmF0
aXZlIHVzaG9ydCBvcGVyYXRvci54KHVzaG9ydDMpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci55
KHVzaG9ydDMpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci56KHVzaG9ydDMpOworbmF0aXZlIHVz
aG9ydCBvcGVyYXRvci54KHVzaG9ydDQpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci55KHVzaG9y
dDQpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci56KHVzaG9ydDQpOworbmF0aXZlIHVzaG9ydCBv
cGVyYXRvci53KHVzaG9ydDQpOworbmF0aXZlIHVzaG9ydDIgb3BlcmF0b3IueD0odXNob3J0Miwg
dXNob3J0KTsKK25hdGl2ZSB1c2hvcnQyIG9wZXJhdG9yLnk9KHVzaG9ydDIsIHVzaG9ydCk7Citu
YXRpdmUgdXNob3J0MyBvcGVyYXRvci54PSh1c2hvcnQzLCB1c2hvcnQpOworbmF0aXZlIHVzaG9y
dDMgb3BlcmF0b3IueT0odXNob3J0MywgdXNob3J0KTsKK25hdGl2ZSB1c2hvcnQzIG9wZXJhdG9y
Lno9KHVzaG9ydDMsIHVzaG9ydCk7CituYXRpdmUgdXNob3J0NCBvcGVyYXRvci54PSh1c2hvcnQ0
LCB1c2hvcnQpOworbmF0aXZlIHVzaG9ydDQgb3BlcmF0b3IueT0odXNob3J0NCwgdXNob3J0KTsK
K25hdGl2ZSB1c2hvcnQ0IG9wZXJhdG9yLno9KHVzaG9ydDQsIHVzaG9ydCk7CituYXRpdmUgdXNo
b3J0NCBvcGVyYXRvci53PSh1c2hvcnQ0LCB1c2hvcnQpOwordXNob3J0IG9wZXJhdG9yW10odXNo
b3J0MiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNl
IDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAg
ICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9
Cit9Cit1c2hvcnQgb3BlcmF0b3JbXSh1c2hvcnQzIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0
Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7Cisg
ICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoK
KyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0
cmFwOworICAgIH0KK30KK3VzaG9ydCBvcGVyYXRvcltdKHVzaG9ydDQgdiwgdWludCBpbmRleCkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0
dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgorICAg
ICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7
CisgICAgfQorfQordXNob3J0MiBvcGVyYXRvcltdPSh1c2hvcnQyIHYsIHVpbnQgaW5kZXgsIHVz
aG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAg
ICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAg
ICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordXNob3J0MyBvcGVyYXRv
cltdPSh1c2hvcnQzIHYsIHVpbnQgaW5kZXgsIHVzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRl
eCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cisg
ICAgcmV0dXJuIHY7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yW109KHVzaG9ydDQgdiwgdWludCBpbmRl
eCwgdXNob3J0IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgor
ICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6
CisgICAgICAgICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
MzoKKyAgICAgICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBv
cGVyYXRvcj09KHVpbnQyIGEsIHVpbnQyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBh
LnkgPT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KHVpbnQzIGEsIHVpbnQzIGIpIHsKKyAgICBy
ZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9w
ZXJhdG9yPT0odWludDQgYSwgdWludDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEu
eSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHVpbnQgb3Bl
cmF0b3IueCh1aW50Mik7CituYXRpdmUgdWludCBvcGVyYXRvci55KHVpbnQyKTsKK25hdGl2ZSB1
aW50IG9wZXJhdG9yLngodWludDMpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IueSh1aW50Myk7Citu
YXRpdmUgdWludCBvcGVyYXRvci56KHVpbnQzKTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLngodWlu
dDQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IueSh1aW50NCk7CituYXRpdmUgdWludCBvcGVyYXRv
ci56KHVpbnQ0KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLncodWludDQpOworbmF0aXZlIHVpbnQy
IG9wZXJhdG9yLng9KHVpbnQyLCB1aW50KTsKK25hdGl2ZSB1aW50MiBvcGVyYXRvci55PSh1aW50
MiwgdWludCk7CituYXRpdmUgdWludDMgb3BlcmF0b3IueD0odWludDMsIHVpbnQpOworbmF0aXZl
IHVpbnQzIG9wZXJhdG9yLnk9KHVpbnQzLCB1aW50KTsKK25hdGl2ZSB1aW50MyBvcGVyYXRvci56
PSh1aW50MywgdWludCk7CituYXRpdmUgdWludDQgb3BlcmF0b3IueD0odWludDQsIHVpbnQpOwor
bmF0aXZlIHVpbnQ0IG9wZXJhdG9yLnk9KHVpbnQ0LCB1aW50KTsKK25hdGl2ZSB1aW50NCBvcGVy
YXRvci56PSh1aW50NCwgdWludCk7CituYXRpdmUgdWludDQgb3BlcmF0b3Iudz0odWludDQsIHVp
bnQpOwordWludCBvcGVyYXRvcltdKHVpbnQyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2gg
KGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAg
ICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3VpbnQgb3BlcmF0b3JbXSh1aW50MyB2LCB1aW50
IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAg
ICAgICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55
OworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZh
dWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9Cit1aW50IG9wZXJhdG9yW10odWludDQg
diwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgor
ICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0
dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAg
ICAgY2FzZSAzOgorICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorfQordWludDIgb3BlcmF0b3JbXT0odWludDIgdiwgdWlu
dCBpbmRleCwgdWludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6
CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
MToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordWludDMg
b3BlcmF0b3JbXT0odWludDMgdiwgdWludCBpbmRleCwgdWludCBhKSB7CisgICAgc3dpdGNoIChp
bmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9
CisgICAgcmV0dXJuIHY7Cit9Cit1aW50NCBvcGVyYXRvcltdPSh1aW50NCB2LCB1aW50IGluZGV4
LCB1aW50IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAg
ICAgICAgIHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAg
ICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6Cisg
ICAgICAgICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoK
KyAgICAgICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVy
YXRvcj09KGNoYXIyIGEsIGNoYXIyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkg
PT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KGNoYXIzIGEsIGNoYXIzIGIpIHsKKyAgICByZXR1
cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9wZXJh
dG9yPT0oY2hhcjQgYSwgY2hhcjQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9
PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGNoYXIgb3BlcmF0
b3IueChjaGFyMik7CituYXRpdmUgY2hhciBvcGVyYXRvci55KGNoYXIyKTsKK25hdGl2ZSBjaGFy
IG9wZXJhdG9yLngoY2hhcjMpOworbmF0aXZlIGNoYXIgb3BlcmF0b3IueShjaGFyMyk7CituYXRp
dmUgY2hhciBvcGVyYXRvci56KGNoYXIzKTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9yLngoY2hhcjQp
OworbmF0aXZlIGNoYXIgb3BlcmF0b3IueShjaGFyNCk7CituYXRpdmUgY2hhciBvcGVyYXRvci56
KGNoYXI0KTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9yLncoY2hhcjQpOworbmF0aXZlIGNoYXIyIG9w
ZXJhdG9yLng9KGNoYXIyLCBjaGFyKTsKK25hdGl2ZSBjaGFyMiBvcGVyYXRvci55PShjaGFyMiwg
Y2hhcik7CituYXRpdmUgY2hhcjMgb3BlcmF0b3IueD0oY2hhcjMsIGNoYXIpOworbmF0aXZlIGNo
YXIzIG9wZXJhdG9yLnk9KGNoYXIzLCBjaGFyKTsKK25hdGl2ZSBjaGFyMyBvcGVyYXRvci56PShj
aGFyMywgY2hhcik7CituYXRpdmUgY2hhcjQgb3BlcmF0b3IueD0oY2hhcjQsIGNoYXIpOworbmF0
aXZlIGNoYXI0IG9wZXJhdG9yLnk9KGNoYXI0LCBjaGFyKTsKK25hdGl2ZSBjaGFyNCBvcGVyYXRv
ci56PShjaGFyNCwgY2hhcik7CituYXRpdmUgY2hhcjQgb3BlcmF0b3Iudz0oY2hhcjQsIGNoYXIp
OworY2hhciBvcGVyYXRvcltdKGNoYXIyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGlu
ZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAg
IGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KK30KK2NoYXIgb3BlcmF0b3JbXShjaGFyMyB2LCB1aW50IGlu
ZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAg
ICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55Owor
ICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitjaGFyIG9wZXJhdG9yW10oY2hhcjQgdiwg
dWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAg
ICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJu
IHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAg
Y2FzZSAzOgorICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHRyYXA7CisgICAgfQorfQorY2hhcjIgb3BlcmF0b3JbXT0oY2hhcjIgdiwgdWludCBp
bmRleCwgY2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorY2hhcjMgb3Bl
cmF0b3JbXT0oY2hhcjMgdiwgdWludCBpbmRleCwgY2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRl
eCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cisg
ICAgcmV0dXJuIHY7Cit9CitjaGFyNCBvcGVyYXRvcltdPShjaGFyNCB2LCB1aW50IGluZGV4LCBj
aGFyIGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAg
ICAgIHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAg
ICAgICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAg
ICAgICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAg
ICAgICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoK
KyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRv
cj09KHNob3J0MiBhLCBzaG9ydDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9
PSBiLnk7Cit9Citib29sIG9wZXJhdG9yPT0oc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgcmV0
dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVy
YXRvcj09KHNob3J0NCBhLCBzaG9ydDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEu
eSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHNob3J0IG9w
ZXJhdG9yLngoc2hvcnQyKTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci55KHNob3J0Mik7CituYXRp
dmUgc2hvcnQgb3BlcmF0b3IueChzaG9ydDMpOworbmF0aXZlIHNob3J0IG9wZXJhdG9yLnkoc2hv
cnQzKTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci56KHNob3J0Myk7CituYXRpdmUgc2hvcnQgb3Bl
cmF0b3IueChzaG9ydDQpOworbmF0aXZlIHNob3J0IG9wZXJhdG9yLnkoc2hvcnQ0KTsKK25hdGl2
ZSBzaG9ydCBvcGVyYXRvci56KHNob3J0NCk7CituYXRpdmUgc2hvcnQgb3BlcmF0b3IudyhzaG9y
dDQpOworbmF0aXZlIHNob3J0MiBvcGVyYXRvci54PShzaG9ydDIsIHNob3J0KTsKK25hdGl2ZSBz
aG9ydDIgb3BlcmF0b3IueT0oc2hvcnQyLCBzaG9ydCk7CituYXRpdmUgc2hvcnQzIG9wZXJhdG9y
Lng9KHNob3J0Mywgc2hvcnQpOworbmF0aXZlIHNob3J0MyBvcGVyYXRvci55PShzaG9ydDMsIHNo
b3J0KTsKK25hdGl2ZSBzaG9ydDMgb3BlcmF0b3Iuej0oc2hvcnQzLCBzaG9ydCk7CituYXRpdmUg
c2hvcnQ0IG9wZXJhdG9yLng9KHNob3J0NCwgc2hvcnQpOworbmF0aXZlIHNob3J0NCBvcGVyYXRv
ci55PShzaG9ydDQsIHNob3J0KTsKK25hdGl2ZSBzaG9ydDQgb3BlcmF0b3Iuej0oc2hvcnQ0LCBz
aG9ydCk7CituYXRpdmUgc2hvcnQ0IG9wZXJhdG9yLnc9KHNob3J0NCwgc2hvcnQpOworc2hvcnQg
b3BlcmF0b3JbXShzaG9ydDIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsK
KyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAx
OgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorfQorc2hvcnQgb3BlcmF0b3JbXShzaG9ydDMgdiwgdWludCBpbmRleCkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0
dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorfQorc2hvcnQgb3BlcmF0b3JbXShzaG9ydDQgdiwgdWlu
dCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAg
ICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYu
eTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2Fz
ZSAzOgorICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorfQorc2hvcnQyIG9wZXJhdG9yW109KHNob3J0MiB2LCB1aW50IGlu
ZGV4LCBzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorc2hvcnQzIG9w
ZXJhdG9yW109KHNob3J0MyB2LCB1aW50IGluZGV4LCBzaG9ydCBhKSB7CisgICAgc3dpdGNoIChp
bmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9
CisgICAgcmV0dXJuIHY7Cit9CitzaG9ydDQgb3BlcmF0b3JbXT0oc2hvcnQ0IHYsIHVpbnQgaW5k
ZXgsIHNob3J0IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgor
ICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6
CisgICAgICAgICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
MzoKKyAgICAgICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBv
cGVyYXRvcj09KGludDIgYSwgaW50MiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55
ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShpbnQzIGEsIGludDMgYikgeworICAgIHJldHVy
biBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3BlcmF0
b3I9PShpbnQ0IGEsIGludDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBi
LnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGludCBvcGVyYXRvci54
KGludDIpOworbmF0aXZlIGludCBvcGVyYXRvci55KGludDIpOworbmF0aXZlIGludCBvcGVyYXRv
ci54KGludDMpOworbmF0aXZlIGludCBvcGVyYXRvci55KGludDMpOworbmF0aXZlIGludCBvcGVy
YXRvci56KGludDMpOworbmF0aXZlIGludCBvcGVyYXRvci54KGludDQpOworbmF0aXZlIGludCBv
cGVyYXRvci55KGludDQpOworbmF0aXZlIGludCBvcGVyYXRvci56KGludDQpOworbmF0aXZlIGlu
dCBvcGVyYXRvci53KGludDQpOworbmF0aXZlIGludDIgb3BlcmF0b3IueD0oaW50MiwgaW50KTsK
K25hdGl2ZSBpbnQyIG9wZXJhdG9yLnk9KGludDIsIGludCk7CituYXRpdmUgaW50MyBvcGVyYXRv
ci54PShpbnQzLCBpbnQpOworbmF0aXZlIGludDMgb3BlcmF0b3IueT0oaW50MywgaW50KTsKK25h
dGl2ZSBpbnQzIG9wZXJhdG9yLno9KGludDMsIGludCk7CituYXRpdmUgaW50NCBvcGVyYXRvci54
PShpbnQ0LCBpbnQpOworbmF0aXZlIGludDQgb3BlcmF0b3IueT0oaW50NCwgaW50KTsKK25hdGl2
ZSBpbnQ0IG9wZXJhdG9yLno9KGludDQsIGludCk7CituYXRpdmUgaW50NCBvcGVyYXRvci53PShp
bnQ0LCBpbnQpOworaW50IG9wZXJhdG9yW10oaW50MiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dp
dGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54Owor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitpbnQgb3BlcmF0b3JbXShpbnQzIHYsIHVp
bnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAg
ICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2
Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2ludCBvcGVyYXRvcltdKGludDQg
diwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgor
ICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0
dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAg
ICAgY2FzZSAzOgorICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorfQoraW50MiBvcGVyYXRvcltdPShpbnQyIHYsIHVpbnQg
aW5kZXgsIGludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQoraW50MyBvcGVy
YXRvcltdPShpbnQzIHYsIHVpbnQgaW5kZXgsIGludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkg
eworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAg
cmV0dXJuIHY7Cit9CitpbnQ0IG9wZXJhdG9yW109KGludDQgdiwgdWludCBpbmRleCwgaW50IGEp
IHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYu
eCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAg
di55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAgICAg
ICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAg
ICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KGhh
bGYyIGEsIGhhbGYyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55Owor
fQorYm9vbCBvcGVyYXRvcj09KGhhbGYzIGEsIGhhbGYzIGIpIHsKKyAgICByZXR1cm4gYS54ID09
IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9wZXJhdG9yPT0oaGFs
ZjQgYSwgaGFsZjQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYg
YS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGhhbGYgb3BlcmF0b3IueChoYWxm
Mik7CituYXRpdmUgaGFsZiBvcGVyYXRvci55KGhhbGYyKTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9y
LngoaGFsZjMpOworbmF0aXZlIGhhbGYgb3BlcmF0b3IueShoYWxmMyk7CituYXRpdmUgaGFsZiBv
cGVyYXRvci56KGhhbGYzKTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9yLngoaGFsZjQpOworbmF0aXZl
IGhhbGYgb3BlcmF0b3IueShoYWxmNCk7CituYXRpdmUgaGFsZiBvcGVyYXRvci56KGhhbGY0KTsK
K25hdGl2ZSBoYWxmIG9wZXJhdG9yLncoaGFsZjQpOworbmF0aXZlIGhhbGYyIG9wZXJhdG9yLng9
KGhhbGYyLCBoYWxmKTsKK25hdGl2ZSBoYWxmMiBvcGVyYXRvci55PShoYWxmMiwgaGFsZik7Citu
YXRpdmUgaGFsZjMgb3BlcmF0b3IueD0oaGFsZjMsIGhhbGYpOworbmF0aXZlIGhhbGYzIG9wZXJh
dG9yLnk9KGhhbGYzLCBoYWxmKTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRvci56PShoYWxmMywgaGFs
Zik7CituYXRpdmUgaGFsZjQgb3BlcmF0b3IueD0oaGFsZjQsIGhhbGYpOworbmF0aXZlIGhhbGY0
IG9wZXJhdG9yLnk9KGhhbGY0LCBoYWxmKTsKK25hdGl2ZSBoYWxmNCBvcGVyYXRvci56PShoYWxm
NCwgaGFsZik7CituYXRpdmUgaGFsZjQgb3BlcmF0b3Iudz0oaGFsZjQsIGhhbGYpOworaGFsZiBv
cGVyYXRvcltdKGhhbGYyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7Cisg
ICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0
cmFwOworICAgIH0KK30KK2hhbGYgb3BlcmF0b3JbXShoYWxmMyB2LCB1aW50IGluZGV4KSB7Cisg
ICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4g
di54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBj
YXNlIDI6CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZhdWx0OgorICAgICAg
ICAgICAgdHJhcDsKKyAgICB9Cit9CitoYWxmIG9wZXJhdG9yW10oaGFsZjQgdiwgdWludCBpbmRl
eCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAg
cmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAg
ICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgor
ICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRy
YXA7CisgICAgfQorfQoraGFsZjIgb3BlcmF0b3JbXT0oaGFsZjIgdiwgdWludCBpbmRleCwgaGFs
ZiBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAg
ICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAg
ICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQoraGFsZjMgb3BlcmF0b3JbXT0o
aGFsZjMgdiwgdWludCBpbmRleCwgaGFsZiBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0dXJu
IHY7Cit9CitoYWxmNCBvcGVyYXRvcltdPShoYWxmNCB2LCB1aW50IGluZGV4LCBoYWxmIGEpIHsK
KyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYueCA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgdi55
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICB2
LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAg
IHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0
MiBhLCBmbG9hdDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnk7Cit9
Citib29sIG9wZXJhdG9yPT0oZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAgcmV0dXJuIGEueCA9
PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVyYXRvcj09KGZs
b2F0NCBhLCBmbG9hdDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkg
JiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGZsb2F0IG9wZXJhdG9yLngo
ZmxvYXQyKTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvci55KGZsb2F0Mik7CituYXRpdmUgZmxvYXQg
b3BlcmF0b3IueChmbG9hdDMpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLnkoZmxvYXQzKTsKK25h
dGl2ZSBmbG9hdCBvcGVyYXRvci56KGZsb2F0Myk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueChm
bG9hdDQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLnkoZmxvYXQ0KTsKK25hdGl2ZSBmbG9hdCBv
cGVyYXRvci56KGZsb2F0NCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IudyhmbG9hdDQpOworbmF0
aXZlIGZsb2F0MiBvcGVyYXRvci54PShmbG9hdDIsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDIgb3Bl
cmF0b3IueT0oZmxvYXQyLCBmbG9hdCk7CituYXRpdmUgZmxvYXQzIG9wZXJhdG9yLng9KGZsb2F0
MywgZmxvYXQpOworbmF0aXZlIGZsb2F0MyBvcGVyYXRvci55PShmbG9hdDMsIGZsb2F0KTsKK25h
dGl2ZSBmbG9hdDMgb3BlcmF0b3Iuej0oZmxvYXQzLCBmbG9hdCk7CituYXRpdmUgZmxvYXQ0IG9w
ZXJhdG9yLng9KGZsb2F0NCwgZmxvYXQpOworbmF0aXZlIGZsb2F0NCBvcGVyYXRvci55PShmbG9h
dDQsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDQgb3BlcmF0b3Iuej0oZmxvYXQ0LCBmbG9hdCk7Citu
YXRpdmUgZmxvYXQ0IG9wZXJhdG9yLnc9KGZsb2F0NCwgZmxvYXQpOworZmxvYXQgb3BlcmF0b3Jb
XShmbG9hdDIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAg
Y2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAg
ICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7Cisg
ICAgfQorfQorZmxvYXQgb3BlcmF0b3JbXShmbG9hdDMgdiwgdWludCBpbmRleCkgeworICAgIHN3
aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsK
KyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2FzZSAy
OgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorfQorZmxvYXQgb3BlcmF0b3JbXShmbG9hdDQgdiwgdWludCBpbmRleCkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0
dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgorICAg
ICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7
CisgICAgfQorfQorZmxvYXQyIG9wZXJhdG9yW109KGZsb2F0MiB2LCB1aW50IGluZGV4LCBmbG9h
dCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAg
ICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAg
ICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorZmxvYXQzIG9wZXJhdG9yW109
KGZsb2F0MyB2LCB1aW50IGluZGV4LCBmbG9hdCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgewor
ICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0
dXJuIHY7Cit9CitmbG9hdDQgb3BlcmF0b3JbXT0oZmxvYXQ0IHYsIHVpbnQgaW5kZXgsIGZsb2F0
IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAg
IHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAg
ICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAg
ICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAg
ICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorCituYXRpdmUgaGFsZjIg
b3BlcmF0b3JbXShoYWxmMngyLCB1aW50KTsKK25hdGl2ZSBoYWxmMngyIG9wZXJhdG9yW109KGhh
bGYyeDIsIHVpbnQsIGhhbGYyKTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRvcltdKGhhbGYyeDMsIHVp
bnQpOworbmF0aXZlIGhhbGYyeDMgb3BlcmF0b3JbXT0oaGFsZjJ4MywgdWludCwgaGFsZjMpOwor
bmF0aXZlIGhhbGY0IG9wZXJhdG9yW10oaGFsZjJ4NCwgdWludCk7CituYXRpdmUgaGFsZjJ4NCBv
cGVyYXRvcltdPShoYWxmMng0LCB1aW50LCBoYWxmNCk7CituYXRpdmUgaGFsZjIgb3BlcmF0b3Jb
XShoYWxmM3gyLCB1aW50KTsKK25hdGl2ZSBoYWxmM3gyIG9wZXJhdG9yW109KGhhbGYzeDIsIHVp
bnQsIGhhbGYyKTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRvcltdKGhhbGYzeDMsIHVpbnQpOworbmF0
aXZlIGhhbGYzeDMgb3BlcmF0b3JbXT0oaGFsZjN4MywgdWludCwgaGFsZjMpOworbmF0aXZlIGhh
bGY0IG9wZXJhdG9yW10oaGFsZjN4NCwgdWludCk7CituYXRpdmUgaGFsZjN4NCBvcGVyYXRvcltd
PShoYWxmM3g0LCB1aW50LCBoYWxmNCk7CituYXRpdmUgaGFsZjIgb3BlcmF0b3JbXShoYWxmNHgy
LCB1aW50KTsKK25hdGl2ZSBoYWxmNHgyIG9wZXJhdG9yW109KGhhbGY0eDIsIHVpbnQsIGhhbGYy
KTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRvcltdKGhhbGY0eDMsIHVpbnQpOworbmF0aXZlIGhhbGY0
eDMgb3BlcmF0b3JbXT0oaGFsZjR4MywgdWludCwgaGFsZjMpOworbmF0aXZlIGhhbGY0IG9wZXJh
dG9yW10oaGFsZjR4NCwgdWludCk7CituYXRpdmUgaGFsZjR4NCBvcGVyYXRvcltdPShoYWxmNHg0
LCB1aW50LCBoYWxmNCk7CituYXRpdmUgZmxvYXQyIG9wZXJhdG9yW10oZmxvYXQyeDIsIHVpbnQp
OworbmF0aXZlIGZsb2F0MngyIG9wZXJhdG9yW109KGZsb2F0MngyLCB1aW50LCBmbG9hdDIpOwor
bmF0aXZlIGZsb2F0MyBvcGVyYXRvcltdKGZsb2F0MngzLCB1aW50KTsKK25hdGl2ZSBmbG9hdDJ4
MyBvcGVyYXRvcltdPShmbG9hdDJ4MywgdWludCwgZmxvYXQzKTsKK25hdGl2ZSBmbG9hdDQgb3Bl
cmF0b3JbXShmbG9hdDJ4NCwgdWludCk7CituYXRpdmUgZmxvYXQyeDQgb3BlcmF0b3JbXT0oZmxv
YXQyeDQsIHVpbnQsIGZsb2F0NCk7CituYXRpdmUgZmxvYXQyIG9wZXJhdG9yW10oZmxvYXQzeDIs
IHVpbnQpOworbmF0aXZlIGZsb2F0M3gyIG9wZXJhdG9yW109KGZsb2F0M3gyLCB1aW50LCBmbG9h
dDIpOworbmF0aXZlIGZsb2F0MyBvcGVyYXRvcltdKGZsb2F0M3gzLCB1aW50KTsKK25hdGl2ZSBm
bG9hdDN4MyBvcGVyYXRvcltdPShmbG9hdDN4MywgdWludCwgZmxvYXQzKTsKK25hdGl2ZSBmbG9h
dDQgb3BlcmF0b3JbXShmbG9hdDN4NCwgdWludCk7CituYXRpdmUgZmxvYXQzeDQgb3BlcmF0b3Jb
XT0oZmxvYXQzeDQsIHVpbnQsIGZsb2F0NCk7CituYXRpdmUgZmxvYXQyIG9wZXJhdG9yW10oZmxv
YXQ0eDIsIHVpbnQpOworbmF0aXZlIGZsb2F0NHgyIG9wZXJhdG9yW109KGZsb2F0NHgyLCB1aW50
LCBmbG9hdDIpOworbmF0aXZlIGZsb2F0MyBvcGVyYXRvcltdKGZsb2F0NHgzLCB1aW50KTsKK25h
dGl2ZSBmbG9hdDR4MyBvcGVyYXRvcltdPShmbG9hdDR4MywgdWludCwgZmxvYXQzKTsKK25hdGl2
ZSBmbG9hdDQgb3BlcmF0b3JbXShmbG9hdDR4NCwgdWludCk7CituYXRpdmUgZmxvYXQ0eDQgb3Bl
cmF0b3JbXT0oZmxvYXQ0eDQsIHVpbnQsIGZsb2F0NCk7CisKK2Jvb2wgb3BlcmF0b3I9PShoYWxm
MngyIGEsIGhhbGYyeDIgYikgeworICAgIHJldHVybgorICAgICAgICBhWzBdWzBdID09IGJbMF1b
MF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisgICAgICAgIGFbMV1bMF0gPT0g
YlsxXVswXSAmJgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICB0cnVlOworfQor
Ym9vbCBvcGVyYXRvcj09KGhhbGYyeDMgYSwgaGFsZjJ4MyBiKSB7CisgICAgcmV0dXJuCisgICAg
ICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBdWzFdID09IGJbMF1bMV0gJiYK
KyAgICAgICAgYVswXVsyXSA9PSBiWzBdWzJdICYmCisgICAgICAgIGFbMV1bMF0gPT0gYlsxXVsw
XSAmJgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICAgICAgYVsxXVsyXSA9PSBi
WzFdWzJdICYmCisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShoYWxmMng0IGEsIGhhbGYy
eDQgYikgeworICAgIHJldHVybgorICAgICAgICBhWzBdWzBdID09IGJbMF1bMF0gJiYKKyAgICAg
ICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisgICAgICAgIGFbMF1bMl0gPT0gYlswXVsyXSAmJgor
ICAgICAgICBhWzBdWzNdID09IGJbMF1bM10gJiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBd
ICYmCisgICAgICAgIGFbMV1bMV0gPT0gYlsxXVsxXSAmJgorICAgICAgICBhWzFdWzJdID09IGJb
MV1bMl0gJiYKKyAgICAgICAgYVsxXVszXSA9PSBiWzFdWzNdICYmCisgICAgdHJ1ZTsKK30KK2Jv
b2wgb3BlcmF0b3I9PShoYWxmM3gyIGEsIGhhbGYzeDIgYikgeworICAgIHJldHVybgorICAgICAg
ICBhWzBdWzBdID09IGJbMF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisg
ICAgICAgIGFbMV1bMF0gPT0gYlsxXVswXSAmJgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0g
JiYKKyAgICAgICAgYVsyXVswXSA9PSBiWzJdWzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsy
XVsxXSAmJgorICAgIHRydWU7Cit9Citib29sIG9wZXJhdG9yPT0oaGFsZjN4MyBhLCBoYWxmM3gz
IGIpIHsKKyAgICByZXR1cm4KKyAgICAgICAgYVswXVswXSA9PSBiWzBdWzBdICYmCisgICAgICAg
IGFbMF1bMV0gPT0gYlswXVsxXSAmJgorICAgICAgICBhWzBdWzJdID09IGJbMF1bMl0gJiYKKyAg
ICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFbMV1bMV0gPT0gYlsxXVsxXSAm
JgorICAgICAgICBhWzFdWzJdID09IGJbMV1bMl0gJiYKKyAgICAgICAgYVsyXVswXSA9PSBiWzJd
WzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAgICBhWzJdWzJdID09
IGJbMl1bMl0gJiYKKyAgICB0cnVlOworfQorYm9vbCBvcGVyYXRvcj09KGhhbGYzeDQgYSwgaGFs
ZjN4NCBiKSB7CisgICAgcmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAg
ICAgICBhWzBdWzFdID09IGJbMF1bMV0gJiYKKyAgICAgICAgYVswXVsyXSA9PSBiWzBdWzJdICYm
CisgICAgICAgIGFbMF1bM10gPT0gYlswXVszXSAmJgorICAgICAgICBhWzFdWzBdID09IGJbMV1b
MF0gJiYKKyAgICAgICAgYVsxXVsxXSA9PSBiWzFdWzFdICYmCisgICAgICAgIGFbMV1bMl0gPT0g
YlsxXVsyXSAmJgorICAgICAgICBhWzFdWzNdID09IGJbMV1bM10gJiYKKyAgICAgICAgYVsyXVsw
XSA9PSBiWzJdWzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAgICBh
WzJdWzJdID09IGJbMl1bMl0gJiYKKyAgICAgICAgYVsyXVszXSA9PSBiWzJdWzNdICYmCisgICAg
dHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShoYWxmNHgyIGEsIGhhbGY0eDIgYikgeworICAgIHJl
dHVybgorICAgICAgICBhWzBdWzBdID09IGJbMF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBi
WzBdWzFdICYmCisgICAgICAgIGFbMV1bMF0gPT0gYlsxXVswXSAmJgorICAgICAgICBhWzFdWzFd
ID09IGJbMV1bMV0gJiYKKyAgICAgICAgYVsyXVswXSA9PSBiWzJdWzBdICYmCisgICAgICAgIGFb
Ml1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAgICBhWzNdWzBdID09IGJbM11bMF0gJiYKKyAgICAg
ICAgYVszXVsxXSA9PSBiWzNdWzFdICYmCisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PSho
YWxmNHgzIGEsIGhhbGY0eDMgYikgeworICAgIHJldHVybgorICAgICAgICBhWzBdWzBdID09IGJb
MF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisgICAgICAgIGFbMF1bMl0g
PT0gYlswXVsyXSAmJgorICAgICAgICBhWzFdWzBdID09IGJbMV1bMF0gJiYKKyAgICAgICAgYVsx
XVsxXSA9PSBiWzFdWzFdICYmCisgICAgICAgIGFbMV1bMl0gPT0gYlsxXVsyXSAmJgorICAgICAg
ICBhWzJdWzBdID09IGJbMl1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9PSBiWzJdWzFdICYmCisg
ICAgICAgIGFbMl1bMl0gPT0gYlsyXVsyXSAmJgorICAgICAgICBhWzNdWzBdID09IGJbM11bMF0g
JiYKKyAgICAgICAgYVszXVsxXSA9PSBiWzNdWzFdICYmCisgICAgICAgIGFbM11bMl0gPT0gYlsz
XVsyXSAmJgorICAgIHRydWU7Cit9Citib29sIG9wZXJhdG9yPT0oaGFsZjR4NCBhLCBoYWxmNHg0
IGIpIHsKKyAgICByZXR1cm4KKyAgICAgICAgYVswXVswXSA9PSBiWzBdWzBdICYmCisgICAgICAg
IGFbMF1bMV0gPT0gYlswXVsxXSAmJgorICAgICAgICBhWzBdWzJdID09IGJbMF1bMl0gJiYKKyAg
ICAgICAgYVswXVszXSA9PSBiWzBdWzNdICYmCisgICAgICAgIGFbMV1bMF0gPT0gYlsxXVswXSAm
JgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICAgICAgYVsxXVsyXSA9PSBiWzFd
WzJdICYmCisgICAgICAgIGFbMV1bM10gPT0gYlsxXVszXSAmJgorICAgICAgICBhWzJdWzBdID09
IGJbMl1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9PSBiWzJdWzFdICYmCisgICAgICAgIGFbMl1b
Ml0gPT0gYlsyXVsyXSAmJgorICAgICAgICBhWzJdWzNdID09IGJbMl1bM10gJiYKKyAgICAgICAg
YVszXVswXSA9PSBiWzNdWzBdICYmCisgICAgICAgIGFbM11bMV0gPT0gYlszXVsxXSAmJgorICAg
ICAgICBhWzNdWzJdID09IGJbM11bMl0gJiYKKyAgICAgICAgYVszXVszXSA9PSBiWzNdWzNdICYm
CisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShmbG9hdDJ4MiBhLCBmbG9hdDJ4MiBiKSB7
CisgICAgcmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBd
WzFdID09IGJbMF1bMV0gJiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAg
IGFbMV1bMV0gPT0gYlsxXVsxXSAmJgorICAgIHRydWU7Cit9Citib29sIG9wZXJhdG9yPT0oZmxv
YXQyeDMgYSwgZmxvYXQyeDMgYikgeworICAgIHJldHVybgorICAgICAgICBhWzBdWzBdID09IGJb
MF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisgICAgICAgIGFbMF1bMl0g
PT0gYlswXVsyXSAmJgorICAgICAgICBhWzFdWzBdID09IGJbMV1bMF0gJiYKKyAgICAgICAgYVsx
XVsxXSA9PSBiWzFdWzFdICYmCisgICAgICAgIGFbMV1bMl0gPT0gYlsxXVsyXSAmJgorICAgIHRy
dWU7Cit9Citib29sIG9wZXJhdG9yPT0oZmxvYXQyeDQgYSwgZmxvYXQyeDQgYikgeworICAgIHJl
dHVybgorICAgICAgICBhWzBdWzBdID09IGJbMF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBi
WzBdWzFdICYmCisgICAgICAgIGFbMF1bMl0gPT0gYlswXVsyXSAmJgorICAgICAgICBhWzBdWzNd
ID09IGJbMF1bM10gJiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFb
MV1bMV0gPT0gYlsxXVsxXSAmJgorICAgICAgICBhWzFdWzJdID09IGJbMV1bMl0gJiYKKyAgICAg
ICAgYVsxXVszXSA9PSBiWzFdWzNdICYmCisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShm
bG9hdDN4MiBhLCBmbG9hdDN4MiBiKSB7CisgICAgcmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0g
YlswXVswXSAmJgorICAgICAgICBhWzBdWzFdID09IGJbMF1bMV0gJiYKKyAgICAgICAgYVsxXVsw
XSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFbMV1bMV0gPT0gYlsxXVsxXSAmJgorICAgICAgICBh
WzJdWzBdID09IGJbMl1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9PSBiWzJdWzFdICYmCisgICAg
dHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShmbG9hdDN4MyBhLCBmbG9hdDN4MyBiKSB7CisgICAg
cmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBdWzFdID09
IGJbMF1bMV0gJiYKKyAgICAgICAgYVswXVsyXSA9PSBiWzBdWzJdICYmCisgICAgICAgIGFbMV1b
MF0gPT0gYlsxXVswXSAmJgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICAgICAg
YVsxXVsyXSA9PSBiWzFdWzJdICYmCisgICAgICAgIGFbMl1bMF0gPT0gYlsyXVswXSAmJgorICAg
ICAgICBhWzJdWzFdID09IGJbMl1bMV0gJiYKKyAgICAgICAgYVsyXVsyXSA9PSBiWzJdWzJdICYm
CisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShmbG9hdDN4NCBhLCBmbG9hdDN4NCBiKSB7
CisgICAgcmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBd
WzFdID09IGJbMF1bMV0gJiYKKyAgICAgICAgYVswXVsyXSA9PSBiWzBdWzJdICYmCisgICAgICAg
IGFbMF1bM10gPT0gYlswXVszXSAmJgorICAgICAgICBhWzFdWzBdID09IGJbMV1bMF0gJiYKKyAg
ICAgICAgYVsxXVsxXSA9PSBiWzFdWzFdICYmCisgICAgICAgIGFbMV1bMl0gPT0gYlsxXVsyXSAm
JgorICAgICAgICBhWzFdWzNdID09IGJbMV1bM10gJiYKKyAgICAgICAgYVsyXVswXSA9PSBiWzJd
WzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAgICBhWzJdWzJdID09
IGJbMl1bMl0gJiYKKyAgICAgICAgYVsyXVszXSA9PSBiWzJdWzNdICYmCisgICAgdHJ1ZTsKK30K
K2Jvb2wgb3BlcmF0b3I9PShmbG9hdDR4MiBhLCBmbG9hdDR4MiBiKSB7CisgICAgcmV0dXJuCisg
ICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBdWzFdID09IGJbMF1bMV0g
JiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFbMV1bMV0gPT0gYlsx
XVsxXSAmJgorICAgICAgICBhWzJdWzBdID09IGJbMl1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9
PSBiWzJdWzFdICYmCisgICAgICAgIGFbM11bMF0gPT0gYlszXVswXSAmJgorICAgICAgICBhWzNd
WzFdID09IGJbM11bMV0gJiYKKyAgICB0cnVlOworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0NHgz
IGEsIGZsb2F0NHgzIGIpIHsKKyAgICByZXR1cm4KKyAgICAgICAgYVswXVswXSA9PSBiWzBdWzBd
ICYmCisgICAgICAgIGFbMF1bMV0gPT0gYlswXVsxXSAmJgorICAgICAgICBhWzBdWzJdID09IGJb
MF1bMl0gJiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFbMV1bMV0g
PT0gYlsxXVsxXSAmJgorICAgICAgICBhWzFdWzJdID09IGJbMV1bMl0gJiYKKyAgICAgICAgYVsy
XVswXSA9PSBiWzJdWzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAg
ICBhWzJdWzJdID09IGJbMl1bMl0gJiYKKyAgICAgICAgYVszXVswXSA9PSBiWzNdWzBdICYmCisg
ICAgICAgIGFbM11bMV0gPT0gYlszXVsxXSAmJgorICAgICAgICBhWzNdWzJdID09IGJbM11bMl0g
JiYKKyAgICB0cnVlOworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0NHg0IGEsIGZsb2F0NHg0IGIp
IHsKKyAgICByZXR1cm4KKyAgICAgICAgYVswXVswXSA9PSBiWzBdWzBdICYmCisgICAgICAgIGFb
MF1bMV0gPT0gYlswXVsxXSAmJgorICAgICAgICBhWzBdWzJdID09IGJbMF1bMl0gJiYKKyAgICAg
ICAgYVswXVszXSA9PSBiWzBdWzNdICYmCisgICAgICAgIGFbMV1bMF0gPT0gYlsxXVswXSAmJgor
ICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICAgICAgYVsxXVsyXSA9PSBiWzFdWzJd
ICYmCisgICAgICAgIGFbMV1bM10gPT0gYlsxXVszXSAmJgorICAgICAgICBhWzJdWzBdID09IGJb
Ml1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9PSBiWzJdWzFdICYmCisgICAgICAgIGFbMl1bMl0g
PT0gYlsyXVsyXSAmJgorICAgICAgICBhWzJdWzNdID09IGJbMl1bM10gJiYKKyAgICAgICAgYVsz
XVswXSA9PSBiWzNdWzBdICYmCisgICAgICAgIGFbM11bMV0gPT0gYlszXVsxXSAmJgorICAgICAg
ICBhWzNdWzJdID09IGJbM11bMl0gJiYKKyAgICAgICAgYVszXVszXSA9PSBiWzNdWzNdICYmCisg
ICAgdHJ1ZTsKK30KK2Jvb2wyIG9wZXJhdG9yLnh4KGJvb2wyIHYpIHsKKyAgICBib29sMiByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnh5KGJvb2wyIHYpIHsKKyAgICBib29sMiByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnh5PShib29sMiB2LCBib29sMiBjKSB7CisgICAg
Ym9vbDIgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IueXgoYm9vbDIgdikgewor
ICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IueXg9KGJvb2wyIHYsIGJv
b2wyIGMpIHsKKyAgICBib29sMiByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAg
IHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci55
eShib29sMiB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci54
eChib29sMyB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci54
eShib29sMyB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54
eT0oYm9vbDMgdiwgYm9vbDIgYykgeworICAgIGJvb2wzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2wyIG9wZXJhdG9yLnh6KGJvb2wzIHYpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2wzIG9wZXJhdG9yLnh6PShib29sMyB2LCBib29sMiBjKSB7CisgICAgYm9vbDMgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IueXgoYm9vbDMgdikgeworICAgIGJvb2wyIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXg9KGJvb2wzIHYsIGJvb2wyIGMpIHsKKyAgICBi
b29sMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci55eShib29sMyB2KSB7Cisg
ICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci55eihib29sMyB2KSB7Cisg
ICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55ej0oYm9vbDMgdiwgYm9v
bDIgYykgeworICAgIGJvb2wzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAg
cmVzdWx0LnogPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnp4
KGJvb2wzIHYpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp4
PShib29sMyB2LCBib29sMiBjKSB7CisgICAgYm9vbDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDIgb3BlcmF0b3IuenkoYm9vbDMgdikgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDMgb3BlcmF0b3Iuenk9KGJvb2wzIHYsIGJvb2wyIGMpIHsKKyAgICBib29sMyByZXN1bHQgPSB2
OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci56eihib29sMyB2KSB7CisgICAgYm9vbDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci54eChib29sNCB2KSB7CisgICAgYm9vbDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci54eShib29sNCB2KSB7CisgICAgYm9vbDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eT0oYm9vbDQgdiwgYm9vbDIgYykgeworICAgIGJv
b2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnh6KGJvb2w0IHYpIHsKKyAg
ICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6PShib29sNCB2LCBib29s
MiBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICBy
ZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IueHco
Ym9vbDQgdikgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHc9
KGJvb2w0IHYsIGJvb2wyIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54
ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
MiBvcGVyYXRvci55eChib29sNCB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci55eD0oYm9vbDQgdiwgYm9vbDIgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnl5KGJvb2w0IHYpIHsKKyAgICBib29sMiByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnl6KGJvb2w0IHYpIHsKKyAgICBib29sMiByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6PShib29sNCB2LCBib29sMiBjKSB7CisgICAgYm9v
bDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IueXcoYm9vbDQgdikgeworICAg
IGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXc9KGJvb2w0IHYsIGJvb2wy
IGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci56eChi
b29sNCB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eD0o
Ym9vbDQgdiwgYm9vbDIgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wy
IG9wZXJhdG9yLnp5KGJvb2w0IHYpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnp5PShib29sNCB2LCBib29sMiBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDIgb3BlcmF0b3IuenooYm9vbDQgdikgeworICAgIGJvb2wyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDIgb3BlcmF0b3IuencoYm9vbDQgdikgeworICAgIGJvb2wyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenc9KGJvb2w0IHYsIGJvb2wyIGMpIHsKKyAgICBib29s
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci53eChib29sNCB2KSB7CisgICAg
Ym9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eD0oYm9vbDQgdiwgYm9vbDIg
YykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVz
dWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnd5KGJv
b2w0IHYpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd5PShi
b29sNCB2LCBib29sMiBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9
IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIg
b3BlcmF0b3Iud3ooYm9vbDQgdikgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3Iud3o9KGJvb2w0IHYsIGJvb2wyIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sMiBvcGVyYXRvci53dyhib29sNCB2KSB7CisgICAgYm9vbDIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sMyBvcGVyYXRvci54eHgoYm9vbDIgdikgeworICAgIGJvb2wzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHh5KGJvb2wyIHYp
IHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wz
IG9wZXJhdG9yLnh5eChib29sMiB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54eXkoYm9vbDIgdikgeworICAgIGJvb2wz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXh4
KGJvb2wyIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2wzIG9wZXJhdG9yLnl4eShib29sMiB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eXgoYm9vbDIgdikgewor
ICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3Bl
cmF0b3IueXl5KGJvb2wyIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh4eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54eHkoYm9v
bDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDMgb3BlcmF0b3IueHh6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh5eChib29sMyB2KSB7CisgICAg
Ym9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRv
ci54eXkoYm9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDMgb3BlcmF0b3IueHl6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh5ej0oYm9vbDMg
diwgYm9vbDMgYykgeworICAgIGJvb2wzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7
CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh6eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54enkoYm9vbDMg
dikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDMgb3BlcmF0b3IueHp5PShib29sMyB2LCBib29sMyBjKSB7CisgICAgYm9vbDMgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQu
eSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHp6KGJvb2wz
IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2wzIG9wZXJhdG9yLnl4eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eHkoYm9vbDMgdikgeworICAgIGJv
b2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iu
eXh6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2wzIG9wZXJhdG9yLnl4ej0oYm9vbDMgdiwgYm9vbDMgYykgeworICAgIGJvb2wz
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9y
Lnl5eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sMyBvcGVyYXRvci55eXkoYm9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXl6KGJvb2wzIHYp
IHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wz
IG9wZXJhdG9yLnl6eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eng9KGJvb2wzIHYsIGJvb2wzIGMpIHsK
KyAgICBib29sMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56
ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
MyBvcGVyYXRvci55enkoYm9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXp6KGJvb2wzIHYpIHsKKyAgICBib29s
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp4
eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sMyBvcGVyYXRvci56eHkoYm9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenh5PShib29sMyB2LCBi
b29sMyBjKSB7CisgICAgYm9vbDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAg
ICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDMgb3BlcmF0b3Iuenh6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp5eChib29sMyB2KSB7
CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBv
cGVyYXRvci56eXg9KGJvb2wzIHYsIGJvb2wzIGMpIHsKKyAgICBib29sMyByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC54ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci56eXkoYm9vbDMgdikg
eworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMg
b3BlcmF0b3Iuenl6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp6eChib29sMyB2KSB7CisgICAgYm9vbDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci56enko
Ym9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDMgb3BlcmF0b3Iuenp6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh4eChib29sNCB2KSB7Cisg
ICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVy
YXRvci54eHkoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHh6KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh4dyhib29s
NCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sMyBvcGVyYXRvci54eXgoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHl5KGJvb2w0IHYpIHsKKyAgICBi
b29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9y
Lnh5eihib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXo9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29s
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRv
ci54eXcoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl3PShib29sNCB2LCBib29sMyBjKSB7CisgICAgYm9v
bDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0
b3IueHp4KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh6eShib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54enk9KGJvb2w0
IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54
OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54enooYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHp3KGJvb2w0
IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnh6dz0oYm9vbDQgdiwgYm9vbDMgYykgeworICAgIGJvb2w0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0
LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh3eChib29s
NCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sMyBvcGVyYXRvci54d3koYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHd5PShib29sNCB2LCBib29sMyBj
KSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1
bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDMgb3BlcmF0b3IueHd6KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3ej0oYm9vbDQgdiwgYm9vbDMg
YykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVz
dWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2wzIG9wZXJhdG9yLnh3dyhib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eHgoYm9vbDQgdikgeworICAg
IGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0
b3IueXh5KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnl4eihib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHo9KGJvb2w0
IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54
OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eHcoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh3PShib29s
NCB2LCBib29sMyBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMu
eDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXl4KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnl5eShib29s
NCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sMyBvcGVyYXRvci55eXooYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXl3KGJvb2w0IHYpIHsKKyAgICBi
b29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9y
Lnl6eChib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci55eng9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29s
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55Owor
ICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRv
ci55enkoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDMgb3BlcmF0b3IueXp6KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnl6dyhib29sNCB2
KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci55enc9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55d3goYm9vbDQg
dikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueXd4PShib29sNCB2LCBib29sMyBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQu
eCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXd5KGJvb2w0
IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2wzIG9wZXJhdG9yLnl3eihib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3o9KGJvb2w0IHYsIGJvb2wzIGMp
IHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3Vs
dC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sMyBvcGVyYXRvci55d3coYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenh4KGJvb2w0IHYpIHsKKyAgICBi
b29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9y
Lnp4eShib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHk9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29s
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55Owor
ICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRv
ci56eHooYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenh3KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4dz0oYm9vbDQg
diwgYm9vbDMgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7
CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp5eChib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXg9KGJvb2w0
IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54
OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci56eXkoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenl6KGJvb2w0
IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2wzIG9wZXJhdG9yLnp5dyhib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXc9KGJvb2w0IHYsIGJvb2wzIGMp
IHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3Vs
dC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sMyBvcGVyYXRvci56engoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenp5KGJvb2w0IHYpIHsKKyAgICBi
b29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9y
Lnp6eihib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sMyBvcGVyYXRvci56encoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuend4KGJvb2w0IHYp
IHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnp3eD0oYm9vbDQgdiwgYm9vbDMgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0Lngg
PSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp3eShib29sNCB2
KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci56d3k9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci56d3ooYm9vbDQg
dikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDMgb3BlcmF0b3Iuend3KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnd4eChib29sNCB2KSB7CisgICAgYm9v
bDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci53
eHkoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3Iud3h5PShib29sNCB2LCBib29sMyBjKSB7CisgICAgYm9vbDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAg
ICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iu
d3h6KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4ej0oYm9vbDQgdiwgYm9vbDMgYykgeworICAgIGJvb2w0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9y
Lnd4dyhib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sMyBvcGVyYXRvci53eXgoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3l4PShib29sNCB2
LCBib29sMyBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsK
KyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDMgb3BlcmF0b3Iud3l5KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnd5eihib29sNCB2
KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci53eXo9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci53eXcoYm9vbDQg
dikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDMgb3BlcmF0b3Iud3p4KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd6eD0oYm9vbDQgdiwgYm9vbDMgYykg
eworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0
LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2wzIG9wZXJhdG9yLnd6eShib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53enk9KGJvb2w0IHYsIGJvb2wzIGMp
IHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3Vs
dC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sMyBvcGVyYXRvci53enooYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iud3p3KGJvb2w0IHYpIHsKKyAgICBi
b29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9y
Lnd3eChib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sMyBvcGVyYXRvci53d3koYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iud3d6KGJvb2w0IHYp
IHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wz
IG9wZXJhdG9yLnd3dyhib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHh4KGJvb2wyIHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnh4eHkoYm9vbDIgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueHh5eChib29sMiB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHl5KGJv
b2wyIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5eHgoYm9vbDIgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl4eShib29sMiB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci54eXl4KGJvb2wyIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5
eXkoYm9vbDIgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh4eChib29sMiB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHh5KGJvb2wyIHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnl4eXgoYm9vbDIgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueXh5eShib29sMiB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXh4KGJvb2wy
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5eHkoYm9vbDIgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3IueXl5eChib29sMiB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci55eXl5KGJvb2wyIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4eHgo
Ym9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHh4eShib29sMyB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnh4eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
eHh5eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHl6KGJvb2wzIHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4engoYm9vbDMgdikgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3IueHh6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVy
YXRvci54eHp6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5eHgoYm9v
bDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl4eShib29sMyB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnh5eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl5
eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXl6KGJvb2wzIHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5engoYm9vbDMgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3IueHl6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci54eXp6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6eHgoYm9vbDMg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp4eShib29sMyB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci54enh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnh6eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp5eShi
b29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54enl6KGJvb2wzIHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueHp6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54
enp6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4eHgoYm9vbDMgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh4eShib29sMyB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci55eHh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnl4eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh5eShib29s
MyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHl6KGJvb2wzIHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3IueXh6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHp6
KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5eHgoYm9vbDMgdikgewor
ICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl4eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sNCBvcGVyYXRvci55eXh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnl5eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl5eShib29sMyB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXl6KGJvb2wzIHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnl5engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueXl6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXp6KGJv
b2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6eHgoYm9vbDMgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp4eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci55enh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6
eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp5eShib29sMyB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enl6KGJvb2wzIHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnl6engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueXp6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enp6KGJvb2wz
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4eHgoYm9vbDMgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3Iuenh4eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci56eHh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4eXgo
Ym9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh5eShib29sMyB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHl6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnp4engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
enh6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHp6KGJvb2wzIHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5eHgoYm9vbDMgdikgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3Iuenl4eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVy
YXRvci56eXh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5eXgoYm9v
bDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl5eShib29sMyB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXl6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnp5engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl6
eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXp6KGJvb2wzIHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6eHgoYm9vbDMgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3Iuenp4eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci56enh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6eXgoYm9vbDMg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenp5eShib29sMyB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci56enl6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnp6engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenp6eShi
b29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56enp6KGJvb2wzIHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueHh4eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54
eHh6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4eHcoYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHh5eChib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci54eHl5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnh4eXooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHh5dyhib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHp4KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3IueHh6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHp3
KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4d3goYm9vbDQgdikgewor
ICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHh3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sNCBvcGVyYXRvci54eHd6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnh4d3coYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl4eChib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXh5KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnh5eHooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueHl4dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXl4KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5eXkoYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl5eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci54eXl3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5
engoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl6eShib29sNCB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXp6KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnh5encoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueHl6dz0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7
CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnh5d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl3eShib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXd6KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5d3o9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29s
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXd3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnh6eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp4
eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54enh6KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6eHcoYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3IueHp5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci54enl5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6eXooYm9vbDQg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp5dyhib29sNCB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci54enl3PShib29sNCB2LCBib29sNCBjKSB7CisgICAgYm9vbDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAg
ICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3IueHp6eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci54enp5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6enoo
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp6dyhib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54end4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnh6d3koYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
eHp3eT0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7Cisg
ICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnh6d3ooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp3dyhib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54d3h4KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnh3eHkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueHd4eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54d3h3KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3eXgoYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3IueHd5eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci54d3l6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3
eXo9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAg
IHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54
d3l3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3engoYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHd6eShib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci54d3p5PShib29sNCB2LCBib29sNCBjKSB7CisgICAgYm9vbDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICBy
ZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3IueHd6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVy
YXRvci54d3p3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3d3goYm9v
bDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHd3eShib29sNCB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci54d3d6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnh3d3coYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh4
eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHh5KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4eHooYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3IueXh4dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci55eHl4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4eXkoYm9vbDQg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh5eihib29sNCB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci55eHl3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnl4engoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh6eShi
b29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHp6KGJvb2w0IHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4encoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueXh6dz0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0
LnogPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnl4d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
eXh3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHd6KGJvb2w0IHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4d3o9KGJvb2w0IHYsIGJvb2w0IGMpIHsK
KyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54
ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHd3KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnl5eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueXl4eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXh6KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5eHcoYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci55eXl5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5
eXooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl5dyhib29sNCB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXp4KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnl5enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueXl6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXp3KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5d3goYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3IueXl3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci55eXd6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5d3co
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp4eChib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enh5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnl6eHooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
eXp4dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enh3PShib29sNCB2
LCBib29sNCBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsK
KyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9
IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp5eChib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enl5KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnl6eXooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueXp5dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enp4KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6enkoYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci55enp3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6
d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp3eD0oYm9vbDQgdiwg
Ym9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7Cisg
ICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnggPSBj
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6d3koYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp3eihib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci55end3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnl3eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXd4eShib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3h6KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl3eHo9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29s
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55Owor
ICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3h3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnl3eXgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXd5
eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3l6KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl3eXcoYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3IueXd6eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci55d3p4PShib29sNCB2LCBib29sNCBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsK
KyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueXd6eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3p6KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl3encoYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3IueXd3eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci55d3d5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl3d3oo
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXd3dyhib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHh4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnp4eHkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
enh4eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHh3KGJvb2w0IHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4eXgoYm9vbDQgdikgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3Iuenh5eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVy
YXRvci56eHl6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4eXcoYm9v
bDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh5dz0oYm9vbDQgdiwgYm9vbDQg
YykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVz
dWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4engoYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh6eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci56eHp6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4
encoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh3eChib29sNCB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHd5KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnp4d3k9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29sNCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJl
c3VsdC53ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci56eHd6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnp4d3coYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl4eChib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXh5KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5eHooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3Iuenl4dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXh3
PShib29sNCB2LCBib29sNCBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICBy
ZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl5
eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXl5KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5eXooYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3Iuenl5dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci56eXp4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5enkoYm9vbDQg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl6eihib29sNCB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci56eXp3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnp5d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl3eD0o
Ym9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVz
dWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5d3ko
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl3eihib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXd3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnp6eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
enp4eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56enh6KGJvb2w0IHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6eHcoYm9vbDQgdikgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3Iuenp5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVy
YXRvci56enl5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6eXooYm9v
bDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenp5dyhib29sNCB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci56enp4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnp6enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenp6
eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56enp3KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3Iuenp3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci56end6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6d3coYm9vbDQg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend4eChib29sNCB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci56d3h5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnp3eHk9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0g
Yy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci56d3h6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp3eHco
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend5eChib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56d3l4PShib29sNCB2LCBib29sNCBjKSB7CisgICAg
Ym9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMu
eTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend5eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sNCBvcGVyYXRvci56d3l6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnp3eXcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend6eChib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56d3p5KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnp3enooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3Iuend6dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56d3d4KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp3d3koYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend3eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci56d3d3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4
eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3h4eShib29sNCB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eHh6KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnd4eHcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3Iud3h5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eHl5KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4eXooYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3Iud3h5ej0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4eXcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3Iud3h6eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eHp5
KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4enk9KGJvb2w0IHYsIGJv
b2w0IGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAg
IHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eHp6KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4encoYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3Iud3h3eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci53eHd5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4d3ooYm9vbDQg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3h3dyhib29sNCB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci53eXh4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnd5eHkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3l4eihi
b29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eXh6PShib29sNCB2LCBib29s
NCBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICBy
ZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3l4dyhib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eXl4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnd5eXkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
d3l5eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eXl3KGJvb2w0IHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd5engoYm9vbDQgdikgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3Iud3l6eD0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAg
cmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnd5enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3Iud3l6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eXp3KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd5d3goYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3l3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci53eXd6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd5
d3coYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3p4eChib29sNCB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53enh5KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnd6eHk9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29sNCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJl
c3VsdC54ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci53enh6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnd6eHcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3p5eChib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53enl4PShib29sNCB2LCBib29sNCBj
KSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1
bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3p5eShib29sNCB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci53enl6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnd6eXcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3p6
eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53enp5KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd6enooYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3Iud3p6dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci53end4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd6d3koYm9vbDQg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3p3eihib29sNCB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci53end3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnd3eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3d4eShi
b29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53d3h6KGJvb2w0IHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd3eHcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3Iud3d5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53
d3l5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd3eXooYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3d5dyhib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci53d3p4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnd3enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3d6eihib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53d3p3KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd3d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3Iud3d3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53d3d6
KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd3d3coYm9vbDQgdikgewor
ICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh4KHVjaGFyMiB2KSB7CisgICAgdWNoYXIyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh5KHVjaGFyMiB2KSB7CisgICAgdWNoYXIy
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh5PSh1Y2hhcjIgdiwgdWNoYXIyIGMp
IHsKKyAgICB1Y2hhcjIgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1
bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl4KHVj
aGFyMiB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl4
PSh1Y2hhcjIgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjIgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIyIG9wZXJhdG9yLnl5KHVjaGFyMiB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXIyIG9wZXJhdG9yLnh4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIyIG9wZXJhdG9yLnh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh5PSh1Y2hhcjMgdiwgdWNoYXIyIGMpIHsKKyAgICB1
Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh6KHVjaGFyMyB2KSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh6PSh1Y2hhcjMg
diwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMu
eDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9w
ZXJhdG9yLnl4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIz
IG9wZXJhdG9yLnl4PSh1Y2hhcjMgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl6KHVjaGFyMyB2KSB7CisgICAgdWNoYXIy
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl6PSh1Y2hhcjMgdiwgdWNoYXIyIGMp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1
bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnp4KHVj
aGFyMyB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp4
PSh1Y2hhcjMgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIyIG9wZXJhdG9yLnp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXIzIG9wZXJhdG9yLnp5PSh1Y2hhcjMgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjMg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnp6KHVjaGFyMyB2KSB7CisgICAg
dWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh4KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh5KHVjaGFyNCB2KSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5PSh1Y2hhcjQg
diwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMu
eDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9w
ZXJhdG9yLnh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnh6PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh3PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQu
dyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl4KHVjaGFy
NCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4PSh1
Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXIyIG9wZXJhdG9yLnl5KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIyIG9wZXJhdG9yLnl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnl6PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl3KHVjaGFyNCB2KSB7CisgICAg
dWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl3PSh1Y2hhcjQgdiwgdWNo
YXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAg
ICByZXN1bHQudyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9y
Lnp4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnp4PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIyIG9wZXJhdG9yLnp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnp6KHVjaGFyNCB2KSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnp3KHVjaGFyNCB2
KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3PSh1Y2hh
cjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9
IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIy
IG9wZXJhdG9yLnd4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnd4PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnd5KHVjaGFyNCB2KSB7CisgICAgdWNoYXIy
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5PSh1Y2hhcjQgdiwgdWNoYXIyIGMp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1
bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnd6KHVj
aGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd6
PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIyIG9wZXJhdG9yLnd3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXIzIG9wZXJhdG9yLnh4eCh1Y2hhcjIgdikgeworICAgIHVjaGFyMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54eHkodWNoYXIyIHYp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjMgb3BlcmF0b3IueHl4KHVjaGFyMiB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh5eSh1Y2hhcjIgdikgeworICAg
IHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVy
YXRvci55eHgodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueXh5KHVjaGFyMiB2KSB7CisgICAgdWNoYXIz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl5
eCh1Y2hhcjIgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyMyBvcGVyYXRvci55eXkodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueHh4KHVjaGFy
MyB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIzIG9wZXJhdG9yLnh4eSh1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54eHoodWNoYXIzIHYpIHsK
KyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMg
b3BlcmF0b3IueHl4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh5eSh1Y2hhcjMgdikgeworICAgIHVj
aGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRv
ci54eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueHl6PSh1Y2hhcjMgdiwgdWNoYXIzIGMpIHsKKyAg
ICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9
IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIz
IG9wZXJhdG9yLnh6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54enkodWNoYXIzIHYpIHsKKyAgICB1
Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0
b3IueHp5PSh1Y2hhcjMgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh6eih1Y2hhcjMgdikg
eworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
MyBvcGVyYXRvci55eHgodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueXh5KHVjaGFyMyB2KSB7CisgICAg
dWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJh
dG9yLnl4eih1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55eHo9KHVjaGFyMyB2LCB1Y2hhcjMgYykgewor
ICAgIHVjaGFyMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54
ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjMgb3BlcmF0b3IueXl4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl5eSh1Y2hhcjMgdikgeworICAg
IHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVy
YXRvci55eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueXp4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl6
eD0odWNoYXIzIHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXIzIHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55enkodWNoYXIzIHYpIHsKKyAg
ICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3Bl
cmF0b3IueXp6KHVjaGFyMyB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp4eCh1Y2hhcjMgdikgeworICAgIHVjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56
eHkodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenh5PSh1Y2hhcjMgdiwgdWNoYXIzIGMpIHsKKyAgICB1
Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMu
eTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9w
ZXJhdG9yLnp4eih1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56eXgodWNoYXIzIHYpIHsKKyAgICB1Y2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iu
enl4PSh1Y2hhcjMgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp5eSh1Y2hhcjMgdikgewor
ICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBv
cGVyYXRvci56eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenp4KHVjaGFyMyB2KSB7CisgICAgdWNo
YXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9y
Lnp6eSh1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueHh4KHVj
aGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXIzIG9wZXJhdG9yLnh4eSh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54eHoodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjMgb3BlcmF0b3IueHh3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh5eCh1Y2hhcjQgdikgeworICAg
IHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVy
YXRvci54eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueHl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5
ej0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54eXcodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3IueHl3PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQudyA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh6eCh1Y2hhcjQg
dikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyMyBvcGVyYXRvci54enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp5PSh1Y2hhcjQgdiwgdWNo
YXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAg
ICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIzIG9wZXJhdG9yLnh6eih1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54encodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueHp3PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICBy
ZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh3
eCh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyMyBvcGVyYXRvci54d3kodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd5PSh1Y2hh
cjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9
IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh3eih1Y2hhcjQgdikgeworICAgIHVjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54
d3o9KHVjaGFyNCB2LCB1Y2hhcjMgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueHd3KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9w
ZXJhdG9yLnl4eCh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55eHkodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iu
eXh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4ej0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAg
dWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBv
cGVyYXRvci55eHcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh3PSh1Y2hhcjQgdiwgdWNoYXIzIGMp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1
bHQueCA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIzIG9wZXJhdG9yLnl5eCh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55eXkodWNoYXI0IHYpIHsK
KyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMg
b3BlcmF0b3IueXl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl5dyh1Y2hhcjQgdikgeworICAgIHVj
aGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRv
ci55engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp4PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9
IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIz
IG9wZXJhdG9yLnl6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55enoodWNoYXI0IHYpIHsKKyAgICB1
Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0
b3IueXp3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6dz0odWNoYXI0IHYsIHVjaGFyMyBjKSB7Cisg
ICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0Lnog
PSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
MyBvcGVyYXRvci55d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd4PSh1Y2hhcjQgdiwgdWNoYXIz
IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICBy
ZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXIzIG9wZXJhdG9yLnl3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55d3oodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3IueXd6PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1
bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl3dyh1
Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyMyBvcGVyYXRvci56eHgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenh5KHVjaGFyNCB2
KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnp4eT0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVz
dWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56eHoo
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenh3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4dz0odWNoYXI0
IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBj
Lng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56eXgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl4
PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp5eSh1Y2hhcjQgdikgeworICAg
IHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVy
YXRvci56eXoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenl3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5
dz0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56engodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3Bl
cmF0b3Iuenp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp6eih1Y2hhcjQgdikgeworICAgIHVjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56
encodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuend4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3eD0odWNo
YXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56d3kodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
end5PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp3eih1Y2hhcjQgdikgewor
ICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBv
cGVyYXRvci56d3codWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iud3h4KHVjaGFyNCB2KSB7CisgICAgdWNo
YXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9y
Lnd4eSh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eHk9KHVjaGFyNCB2LCB1Y2hhcjMgYykgeworICAg
IHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0g
Yy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMg
b3BlcmF0b3Iud3h6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd4ej0odWNoYXI0IHYsIHVjaGFyMyBj
KSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVz
dWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyMyBvcGVyYXRvci53eHcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iud3l4KHVjaGFyNCB2KSB7
CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnd5eD0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0
LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci53eXkodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjMgb3BlcmF0b3Iud3l6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5ej0odWNoYXI0IHYs
IHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7
CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci53eXcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iud3p4KHVj
aGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnd6eD0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7Cisg
ICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRv
ci53enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p5PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9
IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIz
IG9wZXJhdG9yLnd6eih1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci53encodWNoYXI0IHYpIHsKKyAgICB1
Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0
b3Iud3d4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnd3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci53d3oo
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjMgb3BlcmF0b3Iud3d3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4eHgodWNoYXIy
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh4eSh1Y2hhcjIgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHl4KHVjaGFyMiB2KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnh4eXkodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3IueHl4eCh1Y2hhcjIgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXh5
KHVjaGFyMiB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5eXgodWNoYXIyIHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl5eSh1Y2hhcjIgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHh4KHVjaGFyMiB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnl4eHkodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3IueXh5eCh1Y2hhcjIgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHl5KHVj
aGFyMiB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl5eHgodWNoYXIyIHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl4eSh1Y2hhcjIgdikgeworICAgIHVjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyNCBvcGVyYXRvci55eXl4KHVjaGFyMiB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnl5eXkodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
eHh4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHh5KHVjaGFy
MyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4eHoodWNoYXIzIHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh5eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci54eHl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnh4eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh6
eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHp5KHVjaGFyMyB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4enoodWNoYXIzIHYpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci54eXh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnh5eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl5eCh1
Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXl5KHVjaGFyMyB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci54eXp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnh5enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp4eCh1Y2hh
cjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54enh5KHVjaGFyMyB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3IueHp5eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci54enl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6
eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp6eCh1Y2hhcjMg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54enp5KHVjaGFyMyB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueXh4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci55eHh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4eHoo
dWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh5eCh1Y2hhcjMgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHl5KHVjaGFyMyB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnl4eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3IueXh6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci55eHp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4enoodWNo
YXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl4eCh1Y2hhcjMgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnl5eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueXl5eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55
eXl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl5eXoodWNoYXIz
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl6eCh1Y2hhcjMgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnl5enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3IueXp4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55enh5
KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6eHoodWNoYXIzIHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp5eCh1Y2hhcjMgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci55enl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnl6eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3IueXp6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55enp5KHVj
aGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6enoodWNoYXIzIHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenh4eCh1Y2hhcjMgdikgeworICAgIHVjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyNCBvcGVyYXRvci56eHh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnp4eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
enh5eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eHl5KHVjaGFy
MyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4eXoodWNoYXIzIHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenh6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci56eHp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnp4enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl4
eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXh5KHVjaGFyMyB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5eHoodWNoYXIzIHYpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl5eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci56eXl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnp5eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl6eCh1
Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXp5KHVjaGFyMyB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5enoodWNoYXIzIHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci56enh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnp6eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp5eCh1Y2hh
cjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56enl5KHVjaGFyMyB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp6eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3Iuenp6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci56enp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp6
enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh4eCh1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHh5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4eHoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueHh4dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci54eHl4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4eXko
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh5eih1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHl3KHVjaGFyNCB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnh4engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3IueHh6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci54eHp6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4encodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh3eCh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHd5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnh4d3oodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueHh3dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54
eXh4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5eHkodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl4eih1Y2hhcjQgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXh3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnh5eXgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3IueHl5eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXl6
KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5eXcodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl6eCh1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnh5enoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3IueHl6dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXp3PSh1
Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICBy
ZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5
d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl3eSh1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXd6KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5d3o9KHVjaGFyNCB2LCB1Y2hhcjQgYykgeworICAg
IHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0g
Yy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl3dyh1Y2hhcjQgdikgeworICAgIHVjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyNCBvcGVyYXRvci54enh4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnh6eHkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
eHp4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54enh3KHVjaGFy
NCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6eXgodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp5eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci54enl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnh6eXcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp5
dz0odWNoYXI0IHYsIHVjaGFyNCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7Cisg
ICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci54enp4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6enkodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp6eih1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54enp3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnh6d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueHp3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54
end5PSh1Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsK
KyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnh6d3oodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp3dyh1
Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54d3h4KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh3eHkodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci54d3h3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnh3eXgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd5eSh1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54d3l6KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh3eXo9KHVjaGFyNCB2LCB1Y2hhcjQgYykgewor
ICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53
ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd5dyh1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci54d3p4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnh3enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3IueHd6eT0odWNoYXI0IHYsIHVjaGFyNCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBj
Lno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci54d3p6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh3
encodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd3eCh1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54d3d5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh3d3oodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueHd3dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci55eHh4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4eHko
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh4eih1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHh3KHVjaGFyNCB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnl4eXgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3IueXh5eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci55eHl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4eXcodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh6eCh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnl4enoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueXh6dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55
eHp3PSh1Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsK
KyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnl4d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh3eSh1
Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHd6KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4d3o9KHVjaGFyNCB2LCB1Y2hhcjQgYykg
eworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3Vs
dC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh3dyh1Y2hhcjQgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXh4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnl5eHkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3IueXl4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXh3
KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl5eXgodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl5eSh1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnl5eXcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3IueXl6eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXp5KHVj
aGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl5enoodWNoYXI0IHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl6dyh1Y2hhcjQgdikgeworICAgIHVjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyNCBvcGVyYXRvci55eXd4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnl5d3kodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
eXl3eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXd3KHVjaGFy
NCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6eHgodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp4eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci55enh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnl6eHcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp4
dz0odWNoYXI0IHYsIHVjaGFyNCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7Cisg
ICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci55enl4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6eXkodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp5eih1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55enl3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnl6engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueXp6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55
enp6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6encodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp3eCh1Y2hhcjQgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55end4PSh1Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9
IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6d3kodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp3eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci55end3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnl3eHgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd4eSh1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55d3h6KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl3eHo9KHVjaGFyNCB2LCB1Y2hhcjQgYykgewor
ICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53
ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd4dyh1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci55d3l4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnl3eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3IueXd5eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55d3l3KHVj
aGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl3engodWNoYXI0IHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd6eD0odWNoYXI0IHYsIHVjaGFyNCBjKSB7
CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0
LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55d3p5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl3enoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueXd6dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci55d3d4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl3d3ko
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd3eih1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55d3d3KHVjaGFyNCB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnp4eHgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3Iuenh4eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci56eHh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4eHcodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenh5eCh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eHl5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnp4eXoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3Iuenh5dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56
eHl3PSh1Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsK
KyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnp4engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenh6eSh1
Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eHp6KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4encodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenh3eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci56eHd5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnp4d3k9KHVjaGFyNCB2LCB1Y2hhcjQgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56
OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3Iuenh3eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eHd3
KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5eHgodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl4eSh1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnp5eHcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3Iuenl4dz0odWNoYXI0IHYsIHVjaGFyNCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBj
Lno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci56eXl4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5
eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl5eih1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXl3KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3Iuenl6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci56eXp6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5enco
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl3eCh1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXd4PSh1Y2hhcjQgdiwgdWNoYXI0IGMp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1
bHQueSA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5d3kodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl3eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci56eXd3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnp6eHgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp4
eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56enh6KHVjaGFyNCB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp6eHcodWNoYXI0IHYpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp5eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci56enl5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnp6eXoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp5dyh1
Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56enp4KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp6enkodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp6eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci56enp3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnp6d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp3eSh1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56end6KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp6d3codWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3Iuend4eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci56d3h5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3
eHk9KHVjaGFyNCB2LCB1Y2hhcjQgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56Owor
ICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3Iuend4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56d3h3KHVj
aGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3eXgodWNoYXI0IHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuend5eD0odWNoYXI0IHYsIHVjaGFyNCBjKSB7
CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0
LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56d3l5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3eXoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3Iuend5dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci56d3p4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3enko
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuend6eih1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56d3p3KHVjaGFyNCB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnp3d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3Iuend3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci56d3d6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3d3codWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3h4eCh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eHh5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnd4eHoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3Iud3h4dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53
eHl4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd4eXkodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3h5eih1Y2hhcjQgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eHl6PSh1Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9
IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd4eXcodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3h6eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci53eHp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnd4enk9KHVjaGFyNCB2LCB1Y2hhcjQgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56
OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3Iud3h6eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eHp3
KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd4d3godWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3h3eSh1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci53eHd6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnd4d3codWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3Iud3l4eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eXh5KHVj
aGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5eHoodWNoYXI0IHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3l4ej0odWNoYXI0IHYsIHVjaGFyNCBjKSB7
CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0
LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eXh3KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5eXgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3Iud3l5eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci53eXl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5eXco
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3l6eCh1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eXp4PSh1Y2hhcjQgdiwgdWNoYXI0IGMp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1
bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5enkodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3l6eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci53eXp3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnd5d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3l3
eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eXd6KHVjaGFyNCB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5d3codWNoYXI0IHYpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p4eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci53enh5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnd6eHk9KHVjaGFyNCB2LCB1Y2hhcjQgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0g
Yy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3Iud3p4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53
enh3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd6eXgodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p5eD0odWNoYXI0IHYsIHVjaGFy
NCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAg
cmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53enl5KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd6eXoodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p5dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci53enp4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnd6enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p6eih1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53enp3KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd6d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3Iud3p3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci53end6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd6
d3codWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3d4eCh1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53d3h5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd3eHoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3Iud3d4dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci53d3l4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd3eXko
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3d5eih1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53d3l3KHVjaGFyNCB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnd3engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3Iud3d6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci53d3p6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd3encodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3d3eCh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53d3d5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnd3d3oodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3Iud3d3dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3Iu
eHgodXNob3J0MiB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3Bl
cmF0b3IueHkodXNob3J0MiB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDIgb3BlcmF0b3IueHk9KHVzaG9ydDIgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0MiByZXN1
bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnl4KHVzaG9ydDIgdikgeworICAgIHVz
aG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnl4PSh1c2hvcnQyIHYsIHVz
aG9ydDIgYykgeworICAgIHVzaG9ydDIgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsK
KyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVy
YXRvci55eSh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MiBvcGVyYXRvci54eCh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0MiBvcGVyYXRvci54eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0MyBvcGVyYXRvci54eT0odXNob3J0MyB2LCB1c2hvcnQyIGMpIHsKKyAgICB1
c2hvcnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBj
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IueHoodXNob3J0MyB2
KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHo9KHVz
aG9ydDMgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQyIG9wZXJhdG9yLnl4KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl4PSh1c2hvcnQzIHYsIHVzaG9ydDIgYykgeworICAgIHVz
aG9ydDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci55eSh1c2hvcnQzIHYp
IHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci55eih1c2hv
cnQzIHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55
ej0odXNob3J0MyB2LCB1c2hvcnQyIGMpIHsKKyAgICB1c2hvcnQzIHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDIgb3BlcmF0b3IuengodXNob3J0MyB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iueng9KHVzaG9ydDMgdiwgdXNob3J0MiBjKSB7Cisg
ICAgdXNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54
ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnp5KHVzaG9y
dDMgdikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnp5
PSh1c2hvcnQzIHYsIHVzaG9ydDIgYykgeworICAgIHVzaG9ydDMgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0MiBvcGVyYXRvci56eih1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0MiBvcGVyYXRvci54eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci54eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eT0odXNob3J0NCB2LCB1c2hv
cnQyIGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7Cisg
ICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0
b3IueHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueHo9KHVzaG9ydDQgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0NCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnh3KHVzaG9ydDQgdikgeworICAgIHVzaG9y
dDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3PSh1c2hvcnQ0IHYsIHVzaG9y
dDIgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAg
ICByZXN1bHQudyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRv
ci55eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci55eD0odXNob3J0NCB2LCB1c2hvcnQyIGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IueXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0
MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IueXoodXNob3J0NCB2KSB7CisgICAg
dXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXo9KHVzaG9ydDQgdiwg
dXNob3J0MiBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54
OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9w
ZXJhdG9yLnl3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnl3PSh1c2hvcnQ0IHYsIHVzaG9ydDIgYykgeworICAgIHVzaG9ydDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci56eCh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eD0odXNob3J0NCB2LCB1
c2hvcnQyIGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7
CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3Bl
cmF0b3IuenkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3Iuenk9KHVzaG9ydDQgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnp6KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnp3KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp3PSh1c2hvcnQ0
IHYsIHVzaG9ydDIgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9
IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MiBvcGVyYXRvci53eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci53eD0odXNob3J0NCB2LCB1c2hvcnQyIGMpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3Iud3kodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3k9KHVzaG9ydDQg
diwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0g
Yy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQy
IG9wZXJhdG9yLnd6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnd6PSh1c2hvcnQ0IHYsIHVzaG9ydDIgYykgeworICAgIHVzaG9ydDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci53dyh1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54eHgodXNob3J0MiB2
KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDMgb3BlcmF0b3IueHh5KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh5eCh1c2hvcnQyIHYp
IHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0MyBvcGVyYXRvci54eXkodXNob3J0MiB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueXh4KHVzaG9ydDIgdikg
eworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQzIG9wZXJhdG9yLnl4eSh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55eXgodXNob3J0MiB2KSB7
CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDMgb3BlcmF0b3IueXl5KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh4eCh1c2hvcnQzIHYpIHsK
KyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci54eHkodXNob3J0MyB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHh6KHVzaG9ydDMgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnh5eCh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54eXkodXNob3J0MyB2KSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMg
b3BlcmF0b3IueHl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh5ej0odXNob3J0MyB2LCB1c2hv
cnQzIGMpIHsKKyAgICB1c2hvcnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7Cisg
ICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHp4KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh6eSh1
c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0MyBvcGVyYXRvci54enk9KHVzaG9ydDMgdiwgdXNob3J0MyBjKSB7CisgICAg
dXNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0g
Yy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnh6eih1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55eHgodXNob3J0MyB2KSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMg
b3BlcmF0b3IueXh5KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl4eih1c2hvcnQzIHYpIHsKKyAg
ICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBv
cGVyYXRvci55eHo9KHVzaG9ydDMgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0MyByZXN1bHQg
PSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3Vs
dC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl5eCh1
c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0MyBvcGVyYXRvci55eXkodXNob3J0MyB2KSB7CisgICAgdXNob3J0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueXl6KHVz
aG9ydDMgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl6eCh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55eng9KHVz
aG9ydDMgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl6eSh1c2hvcnQzIHYpIHsKKyAg
ICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBv
cGVyYXRvci55enoodXNob3J0MyB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenh4KHVzaG9ydDMgdikgeworICAg
IHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9w
ZXJhdG9yLnp4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56eHk9KHVzaG9ydDMgdiwgdXNob3J0
MyBjKSB7CisgICAgdXNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAg
IHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnp4eih1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56eXgodXNo
b3J0MyB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDMgb3BlcmF0b3Iuenl4PSh1c2hvcnQzIHYsIHVzaG9ydDMgYykgeworICAgIHVz
aG9ydDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBv
cGVyYXRvci56eXkodXNob3J0MyB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenl6KHVzaG9ydDMgdikgeworICAg
IHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9w
ZXJhdG9yLnp6eCh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56enkodXNob3J0MyB2KSB7CisgICAg
dXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3Bl
cmF0b3Iuenp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh4eCh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci54eHkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHh6KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnh4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54eXgodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0
b3IueHl5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh5eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci54eXo9KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh5dyh1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci54eXc9KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnh6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54enkodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueHp5PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54enoodXNob3J0
NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDMgb3BlcmF0b3IueHp3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6dz0odXNob3J0
NCB2LCB1c2hvcnQzIGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lngg
PSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHd4KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnh3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54d3k9KHVzaG9ydDQgdiwgdXNob3J0MyBj
KSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJl
c3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQzIG9wZXJhdG9yLnh3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54d3o9KHVzaG9y
dDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54
ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh3dyh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci55eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueXh5KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnl4eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHo9KHVzaG9ydDQgdiwgdXNob3J0MyBj
KSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQzIG9wZXJhdG9yLnl4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHc9KHVzaG9y
dDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55
ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl5eCh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci55eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueXl6KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnl5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55engodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueXp4PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55enkodXNob3J0
NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDMgb3BlcmF0b3IueXp6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl6dyh1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci55enc9KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55Owor
ICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnl3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55d3g9KHVzaG9ydDQgdiwgdXNob3J0MyBj
KSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQzIG9wZXJhdG9yLnl3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55d3oodXNob3J0
NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueXd6PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9y
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsK
KyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci55d3codXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenh4KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnp4eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHk9KHVzaG9ydDQgdiwgdXNob3J0MyBj
KSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJl
c3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQzIG9wZXJhdG9yLnp4eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56eHcodXNob3J0
NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iuenh3PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9y
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci56eXgodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl4PSh1c2hvcnQ0IHYsIHVzaG9ydDMg
YykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICBy
ZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0MyBvcGVyYXRvci56eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenl6KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQzIG9wZXJhdG9yLnp5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXc9KHVzaG9y
dDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnp6eCh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci56enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenp6KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnp6dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56d3godXNob3J0NCB2KSB7CisgICAgdXNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3Iuend4PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56d3kodXNob3J0
NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iuend5PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9y
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsK
KyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci56d3oodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuend3KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnd4eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci53eHkodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3Iud3h5PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci53eHoodXNob3J0
NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iud3h6PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9y
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci53eHcodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iud3l4KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnd5eD0odXNob3J0NCB2LCB1c2hvcnQzIGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0Lngg
PSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iud3l5KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQzIG9wZXJhdG9yLnd5eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eXo9KHVzaG9y
dDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnd5dyh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci53engodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p4PSh1c2hvcnQ0IHYsIHVzaG9ydDMg
YykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICBy
ZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0MyBvcGVyYXRvci53enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p5PSh1c2hv
cnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
dyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci53enoodXNob3J0NCB2KSB7CisgICAg
dXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3Bl
cmF0b3Iud3p3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnd3eCh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci53d3kodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iud3d6KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnd3dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eHh4KHVzaG9ydDIgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4eHkodXNob3J0MiB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueHh5eCh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci54eHl5KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnh5eHgodXNob3J0MiB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl4
eSh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXl4KHVzaG9y
dDIgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5eXkodXNob3J0MiB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh4eCh1c2hvcnQyIHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHh5KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnl4eXgodXNob3J0MiB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IueXh5eSh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci55eXh4KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5
eHkodXNob3J0MiB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl5eCh1c2hv
cnQyIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXl5KHVzaG9ydDIgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4eHgodXNob3J0MyB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci54eHh6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnh4eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3IueHh5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54
eHl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4engodXNo
b3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh6eSh1c2hvcnQzIHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eHp6KHVzaG9ydDMgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3IueHl4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci54eXh6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnh5eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
eHl5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXl6KHVz
aG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5engodXNob3J0MyB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl6eSh1c2hvcnQzIHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXp6KHVzaG9ydDMgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3IueHp4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci54enh6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnh6eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp5eSh1
c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54enl6KHVzaG9ydDMg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6engodXNob3J0MyB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci54enp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnl4eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueXh4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci55eHh6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4eXgo
dXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh5eSh1c2hvcnQz
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHl6KHVzaG9ydDMgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4engodXNob3J0MyB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci55eHp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnl5eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueXl4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXh6
KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5eXgodXNob3J0
MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl5eSh1c2hvcnQzIHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXl6KHVzaG9ydDMgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueXl6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci55eXp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnl6eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp4
eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55enh6KHVzaG9y
dDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6eXgodXNob3J0MyB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp5eSh1c2hvcnQzIHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci55enl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnl6engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IueXp6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci55enp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4
eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh4eSh1c2hv
cnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHh6KHVzaG9ydDMgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4eXgodXNob3J0MyB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci56eHl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnp4engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3Iuenh6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56
eHp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5eHgodXNo
b3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl4eSh1c2hvcnQzIHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXh6KHVzaG9ydDMgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3Iuenl5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci56eXl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnp5engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
enl6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXp6KHVz
aG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6eHgodXNob3J0MyB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp4eSh1c2hvcnQzIHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56enh6KHVzaG9ydDMgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3Iuenp5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci56enl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnp6engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp6eSh1
c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56enp6KHVzaG9ydDMg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4eHgodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh4eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci54eHh6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnh4eHcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueHh5eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci54eHl5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4eXoo
dXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh5dyh1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eHp4KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4enkodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh6eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci54eHp3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnh4d3godXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueHh3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eHd6
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4d3codXNob3J0
NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl4eCh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXh5KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5eHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueHl4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci54eXl4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnh5eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl5
eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXl3KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5engodXNob3J0NCB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl6eSh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXp6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnh5encodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IueHl6dz0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAg
cmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3IueHl3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci54eXd5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnh5d3oodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
eHl3ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBj
Lno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueHl3dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci54enh4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6eHko
dXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp4eih1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54enh3KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6eXgodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp5eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci54enl6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnh6eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueHp5dz0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0Lnkg
PSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IueHp6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci54enp5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6
enoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp6dyh1c2hv
cnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54end4KHVzaG9ydDQgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6d3kodXNob3J0NCB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp3eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0
LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp3eih1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54end3KHVzaG9ydDQgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3IueHd4eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci54d3h6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnh3eHcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHd5eCh1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54d3l5KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3eXoodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHd5ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVz
dWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHd5dyh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54d3p4KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueHd6eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7
CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHd6eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci54d3p3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnh3d3godXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3IueHd3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54
d3d6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3d3codXNo
b3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh4eCh1c2hvcnQ0IHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHh5KHVzaG9ydDQgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4eHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3IueXh4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci55eHl4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnl4eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
eXh5eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHl3KHVz
aG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4engodXNob3J0NCB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh6eSh1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHp6KHVzaG9ydDQgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4encodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3IueXh6dz0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci55eHd5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnl4d3oodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueXh3ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0Lncg
PSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IueXh3dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci55eXh4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5
eHkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl4eih1c2hv
cnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXh3KHVzaG9ydDQgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5eXgodXNob3J0NCB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl5eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci55eXl6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnl5eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3IueXl6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55
eXp5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5enoodXNo
b3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl6dyh1c2hvcnQ0IHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXd4KHVzaG9ydDQgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5d3kodXNob3J0NCB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3IueXl3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci55eXd3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnl6eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
eXp4eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55enh6KHVz
aG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6eHcodXNob3J0NCB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp4dz0odXNob3J0NCB2LCB1c2hv
cnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7Cisg
ICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LncgPSBj
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp5eCh1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55enl5KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6eXoodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci55enp4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnl6enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueXp6eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55enp3
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6d3godXNob3J0
NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp3eD0odXNob3J0NCB2LCB1
c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7
CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0Lngg
PSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp3eSh1c2hv
cnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55end6KHVzaG9ydDQgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6d3codXNob3J0NCB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd4eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci55d3h5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnl3eHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3IueXd4ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0
LnggPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3IueXd4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci55d3l4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnl3eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd5eih1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55d3l3KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl3engodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd6eD0odXNob3J0NCB2LCB1c2hvcnQ0IGMp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVz
dWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd6eSh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55d3p6KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl3encodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueXd3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci55d3d5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnl3d3oodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd3
dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHh4KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4eHkodXNob3J0NCB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh4eih1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHh3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnp4eXgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3Iuenh5eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci56eHl6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4
eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh5dz0odXNo
b3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAg
cmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
enh6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHp5KHVz
aG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4enoodXNob3J0NCB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh6dyh1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHd4KHVzaG9ydDQgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4d3kodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3Iuenh3eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci56eHd3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnp5eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3Iuenl4eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXh6
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5eHcodXNob3J0
NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl4dz0odXNob3J0NCB2LCB1
c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7
CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0Lncg
PSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl5eCh1c2hv
cnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXl5KHVzaG9ydDQgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5eXoodXNob3J0NCB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci56eXp4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnp5enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3Iuenl6eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56
eXp3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5d3godXNo
b3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl3eD0odXNob3J0NCB2
LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBj
Lng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0
LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl3eSh1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXd6KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5d3codXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp4eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci56enh5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnp6eHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3Iuenp4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci56enl4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6eXko
dXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp5eih1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56enl3KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6engodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp6eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci56enp6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnp6encodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3Iuenp3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56end5
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6d3oodXNob3J0
NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp3dyh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56d3h4KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp3eHkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iuend4eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7
CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuend4eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci56d3h3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnp3eXgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3Iuend5eD0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0
LnkgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3Iuend5eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci56d3l6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnp3eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuend6eCh1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56d3p5KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp3enoodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuend6dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci56d3d4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnp3d3kodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3Iuend3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci56d3d3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd4eHgo
dXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3h4eSh1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eHh6KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd4eHcodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3h5eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci53eHl5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnd4eXoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3Iud3h5ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0Lnkg
PSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3Iud3h5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci53eHp4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd4
enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3h6eT0odXNo
b3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAg
cmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
d3h6eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eHp3KHVz
aG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd4d3godXNob3J0NCB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3h3eSh1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eHd6KHVzaG9ydDQgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd4d3codXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3Iud3l4eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci53eXh5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnd5eHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3l4ej0o
dXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7Cisg
ICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3Iud3l4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eXl4
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd5eXkodXNob3J0
NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3l5eih1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eXl3KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd5engodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iud3l6eD0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7
CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3l6eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci53eXp6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnd5encodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3Iud3l3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53
eXd5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd5d3oodXNo
b3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3l3dyh1c2hvcnQ0IHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53enh4KHVzaG9ydDQgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd6eHkodXNob3J0NCB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3Iud3p4eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBj
Lnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p4eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci53enh3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnd6eXgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3Iud3p5eD0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVz
dWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iud3p5eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci53enl6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnd6eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p6
eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53enp5KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd6enoodXNob3J0NCB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p6dyh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci53end4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnd6d3kodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3Iud3p3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci53end3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd3
eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3d4eSh1c2hv
cnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53d3h6KHVzaG9ydDQgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd3eHcodXNob3J0NCB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3d5eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci53d3l5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnd3eXoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3Iud3d5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53
d3p4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd3enkodXNo
b3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3d6eih1c2hvcnQ0IHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53d3p3KHVzaG9ydDQgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd3d3godXNob3J0NCB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3Iud3d3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci53d3d6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnd3d3codXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnh4
KHVpbnQyIHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnh5
KHVpbnQyIHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnh5
PSh1aW50MiB2LCB1aW50MiBjKSB7CisgICAgdWludDIgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDIgb3BlcmF0b3IueXgodWludDIgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDIgb3BlcmF0b3IueXg9KHVpbnQyIHYsIHVpbnQyIGMpIHsKKyAgICB1aW50MiByZXN1bHQgPSB2
OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci55eSh1aW50MiB2KSB7CisgICAgdWludDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci54eCh1aW50MyB2KSB7CisgICAgdWludDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci54eSh1aW50MyB2KSB7CisgICAgdWludDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eT0odWludDMgdiwgdWludDIgYykgeworICAgIHVp
bnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnh6KHVpbnQzIHYpIHsKKyAg
ICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh6PSh1aW50MyB2LCB1aW50
MiBjKSB7CisgICAgdWludDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICBy
ZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IueXgo
dWludDMgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXg9
KHVpbnQzIHYsIHVpbnQyIGMpIHsKKyAgICB1aW50MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55
ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MiBvcGVyYXRvci55eSh1aW50MyB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MiBvcGVyYXRvci55eih1aW50MyB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MyBvcGVyYXRvci55ej0odWludDMgdiwgdWludDIgYykgeworICAgIHVpbnQzIHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnp4KHVpbnQzIHYpIHsKKyAgICB1aW50MiByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp4PSh1aW50MyB2LCB1aW50MiBjKSB7CisgICAgdWlu
dDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IuenkodWludDMgdikgeworICAg
IHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuenk9KHVpbnQzIHYsIHVpbnQy
IGMpIHsKKyAgICB1aW50MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJl
c3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci56eih1
aW50MyB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci54eCh1
aW50NCB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci54eSh1
aW50NCB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eT0o
dWludDQgdiwgdWludDIgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lngg
PSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQy
IG9wZXJhdG9yLnh6KHVpbnQ0IHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnh6PSh1aW50NCB2LCB1aW50MiBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDIgb3BlcmF0b3IueHcodWludDQgdikgeworICAgIHVpbnQyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueHc9KHVpbnQ0IHYsIHVpbnQyIGMpIHsKKyAgICB1aW50
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci55eCh1aW50NCB2KSB7CisgICAg
dWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eD0odWludDQgdiwgdWludDIg
YykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVz
dWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnl5KHVp
bnQ0IHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnl6KHVp
bnQ0IHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6PSh1
aW50NCB2LCB1aW50MiBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9
IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIg
b3BlcmF0b3IueXcodWludDQgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3IueXc9KHVpbnQ0IHYsIHVpbnQyIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50MiBvcGVyYXRvci56eCh1aW50NCB2KSB7CisgICAgdWludDIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eD0odWludDQgdiwgdWludDIgYykgeworICAgIHVpbnQ0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnp5KHVpbnQ0IHYpIHsKKyAgICB1
aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5PSh1aW50NCB2LCB1aW50MiBj
KSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1
bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IuenoodWlu
dDQgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IuencodWlu
dDQgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenc9KHVp
bnQ0IHYsIHVpbnQyIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0g
Yy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBv
cGVyYXRvci53eCh1aW50NCB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci53eD0odWludDQgdiwgdWludDIgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQyIG9wZXJhdG9yLnd5KHVpbnQ0IHYpIHsKKyAgICB1aW50MiByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5PSh1aW50NCB2LCB1aW50MiBjKSB7CisgICAgdWludDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3Iud3oodWludDQgdikgeworICAgIHVp
bnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3o9KHVpbnQ0IHYsIHVpbnQyIGMp
IHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3Vs
dC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci53dyh1aW50
NCB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eHgodWlu
dDIgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDMgb3BlcmF0b3IueHh5KHVpbnQyIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh5eCh1aW50MiB2KSB7CisgICAg
dWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRv
ci54eXkodWludDIgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDMgb3BlcmF0b3IueXh4KHVpbnQyIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl4eSh1aW50MiB2
KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MyBvcGVyYXRvci55eXgodWludDIgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXl5KHVpbnQyIHYpIHsKKyAgICB1aW50
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh4
eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50MyBvcGVyYXRvci54eHkodWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHh6KHVpbnQzIHYpIHsK
KyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9w
ZXJhdG9yLnh5eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eXkodWludDMgdikgeworICAgIHVpbnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHl6KHVp
bnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQzIG9wZXJhdG9yLnh5ej0odWludDMgdiwgdWludDMgYykgeworICAgIHVpbnQzIHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVz
dWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh6eCh1
aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50MyBvcGVyYXRvci54enkodWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHp5PSh1aW50MyB2LCB1aW50
MyBjKSB7CisgICAgdWludDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICBy
ZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDMgb3BlcmF0b3IueHp6KHVpbnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl4eCh1aW50MyB2KSB7Cisg
ICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVy
YXRvci55eHkodWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXh6KHVpbnQzIHYpIHsKKyAgICB1aW50MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl4ej0odWlu
dDMgdiwgdWludDMgYykgeworICAgIHVpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBj
Lng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl5eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55eXkodWlu
dDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDMgb3BlcmF0b3IueXl6KHVpbnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl6eCh1aW50MyB2KSB7CisgICAg
dWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRv
ci55eng9KHVpbnQzIHYsIHVpbnQzIGMpIHsKKyAgICB1aW50MyByZXN1bHQgPSB2OworICAgIHJl
c3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55enkodWludDMgdikgeworICAg
IHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0
b3IueXp6KHVpbnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp4eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56eHkodWludDMg
dikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDMgb3BlcmF0b3Iuenh5PSh1aW50MyB2LCB1aW50MyBjKSB7CisgICAgdWludDMgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQu
eSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuenh6KHVpbnQz
IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQzIG9wZXJhdG9yLnp5eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56eXg9KHVpbnQzIHYsIHVpbnQzIGMp
IHsKKyAgICB1aW50MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3Vs
dC55ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50MyBvcGVyYXRvci56eXkodWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuenl6KHVpbnQzIHYpIHsKKyAgICB1
aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9y
Lnp6eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56enkodWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuenp6KHVpbnQzIHYp
IHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQz
IG9wZXJhdG9yLnh4eCh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eHkodWludDQgdikgeworICAgIHVpbnQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHh6
KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQzIG9wZXJhdG9yLnh4dyh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eXgodWludDQgdikgewor
ICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3Bl
cmF0b3IueHl5KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh5eih1aW50NCB2KSB7CisgICAgdWludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXo9KHVp
bnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0g
Yy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eXcodWludDQgdikgeworICAgIHVpbnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl3PSh1
aW50NCB2LCB1aW50MyBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9
IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHp4KHVpbnQ0IHYpIHsKKyAgICB1aW50MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh6eSh1
aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci54enk9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJl
c3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54enoo
dWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDMgb3BlcmF0b3IueHp3KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6dz0odWludDQgdiwgdWlu
dDMgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAg
cmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQzIG9wZXJhdG9yLnh3eCh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54d3kodWludDQgdikgewor
ICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3IueHd5PSh1aW50NCB2LCB1aW50MyBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHd6KHVpbnQ0IHYpIHsK
KyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnh3ej0odWludDQgdiwgdWludDMgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh3dyh1aW50NCB2KSB7
CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBv
cGVyYXRvci55eHgodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXh5KHVpbnQ0IHYpIHsKKyAgICB1aW50MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl4eih1
aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci55eHo9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJl
c3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55eHco
dWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueXh3PSh1aW50NCB2LCB1aW50MyBjKSB7CisgICAgdWludDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICBy
ZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXl4
KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQzIG9wZXJhdG9yLnl5eSh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55eXoodWludDQgdikgewor
ICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3Bl
cmF0b3IueXl3KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl6eCh1aW50NCB2KSB7CisgICAgdWludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eng9KHVp
bnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0g
Yy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55enkodWludDQgdikgeworICAgIHVpbnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXp6KHVp
bnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQzIG9wZXJhdG9yLnl6dyh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55enc9KHVpbnQ0IHYsIHVpbnQz
IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50MyBvcGVyYXRvci55d3godWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXd4PSh1aW50NCB2LCB1aW50
MyBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICBy
ZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDMgb3BlcmF0b3IueXd5KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl3eih1aW50NCB2KSB7Cisg
ICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci55d3o9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55d3codWludDQgdikgewor
ICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3Bl
cmF0b3Iuenh4KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp4eSh1aW50NCB2KSB7CisgICAgdWludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHk9KHVp
bnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0g
Yy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56eHoodWludDQgdikgeworICAgIHVpbnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuenh3KHVp
bnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnp4dz0odWludDQgdiwgdWludDMgYykgeworICAgIHVpbnQ0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVz
dWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp5eCh1
aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci56eXg9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJl
c3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56eXko
dWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDMgb3BlcmF0b3Iuenl6KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp5dyh1aW50NCB2KSB7Cisg
ICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci56eXc9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56engodWludDQgdikgewor
ICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3Bl
cmF0b3Iuenp5KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp6eih1aW50NCB2KSB7CisgICAgdWludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56encodWlu
dDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDMgb3BlcmF0b3Iuend4KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3eD0odWludDQgdiwgdWludDMg
YykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVz
dWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQzIG9wZXJhdG9yLnp3eSh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3k9KHVpbnQ0IHYsIHVpbnQz
IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJl
c3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50MyBvcGVyYXRvci56d3oodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuend3KHVpbnQ0IHYpIHsKKyAg
ICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJh
dG9yLnd4eCh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci53eHkodWludDQgdikgeworICAgIHVpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h5PSh1aW50
NCB2LCB1aW50MyBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMu
eDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDMgb3BlcmF0b3Iud3h6KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4ej0odWlu
dDQgdiwgdWludDMgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBj
Lng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnd4dyh1aW50NCB2KSB7CisgICAgdWludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci53eXgodWlu
dDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3Iud3l4PSh1aW50NCB2LCB1aW50MyBjKSB7CisgICAgdWludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1
bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iud3l5KHVp
bnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQzIG9wZXJhdG9yLnd5eih1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eXo9KHVpbnQ0IHYsIHVpbnQz
IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJl
c3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50MyBvcGVyYXRvci53eXcodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iud3p4KHVpbnQ0IHYpIHsKKyAg
ICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnd6eD0odWludDQgdiwgdWludDMgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnd6eSh1aW50NCB2KSB7Cisg
ICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci53enk9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci53enoodWludDQgdikgewor
ICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3Bl
cmF0b3Iud3p3KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnd3eCh1aW50NCB2KSB7CisgICAgdWludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci53d3kodWlu
dDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDMgb3BlcmF0b3Iud3d6KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnd3dyh1aW50NCB2KSB7CisgICAg
dWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci54eHh4KHVpbnQyIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4eHkodWludDIg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh5eCh1aW50MiB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci54eHl5KHVpbnQyIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnh5eHgodWludDIgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl4eSh1
aW50MiB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXl4KHVpbnQyIHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5eXkodWludDIgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3IueXh4eCh1aW50MiB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55
eHh5KHVpbnQyIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4eXgodWludDIgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh5eSh1aW50MiB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci55eXh4KHVpbnQyIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnl5eHkodWludDIgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl5eCh1aW50
MiB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXl5KHVpbnQyIHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3IueHh4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHh6
KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4eXgodWludDMgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci54eHl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnh4engodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh6eSh1aW50MyB2
KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHp6KHVpbnQzIHYpIHsKKyAgICB1aW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnh5eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3IueHl4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXh6KHVp
bnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5eXgodWludDMgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueHl5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci54eXl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5
engodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl6eSh1aW50MyB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnh6eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3IueHp4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enh6KHVpbnQz
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6eXgodWludDMgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3IueHp5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci54enl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6engo
dWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp6eSh1aW50MyB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnl4eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eXh4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eHh6KHVpbnQzIHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4eXgodWludDMgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueXh5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci55eHl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4engodWlu
dDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh6eSh1aW50MyB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eHp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnl5eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl4
eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXh6KHVpbnQzIHYpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5eXgodWludDMgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IueXl5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci55eXl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5engodWludDMg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl6eSh1aW50MyB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci55eXp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnl6eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXp4eSh1
aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55enh6KHVpbnQzIHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6eXgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3IueXp5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55
enl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6engodWludDMgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXp6eSh1aW50MyB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci55enp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnp4eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenh4eSh1aW50
MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHh6KHVpbnQzIHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4eXgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3Iuenh5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHl6
KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4engodWludDMgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenh6eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci56eHp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnp5eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenl4eSh1aW50MyB2
KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXh6KHVpbnQzIHYpIHsKKyAgICB1aW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnp5eXgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3Iuenl5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXl6KHVp
bnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5engodWludDMgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3Iuenl6eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci56eXp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6
eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp4eSh1aW50MyB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56enh6KHVpbnQzIHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnp6eXgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3Iuenp5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56enl6KHVpbnQz
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6engodWludDMgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3Iuenp6eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci56enp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4eHgo
dWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh4eSh1aW50NCB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHh6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnh4eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eHh5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHl5KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4eXoodWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueHh5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci54eHp4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4enkodWlu
dDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh6eih1aW50NCB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHp3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnh4d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh3
eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHd6KHVpbnQ0IHYpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4d3codWludDQgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IueHl4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci54eXh5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5eHoodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl4dyh1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci54eXl4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnh5eXkodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl5eih1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXl3KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5engodWludDQgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3IueHl6eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54
eXp6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5encodWludDQgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl6dz0odWludDQgdiwgdWludDQgYykgewor
ICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0Lnkg
PSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5d3godWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueHl3eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci54eXd6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5d3o9KHVp
bnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0g
Yy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3Vs
dC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXd3KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6eHgodWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueHp4eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci54enh6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6
eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp5eCh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enl5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnh6eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3IueHp5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enl3PSh1aW50
NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMu
eDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQu
dyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp6eCh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enp5KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6enoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3IueHp6dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54end4
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6d3kodWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp3eT0odWludDQgdiwgdWludDQgYykgeworICAg
IHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBj
Lnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6d3oodWludDQgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IueHp3dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci54d3h4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh3eHkodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHd4eih1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci54d3h3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnh3eXgodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHd5eSh1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3l6KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh3eXo9KHVpbnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1
aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55
OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3l3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnh3engodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eHd6eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3p5PSh1aW50NCB2
LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsK
KyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9
IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHd6eih1aW50NCB2
KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3p3KHVpbnQ0IHYpIHsKKyAgICB1aW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnh3d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3IueHd3eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3d6KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh3d3codWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueXh4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci55eHh5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4
eHoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh4dyh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eHl4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnl4eXkodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3IueXh5eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eHl3KHVpbnQ0
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4engodWludDQgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3IueXh6eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci55eHp6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4enco
dWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh6dz0odWludDQgdiwgdWlu
dDQgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAg
cmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4d3godWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh3eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci55eHd6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnl4d3o9KHVpbnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56Owor
ICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci55eHd3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5eHgodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl4eSh1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci55eXh6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnl5eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl5eCh1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXl5KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3IueXl5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55
eXp4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5enkodWludDQgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl6eih1aW50NCB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci55eXp3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnl5d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl3eSh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXd6KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5d3codWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3IueXp4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55enh5
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6eHoodWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXp4dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci55enh3PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1
bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IueXp5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci55enl5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6eXoodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXp5dyh1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci55enp4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnl6enkodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXp6eih1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55enp3KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3IueXp3eD0odWludDQgdiwgdWludDQgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0
LncgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnl6d3kodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eXp3eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55end3KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl3eHgodWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueXd4eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci55d3h6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl3eHo9KHVp
bnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0g
Yy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3Vs
dC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55d3h3KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl3eXgodWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueXd5eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci55d3l6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl3
eXcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXd6eCh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55d3p4PSh1aW50NCB2LCB1aW50NCBjKSB7Cisg
ICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9
IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXd6eSh1aW50NCB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci55d3p6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnl3encodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXd3eCh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55d3d5KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl3d3oodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3IueXd3dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHh4
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4eHkodWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenh4eih1aW50NCB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci56eHh3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnp4eXgodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenh5eSh1aW50NCB2
KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHl6KHVpbnQ0IHYpIHsKKyAgICB1aW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnp4eXcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3Iuenh5dz0odWludDQgdiwgdWludDQgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBj
Lno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnp4engodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenh6eSh1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHp6KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4encodWludDQgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3Iuenh3eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56
eHd5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4d3k9KHVpbnQ0IHYs
IHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54Owor
ICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC55ID0g
Yy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHd6KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4d3codWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3Iuenl4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci56eXh5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5eHoodWlu
dDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenl4dyh1aW50NCB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXh3PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWlu
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsK
KyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3Iuenl5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci56eXl5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5
eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenl5dyh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXp4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnp5enkodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3Iuenl6eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXp3KHVpbnQ0
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5d3godWludDQgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3Iuenl3eD0odWludDQgdiwgdWludDQgYykgeworICAgIHVpbnQ0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7Cisg
ICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5d3kodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3Iuenl3eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXd3
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6eHgodWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp4eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci56enh6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnp6eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp5eCh1aW50NCB2
KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56enl5KHVpbnQ0IHYpIHsKKyAgICB1aW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnp6eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3Iuenp5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56enp4KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6enkodWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3Iuenp6eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci56enp3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6
d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp3eSh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56end6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnp6d3codWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3Iuend4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3h5KHVpbnQ0
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3eHk9KHVpbnQ0IHYsIHVpbnQ0IGMp
IHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3Vs
dC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3h6KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3Iuend5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3l4
PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICBy
ZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuend5
eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3l6KHVpbnQ0IHYpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3eXcodWludDQgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3Iuend6eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci56d3p5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3enoodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuend6dyh1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci56d3d4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnp3d3kodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuend3eih1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3d3KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4eHgodWludDQgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3Iud3h4eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53
eHh6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4eHcodWludDQgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h5eCh1aW50NCB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci53eHl5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnd4eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h5ej0odWlu
dDQgdiwgdWludDQgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBj
Lng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0
LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4eXcodWlu
dDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h6eCh1aW50NCB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eHp5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnd4enk9KHVpbnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56
ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci53eHp6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4
encodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h3eCh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eHd5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnd4d3oodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3Iud3h3dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eXh4KHVpbnQ0
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5eHkodWludDQgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3Iud3l4eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci53eXh6PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9
IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3Iud3l4dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eXl4
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5eXkodWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3l5eih1aW50NCB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci53eXl3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnd5engodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3l6eD0odWludDQg
diwgdWludDQgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7
CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0Lngg
PSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5enkodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3l6eih1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci53eXp3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnd5d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3l3eSh1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eXd6KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5d3codWludDQgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3Iud3p4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53
enh5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd6eHk9KHVpbnQ0IHYs
IHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54Owor
ICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC55ID0g
Yy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53enh6KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd6eHcodWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3Iud3p5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci53enl4PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMu
ejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3Iud3p5eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53enl6KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd6eXcodWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3Iud3p6eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci53enp5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd6
enoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3p6dyh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53end4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnd6d3kodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3Iud3p3eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53end3KHVpbnQ0
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd3eHgodWludDQgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3Iud3d4eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci53d3h6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd3eHco
dWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3d5eCh1aW50NCB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53d3l5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnd3eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
d3d5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53d3p4KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd3enkodWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3Iud3d6eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci53d3p3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd3d3godWlu
dDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3d3eSh1aW50NCB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53d3d6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnd3d3codWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IueHgo
Y2hhcjIgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IueHko
Y2hhcjIgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IueHk9
KGNoYXIyIHYsIGNoYXIyIGMpIHsKKyAgICBjaGFyMiByZXN1bHQgPSB2OworICAgIHJlc3VsdC54
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MiBvcGVyYXRvci55eChjaGFyMiB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MiBvcGVyYXRvci55eD0oY2hhcjIgdiwgY2hhcjIgYykgeworICAgIGNoYXIyIHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnl5KGNoYXIyIHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnh4KGNoYXIzIHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnh5KGNoYXIzIHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh5PShjaGFyMyB2LCBjaGFyMiBjKSB7CisgICAgY2hh
cjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IueHooY2hhcjMgdikgeworICAg
IGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHo9KGNoYXIzIHYsIGNoYXIy
IGMpIHsKKyAgICBjaGFyMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJl
c3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci55eChj
aGFyMyB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eD0o
Y2hhcjMgdiwgY2hhcjIgYykgeworICAgIGNoYXIzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnkg
PSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIy
IG9wZXJhdG9yLnl5KGNoYXIzIHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIy
IG9wZXJhdG9yLnl6KGNoYXIzIHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIz
IG9wZXJhdG9yLnl6PShjaGFyMyB2LCBjaGFyMiBjKSB7CisgICAgY2hhcjMgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjIgb3BlcmF0b3IuengoY2hhcjMgdikgeworICAgIGNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjMgb3BlcmF0b3Iueng9KGNoYXIzIHYsIGNoYXIyIGMpIHsKKyAgICBjaGFy
MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci56eShjaGFyMyB2KSB7CisgICAg
Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56eT0oY2hhcjMgdiwgY2hhcjIg
YykgeworICAgIGNoYXIzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVz
dWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnp6KGNo
YXIzIHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnh4KGNo
YXI0IHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnh5KGNo
YXI0IHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5PShj
aGFyNCB2LCBjaGFyMiBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9
IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIg
b3BlcmF0b3IueHooY2hhcjQgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3IueHo9KGNoYXI0IHYsIGNoYXIyIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyMiBvcGVyYXRvci54dyhjaGFyNCB2KSB7CisgICAgY2hhcjIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54dz0oY2hhcjQgdiwgY2hhcjIgYykgeworICAgIGNoYXI0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnl4KGNoYXI0IHYpIHsKKyAgICBj
aGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4PShjaGFyNCB2LCBjaGFyMiBj
KSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1
bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IueXkoY2hh
cjQgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IueXooY2hh
cjQgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXo9KGNo
YXI0IHYsIGNoYXIyIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0g
Yy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBv
cGVyYXRvci55dyhjaGFyNCB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci55dz0oY2hhcjQgdiwgY2hhcjIgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXIyIG9wZXJhdG9yLnp4KGNoYXI0IHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4PShjaGFyNCB2LCBjaGFyMiBjKSB7CisgICAgY2hhcjQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IuenkoY2hhcjQgdikgeworICAgIGNo
YXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenk9KGNoYXI0IHYsIGNoYXIyIGMp
IHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3Vs
dC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci56eihjaGFy
NCB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci56dyhjaGFy
NCB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56dz0oY2hh
cjQgdiwgY2hhcjIgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBj
Lng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9w
ZXJhdG9yLnd4KGNoYXI0IHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnd4PShjaGFyNCB2LCBjaGFyMiBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjIgb3BlcmF0b3Iud3koY2hhcjQgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iud3k9KGNoYXI0IHYsIGNoYXIyIGMpIHsKKyAgICBjaGFyNCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci53eihjaGFyNCB2KSB7CisgICAgY2hh
cjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53ej0oY2hhcjQgdiwgY2hhcjIgYykg
eworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0
LnogPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnd3KGNoYXI0
IHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh4eChjaGFy
MiB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMyBvcGVyYXRvci54eHkoY2hhcjIgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHl4KGNoYXIyIHYpIHsKKyAgICBj
aGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9y
Lnh5eShjaGFyMiB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eHgoY2hhcjIgdikgeworICAgIGNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXh5KGNoYXIyIHYp
IHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIz
IG9wZXJhdG9yLnl5eChjaGFyMiB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eXkoY2hhcjIgdikgeworICAgIGNoYXIz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHh4
KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXIzIG9wZXJhdG9yLnh4eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54eHooY2hhcjMgdikgewor
ICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3Bl
cmF0b3IueHl4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh5eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54eXooY2hh
cjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjMgb3BlcmF0b3IueHl6PShjaGFyMyB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjMgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1
bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHp4KGNo
YXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXIzIG9wZXJhdG9yLnh6eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54enk9KGNoYXIzIHYsIGNoYXIz
IGMpIHsKKyAgICBjaGFyMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJl
c3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMyBvcGVyYXRvci54enooY2hhcjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXh4KGNoYXIzIHYpIHsKKyAg
ICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJh
dG9yLnl4eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eHooY2hhcjMgdikgeworICAgIGNoYXIzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXh6PShjaGFy
MyB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMu
eDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXl4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl5eShjaGFy
MyB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMyBvcGVyYXRvci55eXooY2hhcjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXp4KGNoYXIzIHYpIHsKKyAgICBj
aGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9y
Lnl6eD0oY2hhcjMgdiwgY2hhcjMgYykgeworICAgIGNoYXIzIHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl6eShjaGFyMyB2KSB7CisgICAg
Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRv
ci55enooY2hhcjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjMgb3BlcmF0b3Iuenh4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp4eShjaGFyMyB2
KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MyBvcGVyYXRvci56eHk9KGNoYXIzIHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyMyByZXN1bHQgPSB2
OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56eHooY2hhcjMg
dikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjMgb3BlcmF0b3Iuenl4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp5eD0oY2hhcjMgdiwgY2hhcjMgYykg
eworICAgIGNoYXIzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0
LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXIzIG9wZXJhdG9yLnp5eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56eXooY2hhcjMgdikgeworICAgIGNo
YXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iu
enp4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXIzIG9wZXJhdG9yLnp6eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56enooY2hhcjMgdikg
eworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMg
b3BlcmF0b3IueHh4KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh4eShjaGFyNCB2KSB7CisgICAgY2hhcjMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54eHoo
Y2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjMgb3BlcmF0b3IueHh3KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh5eChjaGFyNCB2KSB7Cisg
ICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVy
YXRvci54eXkoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHl6KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5ej0oY2hh
cjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBj
Lng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh5dyhjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXc9KGNo
YXI0IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0g
Yy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54engoY2hhcjQgdikgeworICAgIGNoYXIzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHp5KGNo
YXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnh6eT0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVz
dWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh6eihj
aGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMyBvcGVyYXRvci54encoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp3PShjaGFyNCB2LCBjaGFy
MyBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICBy
ZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjMgb3BlcmF0b3IueHd4KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh3eShjaGFyNCB2KSB7Cisg
ICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci54d3k9KGNoYXI0IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54d3ooY2hhcjQgdikgewor
ICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3IueHd6PShjaGFyNCB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHd3KGNoYXI0IHYpIHsK
KyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9w
ZXJhdG9yLnl4eChjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eHkoY2hhcjQgdikgeworICAgIGNoYXIzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXh6KGNo
YXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnl4ej0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVz
dWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl4dyhj
aGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci55eHc9KGNoYXI0IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyNCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJl
c3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eXgo
Y2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjMgb3BlcmF0b3IueXl5KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl5eihjaGFyNCB2KSB7Cisg
ICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVy
YXRvci55eXcoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXp4KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6eD0oY2hh
cjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBj
Lng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl6eShjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55enooY2hh
cjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjMgb3BlcmF0b3IueXp3KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6dz0oY2hhcjQgdiwgY2hhcjMg
YykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVz
dWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXIzIG9wZXJhdG9yLnl3eChjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3g9KGNoYXI0IHYsIGNoYXIz
IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMyBvcGVyYXRvci55d3koY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXd6KGNoYXI0IHYpIHsKKyAg
ICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnl3ej0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl3dyhjaGFyNCB2KSB7Cisg
ICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVy
YXRvci56eHgoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iuenh5KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4eT0oY2hh
cjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBj
Lng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp4eihjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56eHcoY2hh
cjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3Iuenh3PShjaGFyNCB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1
bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iuenl4KGNo
YXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnp5eD0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVz
dWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp5eShj
aGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMyBvcGVyYXRvci56eXooY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iuenl3KGNoYXI0IHYpIHsKKyAg
ICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnp5dz0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp6eChjaGFyNCB2KSB7Cisg
ICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVy
YXRvci56enkoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iuenp6KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp6dyhjaGFy
NCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMyBvcGVyYXRvci56d3goY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuend4PShjaGFyNCB2LCBjaGFyMyBj
KSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1
bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjMgb3BlcmF0b3Iuend5KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3eT0oY2hhcjQgdiwgY2hhcjMg
YykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVz
dWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXIzIG9wZXJhdG9yLnp3eihjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56d3coY2hhcjQgdikgeworICAg
IGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0
b3Iud3h4KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnd4eShjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHk9KGNoYXI0
IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54
OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci53eHooY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3h6PShjaGFy
NCB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMu
eDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iud3h3KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnd5eChjaGFy
NCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci53eXg9KGNoYXI0IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyNCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3Vs
dC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci53eXkoY2hh
cjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjMgb3BlcmF0b3Iud3l6KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd5ej0oY2hhcjQgdiwgY2hhcjMg
YykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVz
dWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXIzIG9wZXJhdG9yLnd5dyhjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci53engoY2hhcjQgdikgeworICAg
IGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3Iud3p4PShjaGFyNCB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iud3p5KGNoYXI0IHYpIHsKKyAg
ICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnd6eT0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnd6eihjaGFyNCB2KSB7Cisg
ICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVy
YXRvci53encoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iud3d4KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnd3eShjaGFy
NCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMyBvcGVyYXRvci53d3ooY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iud3d3KGNoYXI0IHYpIHsKKyAgICBj
aGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnh4eHgoY2hhcjIgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh4eShjaGFyMiB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHl4KGNoYXIyIHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnh4eXkoY2hhcjIgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3IueHl4eChjaGFyMiB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXh5KGNo
YXIyIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5eXgoY2hhcjIgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl5eShjaGFyMiB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci55eHh4KGNoYXIyIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4
eHkoY2hhcjIgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh5eChjaGFyMiB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHl5KGNoYXIyIHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnl5eHgoY2hhcjIgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3IueXl4eShjaGFyMiB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXl4KGNoYXIy
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5eXkoY2hhcjIgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3IueHh4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci54eHh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4eHoo
Y2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh5eChjaGFyMyB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnh4eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
eHh6eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHp5KGNoYXIzIHYp
IHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4enooY2hhcjMgdikgeworICAgIGNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IueHl4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci54eXh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5eHooY2hh
cjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl5eChjaGFyMyB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnh5eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl6
eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXp5KGNoYXIzIHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5enooY2hhcjMgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3IueHp4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci54enh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6eHooY2hhcjMg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp5eChjaGFyMyB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci54enl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnh6eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp6eChj
aGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54enp5KGNoYXIzIHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueXh4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55
eHh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4eHooY2hhcjMgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh5eChjaGFyMyB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci55eHl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnl4eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh6eChjaGFy
MyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHp5KGNoYXIzIHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3IueXl4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXh5
KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5eHooY2hhcjMgdikgewor
ICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl5eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci55eXl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnl5eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl6eChjaGFyMyB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXp5KGNoYXIzIHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnl5enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3IueXp4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55enh5KGNo
YXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6eHooY2hhcjMgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp5eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci55enl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6
eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp6eChjaGFyMyB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55enp5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnl6enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3Iuenh4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eHh5KGNoYXIz
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4eHooY2hhcjMgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iuenh5eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci56eHl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4eXoo
Y2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh6eChjaGFyMyB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eHp5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnp4enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
enl4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXh5KGNoYXIzIHYp
IHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5eHooY2hhcjMgdikgeworICAgIGNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3Iuenl5eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci56eXl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5eXooY2hh
cjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenl6eChjaGFyMyB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXp5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnp5enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenp4
eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56enh5KGNoYXIzIHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6eHooY2hhcjMgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3Iuenp5eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci56enl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6eXooY2hhcjMg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenp6eChjaGFyMyB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci56enp5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnp6enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh4eChj
aGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHh5KGNoYXI0IHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueHh4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54
eHl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4eXkoY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh5eihjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci54eHl3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnh4engoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh6eShjaGFy
NCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHp6KGNoYXI0IHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4encoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3IueHh3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHd5
KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4d3ooY2hhcjQgdikgewor
ICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci54eXh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnh5eHkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl4eihjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXh3KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnh5eXgoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3IueHl5eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXl6KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5eXcoY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl6eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci54eXp5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5
enooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl6dyhjaGFyNCB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXp3PShjaGFyNCB2LCBjaGFyNCBjKSB7Cisg
ICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9
IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl3eChjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci54eXd5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnh5d3ooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl3ej0oY2hh
cjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBj
Lng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0
LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5d3coY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp4eChjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54enh5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnh6eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp4
dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54enl4KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6eXkoY2hhcjQgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3IueHp5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci54enl3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6eXc9KGNoYXI0
IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54
OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC53
ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54enp4KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6enkoY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3IueHp6eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci54enp3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6d3go
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp3eShjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54end5PShjaGFyNCB2LCBjaGFyNCBjKSB7CisgICAg
Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp3eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci54end3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnh3eHgoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHd4eShjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54d3h6KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnh3eHcoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3IueHd5eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54d3l5KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3eXooY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3IueHd5ej0oY2hhcjQgdiwgY2hhcjQgYykgeworICAgIGNo
YXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7
CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3eXcoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueHd6eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54
d3p5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3enk9KGNoYXI0IHYs
IGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54Owor
ICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC55ID0g
Yy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54d3p6KGNoYXI0IHYp
IHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3encoY2hhcjQgdikgeworICAgIGNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IueHd3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci54d3d5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3d3ooY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHd3dyhjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnl4eHkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh4
eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHh3KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4eXgoY2hhcjQgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3IueXh5eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci55eHl6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4eXcoY2hhcjQg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh6eChjaGFyNCB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci55eHp5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnl4enooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh6dyhj
aGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHp3PShjaGFyNCB2LCBjaGFy
NCBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICBy
ZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh3eChjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHd5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnl4d3ooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
eXh3ej0oY2hhcjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7Cisg
ICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnl4d3coY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl4eChjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXh5KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnl5eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3IueXl4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXl4KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5eXkoY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci55eXl3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5
engoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl6eShjaGFyNCB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXp6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnl5encoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3IueXl3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXd5KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5d3ooY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3IueXl3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci55enh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6eHko
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp4eihjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55enh3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnl6eHc9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3Vs
dC54ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci55enl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnl6eXkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp5eihjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55enl3KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnl6engoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3IueXp6eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55enp6KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6encoY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci55end4PShjaGFyNCB2LCBjaGFyNCBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQu
dyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueXp3eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55
end6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6d3coY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXd4eChjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci55d3h5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnl3eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXd4ej0oY2hh
cjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBj
Lng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0
LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl3eHcoY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXd5eChjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3l5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnl3eXooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXd5
dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3p4KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl3eng9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAg
ICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0g
Yy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3p5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnl3enooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3IueXd6dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3d4KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl3d3koY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3IueXd3eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci55d3d3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4eHgo
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh4eShjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eHh6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnp4eHcoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
enh5eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eHl5KGNoYXI0IHYp
IHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4eXooY2hhcjQgdikgeworICAgIGNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3Iuenh5dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci56eHl3PShjaGFyNCB2LCBjaGFyNCBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMu
ejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3Iuenh6eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eHp5KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4enooY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh6dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci56eHd4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4
d3koY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh3eT0oY2hhcjQgdiwg
Y2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7Cisg
ICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBj
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4d3ooY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci56eXh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnp5eHkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenl4eihjaGFy
NCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXh3KGNoYXI0IHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5eHc9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFy
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnp5eXkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenl5
eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXl3KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5engoY2hhcjQgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3Iuenl6eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci56eXp6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5encoY2hhcjQg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenl3eChjaGFyNCB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci56eXd4PShjaGFyNCB2LCBjaGFyNCBjKSB7CisgICAgY2hhcjQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAg
ICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iuenl3eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci56eXd6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5d3co
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenp4eChjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56enh5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnp6eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
enp4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56enl4KGNoYXI0IHYp
IHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6eXkoY2hhcjQgdikgeworICAgIGNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3Iuenp5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci56enl3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6engoY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenp6eShjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56enp6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnp6encoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenp3
eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56end5KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6d3ooY2hhcjQgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3Iuenp3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci56d3h4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3eHkoY2hhcjQg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuend4eT0oY2hhcjQgdiwgY2hhcjQgYykg
eworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0
LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3eHooY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iuend4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci56d3l4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3eXg9
KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56
ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJl
c3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56d3l5
KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3eXooY2hhcjQgdikgewor
ICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuend5dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci56d3p4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnp3enkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuend6eihjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56d3p3KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnp3d3goY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3Iuend3eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56d3d6KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3d3coY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3h4eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci53eHh5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd4
eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3h4dyhjaGFyNCB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnd4eXkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3Iud3h5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHl6PShjaGFy
NCB2LCBjaGFyNCBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMu
eDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQu
eiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3h5dyhjaGFy
NCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHp4KGNoYXI0IHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnd4enkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3Iud3h6eT0oY2hhcjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0Lnog
PSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnd4enooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3h6
dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHd4KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd4d3koY2hhcjQgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3Iud3h3eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci53eHd3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd5eHgoY2hhcjQg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3l4eShjaGFyNCB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci53eXh6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnd5eHo9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC54ID0g
Yy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci53eXh3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd5eXgo
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3l5eShjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eXl6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnd5eXcoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
d3l6eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eXp4PShjaGFyNCB2
LCBjaGFyNCBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsK
KyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueCA9
IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3l6eShjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eXp6KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnd5encoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3Iud3l3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eXd5KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd5d3ooY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3l3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci53enh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd6
eHkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3p4eT0oY2hhcjQgdiwg
Y2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7Cisg
ICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBj
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd6eHooY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3p4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci53enl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnd6eXg9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56
OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci53enl5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd6eXooY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3p5dyhjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53enp4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnd6enkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3p6
eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53enp3KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd6d3goY2hhcjQgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3Iud3p3eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci53end6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd6d3coY2hhcjQg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3d4eChjaGFyNCB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci53d3h5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnd3eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3d4dyhj
aGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53d3l4KGNoYXI0IHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd3eXkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3Iud3d5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53
d3l3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd3engoY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3d6eShjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci53d3p6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnd3encoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3d3eChjaGFy
NCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53d3d5KGNoYXI0IHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnd3d3ooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3Iud3d3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueHgo
c2hvcnQyIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iu
eHkoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0
b3IueHk9KHNob3J0MiB2LCBzaG9ydDIgYykgeworICAgIHNob3J0MiByZXN1bHQgPSB2OworICAg
IHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDIgb3BlcmF0b3IueXgoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXg9KHNob3J0MiB2LCBzaG9ydDIgYykgeworICAgIHNo
b3J0MiByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXkoc2hvcnQyIHYpIHsK
KyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueHgoc2hvcnQzIHYp
IHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueHkoc2hvcnQz
IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHk9KHNo
b3J0MyB2LCBzaG9ydDIgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDIgb3BlcmF0b3IueHooc2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDMgb3BlcmF0b3IueHo9KHNob3J0MyB2LCBzaG9ydDIgYykgeworICAgIHNob3J0MyByZXN1
bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXgoc2hvcnQzIHYpIHsKKyAgICBzaG9y
dDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXg9KHNob3J0MyB2LCBzaG9ydDIg
YykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXko
c2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iu
eXooc2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0
b3IueXo9KHNob3J0MyB2LCBzaG9ydDIgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAg
IHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDIgb3BlcmF0b3Iuengoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iueng9KHNob3J0MyB2LCBzaG9ydDIgYykgeworICAgIHNo
b3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iuenkoc2hvcnQzIHYpIHsK
KyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iuenk9KHNob3J0MyB2
LCBzaG9ydDIgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54
OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3Bl
cmF0b3Iuenooc2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIg
b3BlcmF0b3IueHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDIgb3BlcmF0b3IueHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueHk9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueHooc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHo9KHNob3J0NCB2LCBzaG9ydDIg
YykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJl
c3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueHco
c2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eHc9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDIgb3BlcmF0b3IueXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueXg9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXkoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXooc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXo9KHNob3J0NCB2
LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54
OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3Bl
cmF0b3IueXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3IueXc9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iuengoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iueng9KHNob3J0NCB2LCBzaG9ydDIgYykgewor
ICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54
ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iuenkoc2hvcnQ0
IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenk9KHNo
b3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDIgb3BlcmF0b3Iuenooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDIgb3BlcmF0b3Iuencoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3Iuenc9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iud3goc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3g9KHNob3J0NCB2LCBzaG9y
dDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAg
IHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iu
d3koc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3Iud3k9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDIgb3BlcmF0b3Iud3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3o9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNo
b3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iud3coc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHh4KHNob3J0MiB2
KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQzIG9wZXJhdG9yLnh4eShzaG9ydDIgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54eXgoc2hvcnQyIHYpIHsKKyAg
ICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3Bl
cmF0b3IueHl5KHNob3J0MiB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl4eChzaG9ydDIgdikgeworICAgIHNob3J0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55
eHkoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXl4KHNob3J0MiB2KSB7CisgICAgc2hvcnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl5eShzaG9y
dDIgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0MyBvcGVyYXRvci54eHgoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHh5KHNob3J0MyB2KSB7
CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQz
IG9wZXJhdG9yLnh4eihzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54eXgoc2hvcnQzIHYpIHsKKyAgICBz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0
b3IueHl5KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnh5eihzaG9ydDMgdikgeworICAgIHNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54eXo9
KHNob3J0MyB2LCBzaG9ydDMgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHp4KHNob3J0MyB2KSB7CisgICAg
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJh
dG9yLnh6eShzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54enk9KHNob3J0MyB2LCBzaG9ydDMgYykgewor
ICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56
ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDMgb3BlcmF0b3IueHp6KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl4eChzaG9ydDMgdikgeworICAg
IHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVy
YXRvci55eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXh6KHNob3J0MyB2KSB7CisgICAgc2hvcnQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl4
ej0oc2hvcnQzIHYsIHNob3J0MyBjKSB7CisgICAgc2hvcnQzIHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55eXgoc2hvcnQzIHYpIHsKKyAg
ICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3Bl
cmF0b3IueXl5KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl5eihzaG9ydDMgdikgeworICAgIHNob3J0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55
engoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXp4PShzaG9ydDMgdiwgc2hvcnQzIGMpIHsKKyAgICBz
aG9ydDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9w
ZXJhdG9yLnl6eShzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55enooc2hvcnQzIHYpIHsKKyAgICBzaG9y
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iu
enh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp4eShzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56eHk9KHNo
b3J0MyB2LCBzaG9ydDMgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56
ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iuenh6KHNob3J0MyB2KSB7CisgICAgc2hv
cnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9y
Lnp5eChzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56eXg9KHNob3J0MyB2LCBzaG9ydDMgYykgeworICAg
IHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0g
Yy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMg
b3BlcmF0b3Iuenl5KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp5eihzaG9ydDMgdikgeworICAgIHNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRv
ci56engoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iuenp5KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp6eihz
aG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0MyBvcGVyYXRvci54eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHh5KHNob3J0NCB2
KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQzIG9wZXJhdG9yLnh4eihzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54eHcoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3Bl
cmF0b3IueHl4KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnh5eShzaG9ydDQgdikgeworICAgIHNob3J0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54
eXooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl6PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBz
aG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9w
ZXJhdG9yLnh5dyhzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXc9KHNob3J0NCB2LCBzaG9ydDMgYykg
eworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3Vs
dC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDMgb3BlcmF0b3IueHp4KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnh6eShzaG9ydDQgdikgewor
ICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci54enk9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHp6KHNob3J0
NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQzIG9wZXJhdG9yLnh6dyhzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54enc9KHNob3J0NCB2LCBz
aG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54Owor
ICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHd4KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnh3eShzaG9y
dDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci54d3k9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAg
IHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iu
eHd6KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh3ej0oc2hvcnQ0IHYsIHNob3J0MyBjKSB7CisgICAg
c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBj
Lnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBv
cGVyYXRvci54d3coc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXh4KHNob3J0NCB2KSB7CisgICAgc2hv
cnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9y
Lnl4eShzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55eHooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh6PShz
aG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl4dyhzaG9ydDQgdikgeworICAgIHNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci55eHc9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXl4KHNob3J0NCB2KSB7
CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQz
IG9wZXJhdG9yLnl5eShzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55eXooc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0
b3IueXl3KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl6eChzaG9ydDQgdikgeworICAgIHNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eng9
KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXp5KHNob3J0NCB2KSB7CisgICAg
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJh
dG9yLnl6eihzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55encoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXp3
PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl3eChzaG9ydDQgdikgeworICAg
IHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci55d3g9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXd5KHNob3J0NCB2
KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQzIG9wZXJhdG9yLnl3eihzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55d3o9KHNob3J0NCB2LCBzaG9y
dDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAg
IHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDMgb3BlcmF0b3IueXd3KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp4eChzaG9ydDQg
dikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0MyBvcGVyYXRvci56eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh5PShzaG9ydDQgdiwgc2hv
cnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAg
ICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQzIG9wZXJhdG9yLnp4eihzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56eHcoc2hvcnQ0
IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3Iuenh3PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICBy
ZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp5
eChzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXg9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNo
b3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55
OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3Bl
cmF0b3Iuenl5KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp5eihzaG9ydDQgdikgeworICAgIHNob3J0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56
eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl3PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBz
aG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9w
ZXJhdG9yLnp6eChzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56enkoc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iu
enp6KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp6dyhzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56d3goc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3Iuend4PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAg
ICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9y
Lnp3eShzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3k9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAg
IHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0g
Yy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMg
b3BlcmF0b3Iuend6KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp3dyhzaG9ydDQgdikgeworICAgIHNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRv
ci53eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iud3h5KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4eT0o
c2hvcnQ0IHYsIHNob3J0MyBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci53eHooc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3Iud3h6PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnd4dyhzaG9ydDQgdikg
eworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
MyBvcGVyYXRvci53eXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3l4PShzaG9ydDQgdiwgc2hvcnQz
IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICBy
ZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQzIG9wZXJhdG9yLnd5eShzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci53eXooc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3Iud3l6PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1
bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnd5dyhz
aG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0MyBvcGVyYXRvci53engoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p4PShzaG9ydDQg
diwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMu
eDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnd6eShzaG9ydDQgdikgeworICAgIHNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53enk9
KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iud3p6KHNob3J0NCB2KSB7CisgICAg
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJh
dG9yLnd6dyhzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci53d3goc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iud3d5
KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQzIG9wZXJhdG9yLnd3eihzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci53d3coc2hvcnQ0
IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueHh4eChzaG9ydDIgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci54eHh5KHNob3J0MiB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh4eXgo
c2hvcnQyIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh5eShzaG9ydDIgdikg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXh4KHNob3J0MiB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5eHkoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3IueHl5eChzaG9ydDIgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci54eXl5KHNob3J0MiB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4eHgoc2hv
cnQyIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh4eShzaG9ydDIgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHl4KHNob3J0MiB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnl4eXkoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3IueXl4eChzaG9ydDIgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55
eXh5KHNob3J0MiB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5eXgoc2hvcnQy
IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl5eShzaG9ydDIgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnh4eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3IueHh4eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHl4
KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh4eXkoc2hvcnQzIHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh5eihzaG9ydDMgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnh4enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3IueHh6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXh4KHNo
b3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5eHkoc2hvcnQzIHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl4eihzaG9ydDMgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci54eXl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnh5eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eHl5eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXp4KHNob3J0
MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5enkoc2hvcnQzIHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl6eihzaG9ydDMgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci54enh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnh6eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp4
eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54enl4KHNob3J0MyB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6eXkoc2hvcnQzIHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp5eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci54enp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnh6enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp6eihz
aG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHh4KHNob3J0MyB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueXh4eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci55eHl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnl4eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh5eihzaG9y
dDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHp4KHNob3J0MyB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3IueXh6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci55eXh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5
eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl4eihzaG9ydDMg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eXl4KHNob3J0MyB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueXl5eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci55eXp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5enko
c2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl6eihzaG9ydDMgdikg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55enh4KHNob3J0MyB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3IueXp4eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci55enl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6eXkoc2hv
cnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXp5eihzaG9ydDMgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55enp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnl6enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3IueXp6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56
eHh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4eHkoc2hvcnQz
IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh4eihzaG9ydDMgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnp4eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3Iuenh5eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHp4
KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4enkoc2hvcnQzIHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh6eihzaG9ydDMgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnp5eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3Iuenl4eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXl4KHNo
b3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5eXkoc2hvcnQzIHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl5eihzaG9ydDMgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci56eXp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnp5enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
enl6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56enh4KHNob3J0
MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp6eHkoc2hvcnQzIHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp4eihzaG9ydDMgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci56enl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnp6eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp5
eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56enp4KHNob3J0MyB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp6enkoc2hvcnQzIHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci54eHh4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnh4eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh4eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHh3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh4eXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueHh5eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci54eHl6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnh4eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh6eChzaG9y
dDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHp5KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh4enooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3IueHh6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci54eHd4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh4
d3koc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh3eihzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHd3KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueHl4eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci54eXh6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5eHco
c2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl5eChzaG9ydDQgdikg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXl5KHNob3J0NCB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5eXooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3IueHl5dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci54eXp4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5enkoc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl6eihzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXp3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnh5enc9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAgIHNob3J0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl3eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci54eXd5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnh5d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl3ej0o
c2hvcnQ0IHYsIHNob3J0NCBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAg
cmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54
eXd3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6eHgoc2hvcnQ0
IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp4eShzaG9ydDQgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54enh6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnh6eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3IueHp5eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54enl5
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6eXooc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp5dyhzaG9ydDQgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci54enl3PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBz
aG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6engoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3IueHp6eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci54enp6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6
encoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp3eChzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54end5KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6d3k9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAg
IHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0g
Yy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp3eihzaG9ydDQgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci54end3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnh3eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eHd4eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54d3h6KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh3eHcoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHd5eChzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci54d3l5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnh3eXooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHd5
ej0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7Cisg
ICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci54d3l3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh3engoc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHd6eShzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54d3p5PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsK
KyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQu
dyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh3enooc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHd6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci54d3d4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnh3d3koc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHd3eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54d3d3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueXh4eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci55eHh6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnl4eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh5eChzaG9y
dDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHl5KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4eXooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3IueXh5dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci55eHp4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4
enkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh6eihzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHp3KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4enc9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAg
IHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0g
Yy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh3eChzaG9ydDQgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci55eHd5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnl4d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eXh3ej0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7
CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci55eHd3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5eHgo
c2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl4eShzaG9ydDQgdikg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eXh6KHNob3J0NCB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3IueXl5eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci55eXl5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5eXooc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl5dyhzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eXp4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnl5enkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3IueXl6eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55
eXp3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5d3goc2hvcnQ0
IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl3eShzaG9ydDQgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eXd6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnl5d3coc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3IueXp4eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55enh5
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6eHooc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXp4dyhzaG9ydDQgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci55enh3PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBz
aG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6eXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3IueXp5eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci55enl6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6
eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXp6eChzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55enp5KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6enooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueXp6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci55end4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6d3g9
KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAg
IHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eXp3eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55end6KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6d3coc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXd4eChzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci55d3h5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnl3eHooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXd4
ej0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7Cisg
ICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci55d3h3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl3eXgoc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXd5eShzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55d3l6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnl3eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3IueXd6eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55
d3p4PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsK
KyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnl3enkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXd6eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55d3p3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl3d3goc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueXd3eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci55d3d6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnl3d3coc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh4eChzaG9y
dDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHh5KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4eHooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3Iuenh4dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci56eHl4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4
eXkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh5eihzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHl3KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4eXc9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAg
IHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0g
Yy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh6eChzaG9ydDQgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci56eHp5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnp4enooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
enh6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHd4KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4d3koc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh3eT0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0Lngg
PSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHd6KHNob3J0NCB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4d3coc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3Iuenl4eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci56eXh5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5eHooc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl4dyhzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXh3PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsK
KyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQu
eSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5eXgoc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl5eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci56eXl6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnp5eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl6eChz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXp5KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5enooc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci56eXd4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnp5d3g9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56
OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3Iuenl3eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXd6
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5d3coc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp4eChzaG9ydDQgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci56enh5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnp6eHooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3Iuenp4dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56enl4KHNo
b3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp6eXkoc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp5eihzaG9ydDQgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci56enl3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnp6engoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
enp6eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56enp6KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp6encoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp3eChzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci56end5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnp6d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp3
dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3h4KHNob3J0NCB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp3eHkoc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuend4eT0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7CisgICAg
c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LncgPSBj
Lnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3h6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnp3eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3Iuend5eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56
d3l4PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsK
KyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnp3eXkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuend5eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3l3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp3engoc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3Iuend6eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci56d3p6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnp3encoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuend3eChzaG9y
dDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3d5KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp3d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3Iuend3dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci53eHh4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4
eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3h4eihzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eHh3KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4eXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3Iud3h5eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci53eHl6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4eXo9
KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAg
IHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
d3h5dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eHp4KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4enkoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3h6eT0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0Lngg
PSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eHp6KHNob3J0NCB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4encoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3Iud3h3eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci53eHd5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4d3ooc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3h3dyhzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eXh4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnd5eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3Iud3l4eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53
eXh6PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsK
KyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnd5eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3l5eChz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eXl5KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd5eXooc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3Iud3l5dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci53eXp4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnd5eng9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56
OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3Iud3l6eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eXp6
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd5encoc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3l3eChzaG9ydDQgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci53eXd5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnd5d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3Iud3l3dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53enh4KHNo
b3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd6eHkoc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p4eT0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7
CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0
LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53enh6KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd6eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3Iud3p5eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci53enl4PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9
IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnd6eXkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
d3p5eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53enl3KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd6engoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p6eShzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci53enp6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnd6encoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p3
eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53end5KHNob3J0NCB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd6d3ooc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p3dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci53d3h4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnd3eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3d4eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53d3h3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd3eXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3Iud3d5eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci53d3l6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnd3eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3d6eChzaG9y
dDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53d3p5KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd3enooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3Iud3d6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci53d3d4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd3
d3koc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3d3eihzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53d3d3KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50MiBvcGVyYXRvci54eChpbnQyIHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50MiBvcGVyYXRvci54eShpbnQyIHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50MiBvcGVyYXRvci54eT0oaW50MiB2LCBpbnQyIGMpIHsKKyAgICBpbnQyIHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IueXgoaW50MiB2KSB7CisgICAgaW50MiByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDIgb3BlcmF0b3IueXg9KGludDIgdiwgaW50MiBjKSB7CisgICAgaW50MiBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnl5KGludDIgdikgeworICAgIGludDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnh4KGludDMgdikgeworICAgIGludDIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnh5KGludDMgdikgeworICAgIGludDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh5PShpbnQzIHYsIGludDIgYykgeworICAgIGludDMg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci54eihpbnQzIHYpIHsKKyAgICBpbnQy
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54ej0oaW50MyB2LCBpbnQyIGMpIHsKKyAg
ICBpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBj
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IueXgoaW50MyB2KSB7Cisg
ICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXg9KGludDMgdiwgaW50MiBj
KSB7CisgICAgaW50MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3Vs
dC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnl5KGludDMg
dikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnl6KGludDMgdikg
eworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl6PShpbnQzIHYsIGlu
dDIgYykgeworICAgIGludDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICBy
ZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci56eChp
bnQzIHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci56eD0oaW50
MyB2LCBpbnQyIGMpIHsKKyAgICBpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7
CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0
b3IuenkoaW50MyB2KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iu
enk9KGludDMgdiwgaW50MiBjKSB7CisgICAgaW50MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQy
IG9wZXJhdG9yLnp6KGludDMgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9w
ZXJhdG9yLnh4KGludDQgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJh
dG9yLnh5KGludDQgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnh5PShpbnQ0IHYsIGludDIgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
MiBvcGVyYXRvci54eihpbnQ0IHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci54ej0oaW50NCB2LCBpbnQyIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDIgb3BlcmF0b3IueHcoaW50NCB2KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3IueHc9KGludDQgdiwgaW50MiBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnl4KGludDQgdikgeworICAgIGludDIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4PShpbnQ0IHYsIGludDIgYykgeworICAgIGludDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci55eShpbnQ0IHYpIHsKKyAgICBpbnQyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci55eihpbnQ0IHYpIHsKKyAgICBpbnQyIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci55ej0oaW50NCB2LCBpbnQyIGMpIHsKKyAgICBpbnQ0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IueXcoaW50NCB2KSB7CisgICAgaW50
MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXc9KGludDQgdiwgaW50MiBjKSB7Cisg
ICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0g
Yy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnp4KGludDQgdikgewor
ICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4PShpbnQ0IHYsIGludDIg
YykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1
bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci56eShpbnQ0
IHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eT0oaW50NCB2
LCBpbnQyIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7Cisg
ICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3Iu
enooaW50NCB2KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3Iuenco
aW50NCB2KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenc9KGlu
dDQgdiwgaW50MiBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54
OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJh
dG9yLnd4KGludDQgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnd4PShpbnQ0IHYsIGludDIgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
dyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
MiBvcGVyYXRvci53eShpbnQ0IHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci53eT0oaW50NCB2LCBpbnQyIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDIgb3BlcmF0b3Iud3ooaW50NCB2KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3Iud3o9KGludDQgdiwgaW50MiBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnd3KGludDQgdikgeworICAgIGludDIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh4eChpbnQyIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54eHkoaW50MiB2KSB7Cisg
ICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0
b3IueHl4KGludDIgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh5eShpbnQyIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci55eHgoaW50MiB2KSB7Cisg
ICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0
b3IueXh5KGludDIgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl5eChpbnQyIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci55eXkoaW50MiB2KSB7Cisg
ICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0
b3IueHh4KGludDMgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh4eShpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54eHooaW50MyB2KSB7Cisg
ICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0
b3IueHl4KGludDMgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh5eShpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54eXooaW50MyB2KSB7Cisg
ICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0
b3IueHl6PShpbnQzIHYsIGludDMgYykgeworICAgIGludDMgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54engoaW50MyB2KSB7CisgICAgaW50
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHp5
KGludDMgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQzIG9wZXJhdG9yLnh6eT0oaW50MyB2LCBpbnQzIGMpIHsKKyAgICBpbnQzIHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0
LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHp6KGludDMg
dikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQz
IG9wZXJhdG9yLnl4eChpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci55eHkoaW50MyB2KSB7CisgICAgaW50MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXh6KGludDMg
dikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQz
IG9wZXJhdG9yLnl4ej0oaW50MyB2LCBpbnQzIGMpIHsKKyAgICBpbnQzIHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXl4KGludDMgdikgewor
ICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJh
dG9yLnl5eShpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50MyBvcGVyYXRvci55eXooaW50MyB2KSB7CisgICAgaW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXp4KGludDMgdikgewor
ICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJh
dG9yLnl6eD0oaW50MyB2LCBpbnQzIGMpIHsKKyAgICBpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXp5KGludDMgdikgeworICAgIGlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl6
eihpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50MyBvcGVyYXRvci56eHgoaW50MyB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenh5KGludDMgdikgeworICAgIGlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp4
eT0oaW50MyB2LCBpbnQzIGMpIHsKKyAgICBpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenh6KGludDMgdikgeworICAgIGludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp5eChpbnQz
IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
MyBvcGVyYXRvci56eXg9KGludDMgdiwgaW50MyBjKSB7CisgICAgaW50MyByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC54ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp5eShpbnQzIHYpIHsK
KyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVy
YXRvci56eXooaW50MyB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenp4KGludDMgdikgeworICAgIGludDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp6eShpbnQzIHYpIHsK
KyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVy
YXRvci56enooaW50MyB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHh4KGludDQgdikgeworICAgIGludDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh4eShpbnQ0IHYpIHsK
KyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVy
YXRvci54eHooaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHh3KGludDQgdikgeworICAgIGludDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh5eChpbnQ0IHYpIHsK
KyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVy
YXRvci54eXkoaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHl6KGludDQgdikgeworICAgIGludDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5ej0oaW50NCB2LCBp
bnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAg
cmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDMgb3BlcmF0b3IueHl3KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5dz0oaW50NCB2LCBpbnQzIGMp
IHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0
LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDMgb3BlcmF0b3IueHp4KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh6eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enk9KGlu
dDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54
OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh6eihpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54encoaW50NCB2KSB7
CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3IueHp3PShpbnQ0IHYsIGludDMgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54d3goaW50NCB2KSB7CisgICAg
aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iu
eHd5KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnh3eT0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVz
dWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHd6KGlu
dDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnh3ej0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0Lnog
PSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHd3KGludDQgdikg
eworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9w
ZXJhdG9yLnl4eChpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50MyBvcGVyYXRvci55eHkoaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXh6KGludDQgdikg
eworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnl4ej0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXh3KGludDQgdikgeworICAg
IGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnl4dz0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXl4KGludDQgdikgeworICAgIGludDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl5eShp
bnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50MyBvcGVyYXRvci55eXooaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXl3KGludDQgdikgeworICAgIGludDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl6eChp
bnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci55eng9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl6eShpbnQ0IHYp
IHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBv
cGVyYXRvci55enooaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXp3KGludDQgdikgeworICAgIGludDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6dz0oaW50NCB2
LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7Cisg
ICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDMgb3BlcmF0b3IueXd4KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl3eD0oaW50NCB2LCBpbnQz
IGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVz
dWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDMgb3BlcmF0b3IueXd5KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl3eihpbnQ0IHYpIHsKKyAgICBpbnQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55d3o9
KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0g
Yy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl3dyhpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci56eHgoaW50NCB2
KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMg
b3BlcmF0b3Iuenh5KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4eT0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBp
bnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7
CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0
b3Iuenh6KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp4dyhpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHc9KGludDQgdiwgaW50
MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJl
c3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQzIG9wZXJhdG9yLnp5eChpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXg9KGludDQgdiwgaW50MyBjKSB7
CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55
ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQz
IG9wZXJhdG9yLnp5eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci56eXooaW50NCB2KSB7CisgICAgaW50MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenl3KGludDQg
dikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnp5dz0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenp4KGludDQgdikgewor
ICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJh
dG9yLnp6eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50MyBvcGVyYXRvci56enooaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenp3KGludDQgdikgewor
ICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJh
dG9yLnp3eChpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci56d3g9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAg
IHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp3
eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci56d3k9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3Vs
dC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp3eihpbnQ0
IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
MyBvcGVyYXRvci56d3coaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iud3h4KGludDQgdikgeworICAgIGludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnd4eShpbnQ0
IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci53eHk9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnd4eihpbnQ0IHYpIHsK
KyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci53eHo9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnd4dyhpbnQ0IHYpIHsKKyAgICBp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci53
eXgoaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3Iud3l4PShpbnQ0IHYsIGludDMgYykgeworICAgIGludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1
bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci53eXkoaW50
NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDMgb3BlcmF0b3Iud3l6KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5ej0oaW50NCB2LCBpbnQzIGMpIHsKKyAg
ICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBj
Lnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3Bl
cmF0b3Iud3l3KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnd6eChpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eng9KGludDQgdiwg
aW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAg
IHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQzIG9wZXJhdG9yLnd6eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enk9KGludDQgdiwgaW50MyBj
KSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3Vs
dC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQzIG9wZXJhdG9yLnd6eihpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci53encoaW50NCB2KSB7CisgICAgaW50MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iud3d4KGlu
dDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQzIG9wZXJhdG9yLnd3eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci53d3ooaW50NCB2KSB7CisgICAgaW50MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iud3d3KGlu
dDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnh4eHgoaW50MiB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh4
eShpbnQyIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHl4KGludDIgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4eXkoaW50MiB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3IueHl4eChpbnQyIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eXh5KGludDIg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eXgoaW50MiB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3IueHl5eShpbnQyIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55
eHh4KGludDIgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eHkoaW50MiB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh5eChpbnQyIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci55eHl5KGludDIgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5eHgoaW50
MiB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl4eShpbnQyIHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci55eXl4KGludDIgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnl5eXkoaW50MiB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh4eChpbnQzIHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnh4eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh5eChp
bnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHl5KGludDMgdikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnh4eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3IueHh6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHp5KGludDMgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4enooaW50MyB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3IueHl4eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eXh5
KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eHooaW50MyB2KSB7CisgICAg
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3IueHl5eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci54eXl5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eXooaW50MyB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHl6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci54eXp5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5
enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHp4eChpbnQzIHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci54enh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnh6eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHp5eChpbnQz
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enl5KGludDMgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnh6eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
eHp6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enp5KGludDMgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh6enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3IueXh4eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eHh5KGlu
dDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eHooaW50MyB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IueXh5eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci55eHl5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eXooaW50MyB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci55eHp5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4enoo
aW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl4eChpbnQzIHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci55eXh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnl5eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl5eChpbnQzIHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXl5KGludDMgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnl5eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl6
eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXp5KGludDMgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3IueXp4eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enh5KGludDMg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6eHooaW50MyB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3IueXp5eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55
enl5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6eXooaW50MyB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXp6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci55enp5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6enooaW50
MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh4eChpbnQzIHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci56eHh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnp4eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh5eChpbnQzIHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHl5KGludDMgdikgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnp4eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh6eChp
bnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHp5KGludDMgdikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnp4enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3Iuenl4eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXh5KGludDMgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3Iuenl5eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXl5
KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5eXooaW50MyB2KSB7CisgICAg
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3Iuenl6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci56eXp5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5enooaW50MyB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp4eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci56enh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp6
eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp5eChpbnQzIHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci56enl5KGludDMgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnp6eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp6eChpbnQz
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56enp5KGludDMgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnp6enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
eHh4eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHh5KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4eHooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3IueHh4dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHl4KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4eXkoaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IueHh5eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci54eHl3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4engoaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh6eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci54eHp6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4enco
aW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh3eChpbnQ0IHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci54eHd5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnh4d3ooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh3dyhpbnQ0IHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eXh4KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnh5eHkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHl4
eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eXh3KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eXgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3IueHl5eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eXl6KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eXcoaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3IueHl6eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54
eXp5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5enooaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHl6dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci54eXp3PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMu
ejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci54eXd4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5d3koaW50NCB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHl3eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci54eXd6PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQu
dyA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci54eXd3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh6eHgo
aW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHp4eShpbnQ0IHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci54enh6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnh6eHcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHp5eChpbnQ0IHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enl5KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnh6eXooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHp5
dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enl3PShpbnQ0IHYsIGludDQg
YykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1
bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enp4KGludDQgdikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnh6enkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3IueHp6eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enp3KGludDQgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh6d3goaW50NCB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3IueHp3eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54end5
PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9
IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1
bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54end6KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh6d3coaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IueHd4eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci54d3h5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh3eHooaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHd4dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci54d3l4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh3eXko
aW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHd5eihpbnQ0IHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci54d3l6PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICBy
ZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci54d3l3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnh3engoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHd6eShpbnQ0IHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci54d3p5PShpbnQ0IHYsIGludDQgYykgeworICAgIGlu
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsK
KyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci54d3p6KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnh3encoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHd3eChpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54d3d5KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnh3d3ooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
eHd3dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eHh4KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eHkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3IueXh4eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eHh3KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eXgoaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IueXh5eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci55eHl6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eXcoaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh6eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci55eHp5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4enoo
aW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh6dyhpbnQ0IHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci55eHp3PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICBy
ZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci55eHd4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnl4d3koaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh3eihpbnQ0IHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eHd6PShpbnQ0IHYsIGludDQgYykgeworICAgIGlu
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci55eHd3KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnl5eHgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl4eShpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXh6KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnl5eHcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
eXl5eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXl5KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5eXooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3IueXl5dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXp4KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5enkoaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IueXl6eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci55eXp3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5d3goaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl3eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci55eXd6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5d3co
aW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXp4eChpbnQ0IHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci55enh5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnl6eHooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXp4dyhpbnQ0IHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enh3PShpbnQ0IHYsIGludDQgYykgeworICAg
IGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enl4KGludDQgdikgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnl6eXkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXp5eihp
bnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enl3KGludDQgdikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnl6engoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3IueXp6eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enp6KGludDQgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6encoaW50NCB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3IueXp3eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55end4
PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9
IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1
bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55end5KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6d3ooaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IueXp3dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci55d3h4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl3eHkoaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXd4eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci55d3h6PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9
IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci55d3h3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl3eXgoaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXd5eShpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci55d3l6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnl3eXcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXd6eChpbnQ0IHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci55d3p4PShpbnQ0IHYsIGludDQgYykgeworICAgIGlu
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsK
KyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci55d3p5KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnl3enooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXd6dyhpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55d3d4KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnl3d3koaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
eXd3eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55d3d3KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4eHgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3Iuenh4eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHh6KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4eHcoaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3Iuenh5eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci56eHl5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4eXooaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh5dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci56eHl3PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9
IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci56eHp4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4enkoaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh6eihpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci56eHp3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnp4d3goaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh3eShpbnQ0IHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHd5PShpbnQ0IHYsIGludDQgYykgeworICAgIGlu
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci56eHd6KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnp4d3coaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenl4eChpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXh5KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnp5eHooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
enl4dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXh3PShpbnQ0IHYsIGlu
dDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICBy
ZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXl4KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5eXkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3Iuenl5eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXl3KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5engoaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3Iuenl6eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56
eXp6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5encoaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenl3eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci56eXd4PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQudyA9IGMu
ejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci56eXd5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5d3ooaW50NCB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenl3dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci56enh4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp6
eHkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp4eihpbnQ0IHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci56enh3KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnp6eXgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp5eShpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56enl6KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnp6eXcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
enp6eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56enp5KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp6enooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3Iuenp6dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56end4KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp6d3koaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3Iuenp3eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci56end3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp3eHgoaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuend4eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci56d3h5PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9
IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci56d3h6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp3eHcoaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuend5eChpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci56d3l4PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1
bHQueSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci56d3l5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp3
eXooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuend5dyhpbnQ0IHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci56d3p4KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnp3enkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuend6eihpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56d3p3KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnp3d3goaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
end3eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56d3d6KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp3d3coaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3Iud3h4eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eHh5KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd4eHooaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3Iud3h4dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci53eHl4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd4eXkoaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3h5eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci53eHl6PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9
IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci53eHl3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd4engoaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3h6eShpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci53eHp5PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1
bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci53eHp6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd4
encoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3h3eChpbnQ0IHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci53eHd5KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnd4d3ooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3h3dyhpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eXh4KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnd5eHkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
d3l4eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eXh6PShpbnQ0IHYsIGlu
dDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICBy
ZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eXh3KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5eXgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3Iud3l5eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eXl6KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5eXcoaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3Iud3l6eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53
eXp4PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
dyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICBy
ZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eXp5
KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5enooaW50NCB2KSB7CisgICAg
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3Iud3l6dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci53eXd4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5d3koaW50NCB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3l3eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci53eXd3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd6
eHgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3p4eShpbnQ0IHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci53enh5PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAg
ICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci53enh6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnd6eHcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3p5eChpbnQ0IHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enl4PShpbnQ0IHYsIGludDQgYykgeworICAg
IGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enl5KGludDQgdikgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnd6eXooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3p5dyhp
bnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enp4KGludDQgdikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnd6enkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3Iud3p6eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enp3KGludDQgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd6d3goaW50NCB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3Iud3p3eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53end6
KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd6d3coaW50NCB2KSB7CisgICAg
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3Iud3d4eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci53d3h5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd3eHooaW50NCB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3d4dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci53d3l4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd3
eXkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3d5eihpbnQ0IHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci53d3l3KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnd3engoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3d6eShpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53d3p6KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnd3encoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
d3d3eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53d3d5KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd3d3ooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3Iud3d3dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IueHgoaGFs
ZjIgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IueHkoaGFs
ZjIgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IueHk9KGhh
bGYyIHYsIGhhbGYyIGMpIHsKKyAgICBoYWxmMiByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0g
Yy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBv
cGVyYXRvci55eChoYWxmMiB2KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBv
cGVyYXRvci55eD0oaGFsZjIgdiwgaGFsZjIgYykgeworICAgIGhhbGYyIHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyIG9wZXJhdG9yLnl5KGhhbGYyIHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyIG9wZXJhdG9yLnh4KGhhbGYzIHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyIG9wZXJhdG9yLnh5KGhhbGYzIHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYzIG9wZXJhdG9yLnh5PShoYWxmMyB2LCBoYWxmMiBjKSB7CisgICAgaGFsZjMg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IueHooaGFsZjMgdikgeworICAgIGhh
bGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHo9KGhhbGYzIHYsIGhhbGYyIGMp
IHsKKyAgICBoYWxmMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3Vs
dC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci55eChoYWxm
MyB2KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55eD0oaGFs
ZjMgdiwgaGFsZjIgYykgeworICAgIGhhbGYzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBj
Lng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9w
ZXJhdG9yLnl5KGhhbGYzIHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9w
ZXJhdG9yLnl6KGhhbGYzIHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9w
ZXJhdG9yLnl6PShoYWxmMyB2LCBoYWxmMiBjKSB7CisgICAgaGFsZjMgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjIgb3BlcmF0b3IuengoaGFsZjMgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjMgb3BlcmF0b3Iueng9KGhhbGYzIHYsIGhhbGYyIGMpIHsKKyAgICBoYWxmMyBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci56eShoYWxmMyB2KSB7CisgICAgaGFs
ZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56eT0oaGFsZjMgdiwgaGFsZjIgYykg
eworICAgIGhhbGYzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0
LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnp6KGhhbGYz
IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnh4KGhhbGY0
IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnh5KGhhbGY0
IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5PShoYWxm
NCB2LCBoYWxmMiBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMu
eDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3Bl
cmF0b3IueHooaGFsZjQgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3IueHo9KGhhbGY0IHYsIGhhbGYyIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMiBvcGVyYXRvci54dyhoYWxmNCB2KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci54dz0oaGFsZjQgdiwgaGFsZjIgYykgeworICAgIGhhbGY0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnl4KGhhbGY0IHYpIHsKKyAgICBoYWxm
MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4PShoYWxmNCB2LCBoYWxmMiBjKSB7
CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQu
eCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IueXkoaGFsZjQg
dikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IueXooaGFsZjQg
dikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXo9KGhhbGY0
IHYsIGhhbGYyIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54
OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVy
YXRvci55dyhoYWxmNCB2KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci55dz0oaGFsZjQgdiwgaGFsZjIgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYyIG9wZXJhdG9yLnp4KGhhbGY0IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnp4PShoYWxmNCB2LCBoYWxmMiBjKSB7CisgICAgaGFsZjQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IuenkoaGFsZjQgdikgeworICAgIGhhbGYy
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenk9KGhhbGY0IHYsIGhhbGYyIGMpIHsK
KyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55
ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci56eihoYWxmNCB2
KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci56dyhoYWxmNCB2
KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56dz0oaGFsZjQg
diwgaGFsZjIgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7
CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJh
dG9yLnd4KGhhbGY0IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnd4PShoYWxmNCB2LCBoYWxmMiBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjIgb3BlcmF0b3Iud3koaGFsZjQgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iud3k9KGhhbGY0IHYsIGhhbGYyIGMpIHsKKyAgICBoYWxmNCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci53eihoYWxmNCB2KSB7CisgICAgaGFsZjIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53ej0oaGFsZjQgdiwgaGFsZjIgYykgewor
ICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0Lnog
PSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnd3KGhhbGY0IHYp
IHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh4eChoYWxmMiB2
KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
MyBvcGVyYXRvci54eHkoaGFsZjIgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHl4KGhhbGYyIHYpIHsKKyAgICBoYWxm
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh5
eShoYWxmMiB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMyBvcGVyYXRvci55eHgoaGFsZjIgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXh5KGhhbGYyIHYpIHsK
KyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9w
ZXJhdG9yLnl5eChoYWxmMiB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55eXkoaGFsZjIgdikgeworICAgIGhhbGYzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHh4KGhh
bGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYzIG9wZXJhdG9yLnh4eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54eHooaGFsZjMgdikgeworICAg
IGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0
b3IueHl4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh5eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54eXooaGFsZjMg
dikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjMgb3BlcmF0b3IueHl6PShoYWxmMyB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjMgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQu
eiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHp4KGhhbGYz
IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzIG9wZXJhdG9yLnh6eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54enk9KGhhbGYzIHYsIGhhbGYzIGMp
IHsKKyAgICBoYWxmMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3Vs
dC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMyBvcGVyYXRvci54enooaGFsZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXh4KGhhbGYzIHYpIHsKKyAgICBo
YWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9y
Lnl4eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55eHooaGFsZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXh6PShoYWxmMyB2
LCBoYWxmMyBjKSB7CisgICAgaGFsZjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsK
KyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgb3BlcmF0b3IueXl4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl5eShoYWxmMyB2
KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
MyBvcGVyYXRvci55eXooaGFsZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXp4KGhhbGYzIHYpIHsKKyAgICBoYWxm
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl6
eD0oaGFsZjMgdiwgaGFsZjMgYykgeworICAgIGhhbGYzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl6eShoYWxmMyB2KSB7CisgICAgaGFs
ZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55
enooaGFsZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjMgb3BlcmF0b3Iuenh4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp4eShoYWxmMyB2KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBv
cGVyYXRvci56eHk9KGhhbGYzIHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmMyByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56eHooaGFsZjMgdikg
eworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMg
b3BlcmF0b3Iuenl4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp5eD0oaGFsZjMgdiwgaGFsZjMgYykgewor
ICAgIGhhbGYzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0Lnkg
PSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
IG9wZXJhdG9yLnp5eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56eXooaGFsZjMgdikgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenp4
KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzIG9wZXJhdG9yLnp6eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56enooaGFsZjMgdikgewor
ICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3Bl
cmF0b3IueHh4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh4eShoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54eHooaGFs
ZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjMgb3BlcmF0b3IueHh3KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh5eChoYWxmNCB2KSB7CisgICAg
aGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRv
ci54eXkoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgb3BlcmF0b3IueHl6KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5ej0oaGFsZjQg
diwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7
CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh5dyhoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXc9KGhhbGY0
IHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54
OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54engoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHp5KGhhbGY0
IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnh6eT0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0
LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh6eihoYWxm
NCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMyBvcGVyYXRvci54encoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp3PShoYWxmNCB2LCBoYWxmMyBj
KSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1
bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjMgb3BlcmF0b3IueHd4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh3eShoYWxmNCB2KSB7CisgICAg
aGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci54d3k9KGhhbGY0IHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54d3ooaGFsZjQgdikgeworICAg
IGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3IueHd6PShoYWxmNCB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHd3KGhhbGY0IHYpIHsKKyAg
ICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJh
dG9yLnl4eChoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55eHkoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXh6KGhhbGY0
IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnl4ej0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0
LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl4dyhoYWxm
NCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci55eHc9KGhhbGY0IHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmNCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3Vs
dC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55eXgoaGFs
ZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjMgb3BlcmF0b3IueXl5KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl5eihoYWxmNCB2KSB7CisgICAg
aGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRv
ci55eXcoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgb3BlcmF0b3IueXp4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6eD0oaGFsZjQg
diwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7
CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl6eShoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55enooaGFsZjQg
dikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjMgb3BlcmF0b3IueXp3KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6dz0oaGFsZjQgdiwgaGFsZjMgYykg
eworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0
LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzIG9wZXJhdG9yLnl3eChoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55d3g9KGhhbGY0IHYsIGhhbGYzIGMp
IHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3Vs
dC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMyBvcGVyYXRvci55d3koaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXd6KGhhbGY0IHYpIHsKKyAgICBo
YWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnl3ej0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl3dyhoYWxmNCB2KSB7CisgICAg
aGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRv
ci56eHgoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenh5KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4eT0oaGFsZjQg
diwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7
CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp4eihoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56eHcoaGFsZjQg
dikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3Iuenh3PShoYWxmNCB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQu
dyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenl4KGhhbGY0
IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnp5eD0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0
LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp5eShoYWxm
NCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMyBvcGVyYXRvci56eXooaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenl3KGhhbGY0IHYpIHsKKyAgICBo
YWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnp5dz0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp6eChoYWxmNCB2KSB7CisgICAg
aGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRv
ci56enkoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenp6KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp6dyhoYWxmNCB2
KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
MyBvcGVyYXRvci56d3goaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuend4PShoYWxmNCB2LCBoYWxmMyBjKSB7
CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQu
dyA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjMgb3BlcmF0b3Iuend5KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3eT0oaGFsZjQgdiwgaGFsZjMgYykg
eworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0
LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzIG9wZXJhdG9yLnp3eihoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56d3coaGFsZjQgdikgeworICAgIGhh
bGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iu
d3h4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYzIG9wZXJhdG9yLnd4eShoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHk9KGhhbGY0IHYs
IGhhbGYzIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54Owor
ICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMyBvcGVyYXRvci53eHooaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3h6PShoYWxmNCB2
LCBoYWxmMyBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsK
KyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgb3BlcmF0b3Iud3h3KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnd5eChoYWxmNCB2
KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci53eXg9KGhhbGY0IHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC54
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci53eXkoaGFsZjQg
dikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjMgb3BlcmF0b3Iud3l6KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd5ej0oaGFsZjQgdiwgaGFsZjMgYykg
eworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0
LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzIG9wZXJhdG9yLnd5dyhoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci53engoaGFsZjQgdikgeworICAgIGhh
bGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
d3p4PShoYWxmNCB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iud3p5KGhhbGY0IHYpIHsKKyAgICBo
YWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnd6eT0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnd6eihoYWxmNCB2KSB7CisgICAg
aGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRv
ci53encoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgb3BlcmF0b3Iud3d4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnd3eShoYWxmNCB2
KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
MyBvcGVyYXRvci53d3ooaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iud3d3KGhhbGY0IHYpIHsKKyAgICBoYWxm
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4
eHgoaGFsZjIgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh4eShoYWxmMiB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHl4KGhhbGYyIHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnh4eXkoaGFsZjIgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3IueHl4eChoYWxmMiB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXh5KGhhbGYy
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5eXgoaGFsZjIgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3IueHl5eShoYWxmMiB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci55eHh4KGhhbGYyIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4eHko
aGFsZjIgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh5eChoYWxmMiB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHl5KGhhbGYyIHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnl5eHgoaGFsZjIgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
eXl4eShoYWxmMiB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXl4KGhhbGYyIHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5eXkoaGFsZjIgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3IueHh4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci54eHh5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4eHooaGFs
ZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh5eChoYWxmMyB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnh4eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh6
eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHp5KGhhbGYzIHYpIHsK
KyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4enooaGFsZjMgdikgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3IueHl4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci54eXh5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5eHooaGFsZjMg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl5eChoYWxmMyB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci54eXl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnh5eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl6eCho
YWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXp5KGhhbGYzIHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3IueHp4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54
enh5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6eHooaGFsZjMgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp5eChoYWxmMyB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci54enl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnh6eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp6eChoYWxm
MyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54enp5KGhhbGYzIHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueXh4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHh5
KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4eHooaGFsZjMgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci55eHl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnl4eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh6eChoYWxmMyB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHp5KGhhbGYzIHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnl4enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3IueXl4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXh5KGhh
bGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5eHooaGFsZjMgdikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci55eXl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5
eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl6eChoYWxmMyB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXp5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnl5enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3IueXp4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enh5KGhhbGYz
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6eHooaGFsZjMgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3IueXp5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci55enl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6eXoo
aGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXp6eChoYWxmMyB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enp5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnl6enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
enh4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHh5KGhhbGYzIHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4eHooaGFsZjMgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iuenh5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci56eHl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4eXooaGFs
ZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh6eChoYWxmMyB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHp5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnp4enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenl4
eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eXh5KGhhbGYzIHYpIHsK
KyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5eHooaGFsZjMgdikgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3Iuenl5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci56eXl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5eXooaGFsZjMg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenl6eChoYWxmMyB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci56eXp5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnp5enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenp4eCho
YWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56enh5KGhhbGYzIHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6eHooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3Iuenp5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56
enl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6eXooaGFsZjMgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenp6eChoYWxmMyB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci56enp5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnp6enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh4eChoYWxm
NCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHh5KGhhbGY0IHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueHh4dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHl4
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4eXkoaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci54eHl3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnh4engoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh6eShoYWxmNCB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHp6KGhhbGY0IHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnh4encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3IueHh3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHd5KGhh
bGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4d3ooaGFsZjQgdikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci54eXh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5
eHkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl4eihoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXh3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnh5eXgoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3IueHl5eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXl6KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5eXcoaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3IueHl6eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci54eXp5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5enoo
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl6dyhoYWxmNCB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXp3PShoYWxmNCB2LCBoYWxmNCBjKSB7CisgICAg
aGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci54eXd5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnh5d3ooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl3ej0oaGFsZjQg
diwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7
CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0Lnog
PSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5d3coaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp4eChoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci54enh5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnh6eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp4dyho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54enl4KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3IueHp5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54
enl3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6eXc9KGhhbGY0IHYs
IGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54Owor
ICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC53ID0g
Yy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54enp4KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6enkoaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3IueHp6eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci54enp3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6d3goaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp3eShoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54end5PShoYWxmNCB2LCBoYWxmNCBjKSB7CisgICAgaGFs
ZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp3eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci54end3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3
eHgoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHd4eShoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54d3h6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnh3eHcoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3IueHd5eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54d3l5KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3eXooaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3IueHd5ej0oaGFsZjQgdiwgaGFsZjQgYykgeworICAgIGhhbGY0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7Cisg
ICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3eXcoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueHd6eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54d3p5
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3enk9KGhhbGY0IHYsIGhh
bGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAg
IHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54d3p6KGhhbGY0IHYpIHsK
KyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3encoaGFsZjQgdikgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3IueHd3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci54d3d5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3d3ooaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHd3dyhoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci55eHh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnl4eHkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh4eiho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHh3KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4eXgoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3IueXh5eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55
eHl6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4eXcoaGFsZjQgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh6eChoYWxmNCB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci55eHp5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnl4enooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh6dyhoYWxm
NCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHp3PShoYWxmNCB2LCBoYWxmNCBj
KSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1
bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh3eChoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHd5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnl4d3ooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh3
ej0oaGFsZjQgdiwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAg
cmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4
d3coaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl4eChoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXh5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnl5eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3IueXl4dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXl4KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5eXkoaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3IueXl5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci55eXl3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5engo
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl6eShoYWxmNCB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXp6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnl5encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
eXl3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXd5KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5d3ooaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3IueXl3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci55enh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6eHkoaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXp4eihoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enh3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnl6eHc9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54
ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci55enl4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6
eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXp5eihoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enl3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnl6engoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3IueXp6eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enp6KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6encoaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3IueXp3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci55end4PShoYWxmNCB2LCBoYWxmNCBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9
IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueXp3eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55end6
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6d3coaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXd4eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci55d3h5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnl3eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXd4ej0oaGFsZjQg
diwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7
CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0Lnog
PSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl3eHcoaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXd5eChoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci55d3l5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnl3eXooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXd5dyho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55d3p4KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl3eng9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBo
YWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55
OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55d3p5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnl3enooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
eXd6dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55d3d4KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl3d3koaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3IueXd3eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci55d3d3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4eHgoaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh4eShoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHh6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnp4eHcoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh5
eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHl5KGhhbGY0IHYpIHsK
KyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4eXooaGFsZjQgdikgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3Iuenh5dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci56eHl3PShoYWxmNCB2LCBoYWxmNCBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsK
KyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3Iuenh6eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHp5KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4enooaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3Iuenh6dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci56eHd4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4d3ko
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh3eT0oaGFsZjQgdiwgaGFs
ZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAg
cmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4d3ooaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci56eXh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnp5eHkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenl4eihoYWxmNCB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eXh3KGhhbGY0IHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnp5eHc9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAg
IHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci56eXl4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnp5eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenl5eiho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eXl3KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5engoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3Iuenl6eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56
eXp6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5encoaGFsZjQgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenl3eChoYWxmNCB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci56eXd4PShoYWxmNCB2LCBoYWxmNCBjKSB7CisgICAgaGFsZjQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICBy
ZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iuenl3eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci56eXd6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5d3coaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenp4eChoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56enh5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnp6eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenp4
dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56enl4KGhhbGY0IHYpIHsK
KyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3Iuenp5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci56enl3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6engoaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenp6eShoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci56enp6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnp6encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenp3eCho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56end5KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6d3ooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3Iuenp3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56
d3h4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3eHkoaGFsZjQgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuend4eT0oaGFsZjQgdiwgaGFsZjQgYykgewor
ICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0Lncg
PSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3eHooaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iuend4dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci56d3l4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3eXg9KGhh
bGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0g
Yy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3Vs
dC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56d3l5KGhh
bGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3eXooaGFsZjQgdikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3Iuend5dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci56d3p4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3
enkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuend6eihoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56d3p3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnp3d3goaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3Iuend3eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56d3d6KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3d3coaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3Iud3h4eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci53eHh5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd4eHoo
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3h4dyhoYWxmNCB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHl4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnd4eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
d3h5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHl6PShoYWxmNCB2
LCBoYWxmNCBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsK
KyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueiA9
IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3h5dyhoYWxmNCB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHp4KGhhbGY0IHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnd4enkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3Iud3h6eT0oaGFsZjQgdiwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBj
Lno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnd4enooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3h6dyho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHd4KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd4d3koaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3Iud3h3eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53
eHd3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd5eHgoaGFsZjQgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3l4eShoYWxmNCB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci53eXh6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnd5eHo9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56
OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci53eXh3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd5eXgoaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3l5eShoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eXl6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnd5eXcoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3l6
eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eXp4PShoYWxmNCB2LCBo
YWxmNCBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAg
ICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueCA9IGMu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3l6eShoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eXp6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnd5encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3Iud3l3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eXd5KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd5d3ooaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3Iud3l3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci53enh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd6eHko
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3p4eT0oaGFsZjQgdiwgaGFs
ZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAg
cmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd6eHooaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3p4dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci53enl4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnd6eXg9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56Owor
ICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci53enl5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd6eXooaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3p5dyhoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci53enp4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnd6enkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3p6eiho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53enp3KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd6d3goaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3Iud3p3eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53
end6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd6d3coaGFsZjQgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3d4eChoYWxmNCB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci53d3h5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnd3eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3d4dyhoYWxm
NCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53d3l4KGhhbGY0IHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnd3eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3Iud3d5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53d3l3
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd3engoaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3d6eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci53d3p6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnd3encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3d3eChoYWxmNCB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53d3d5KGhhbGY0IHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnd3d3ooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3Iud3d3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueHgoZmxv
YXQyIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueHko
ZmxvYXQyIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iu
eHk9KGZsb2F0MiB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0MiByZXN1bHQgPSB2OworICAgIHJl
c3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDIgb3BlcmF0b3IueXgoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDIgb3BlcmF0b3IueXg9KGZsb2F0MiB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0
MiByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXkoZmxvYXQyIHYpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueHgoZmxvYXQzIHYpIHsK
KyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueHkoZmxvYXQzIHYp
IHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHk9KGZsb2F0
MyB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0g
Yy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIg
b3BlcmF0b3IueHooZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDMgb3BlcmF0b3IueHo9KGZsb2F0MyB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0MyByZXN1bHQg
PSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXgoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXg9KGZsb2F0MyB2LCBmbG9hdDIgYykg
eworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3Vs
dC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXkoZmxv
YXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXoo
ZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iu
eXo9KGZsb2F0MyB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJl
c3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDIgb3BlcmF0b3IuengoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDMgb3BlcmF0b3Iueng9KGZsb2F0MyB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0
MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IuenkoZmxvYXQzIHYpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iuenk9KGZsb2F0MyB2LCBm
bG9hdDIgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54Owor
ICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0
b3IuenooZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3Bl
cmF0b3IueHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIg
b3BlcmF0b3IueHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueHk9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueHooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHo9KGZsb2F0NCB2LCBmbG9hdDIgYykg
eworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3Vs
dC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueHcoZmxv
YXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHc9
KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDIgb3BlcmF0b3IueXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueXg9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXkoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXooZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXo9KGZsb2F0NCB2LCBm
bG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54Owor
ICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0
b3IueXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3IueXc9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IuengoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iueng9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAg
IGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0g
Yy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IuenkoZmxvYXQ0IHYp
IHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenk9KGZsb2F0
NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0g
Yy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIg
b3BlcmF0b3IuenooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDIgb3BlcmF0b3IuencoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3Iuenc9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iud3goZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3g9KGZsb2F0NCB2LCBmbG9hdDIg
YykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJl
c3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iud3ko
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
d3k9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDIgb3BlcmF0b3Iud3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iud3o9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iud3coZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHh4KGZsb2F0MiB2KSB7
CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
IG9wZXJhdG9yLnh4eShmbG9hdDIgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54eXgoZmxvYXQyIHYpIHsKKyAgICBm
bG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0
b3IueHl5KGZsb2F0MiB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl4eChmbG9hdDIgdikgeworICAgIGZsb2F0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55eHko
ZmxvYXQyIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDMgb3BlcmF0b3IueXl4KGZsb2F0MiB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl5eShmbG9hdDIg
dikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MyBvcGVyYXRvci54eHgoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHh5KGZsb2F0MyB2KSB7Cisg
ICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9w
ZXJhdG9yLnh4eihmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54eXgoZmxvYXQzIHYpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iu
eHl5KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnh5eihmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54eXo9KGZs
b2F0MyB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHp4KGZsb2F0MyB2KSB7CisgICAgZmxv
YXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9y
Lnh6eShmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54enk9KGZsb2F0MyB2LCBmbG9hdDMgYykgeworICAg
IGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0g
Yy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMg
b3BlcmF0b3IueHp6KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl4eChmbG9hdDMgdikgeworICAgIGZs
b2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRv
ci55eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXh6KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl4ej0o
ZmxvYXQzIHYsIGZsb2F0MyBjKSB7CisgICAgZmxvYXQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55eXgoZmxvYXQzIHYpIHsKKyAgICBm
bG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0
b3IueXl5KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl5eihmbG9hdDMgdikgeworICAgIGZsb2F0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55engo
ZmxvYXQzIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDMgb3BlcmF0b3IueXp4PShmbG9hdDMgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9h
dDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsK
KyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJh
dG9yLnl6eShmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55enooZmxvYXQzIHYpIHsKKyAgICBmbG9hdDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iuenh4
KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzIG9wZXJhdG9yLnp4eShmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56eHk9KGZsb2F0
MyB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0g
Yy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iuenh6KGZsb2F0MyB2KSB7CisgICAgZmxvYXQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp5
eChmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MyBvcGVyYXRvci56eXg9KGZsb2F0MyB2LCBmbG9hdDMgYykgeworICAgIGZs
b2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55
OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3Bl
cmF0b3Iuenl5KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp5eihmbG9hdDMgdikgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56
engoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iuenp5KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp6eihmbG9h
dDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MyBvcGVyYXRvci54eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHh5KGZsb2F0NCB2KSB7
CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
IG9wZXJhdG9yLnh4eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54eHcoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0
b3IueHl4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnh5eShmbG9hdDQgdikgeworICAgIGZsb2F0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54eXoo
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IueHl6PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9h
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsK
KyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJh
dG9yLnh5dyhmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXc9KGZsb2F0NCB2LCBmbG9hdDMgYykgewor
ICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55
ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDMgb3BlcmF0b3IueHp4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnh6eShmbG9hdDQgdikgeworICAg
IGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci54enk9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHp6KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQzIG9wZXJhdG9yLnh6dyhmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54enc9KGZsb2F0NCB2LCBmbG9h
dDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAg
IHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDMgb3BlcmF0b3IueHd4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnh3eShmbG9hdDQg
dikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci54d3k9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJl
c3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHd6
KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnh3ej0oZmxvYXQ0IHYsIGZsb2F0MyBjKSB7CisgICAgZmxv
YXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7
CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVy
YXRvci54d3coZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXh4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl4
eShmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MyBvcGVyYXRvci55eHooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh6PShmbG9h
dDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9
IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl4dyhmbG9hdDQgdikgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55
eHc9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXl4KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9w
ZXJhdG9yLnl5eShmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55eXooZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iu
eXl3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl6eChmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eng9KGZs
b2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55
ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXp5KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9y
Lnl6eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55encoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXp3PShm
bG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl3eChmbG9hdDQgdikgeworICAgIGZs
b2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci55d3g9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXd5KGZsb2F0NCB2KSB7
CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
IG9wZXJhdG9yLnl3eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55d3o9KGZsb2F0NCB2LCBmbG9hdDMg
YykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDMgb3BlcmF0b3IueXd3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp4eChmbG9hdDQgdikg
eworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
MyBvcGVyYXRvci56eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh5PShmbG9hdDQgdiwgZmxvYXQz
IGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICBy
ZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQzIG9wZXJhdG9yLnp4eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56eHcoZmxvYXQ0IHYp
IHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3Iuenh3PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1
bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp5eChm
bG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci56eXg9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0
b3Iuenl5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp5eihmbG9hdDQgdikgeworICAgIGZsb2F0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56eXco
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl3PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9h
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJh
dG9yLnp6eChmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56enkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iuenp6
KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzIG9wZXJhdG9yLnp6dyhmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56d3goZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3Iuend4PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICBy
ZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp3
eShmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3k9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZs
b2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55
OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3Bl
cmF0b3Iuend6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp3dyhmbG9hdDQgdikgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci53
eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iud3h5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4eT0oZmxv
YXQ0IHYsIGZsb2F0MyBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lncg
PSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci53eHooZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
d3h6PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnd4dyhmbG9hdDQgdikgewor
ICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBv
cGVyYXRvci53eXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3l4PShmbG9hdDQgdiwgZmxvYXQzIGMp
IHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1
bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzIG9wZXJhdG9yLnd5eShmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci53eXooZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3Iud3l6PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQu
eiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnd5dyhmbG9h
dDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MyBvcGVyYXRvci53engoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p4PShmbG9hdDQgdiwg
ZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsK
KyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnd6eShmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53enk9KGZs
b2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53
ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iud3p6KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9y
Lnd6dyhmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci53d3goZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iud3d5KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQzIG9wZXJhdG9yLnd3eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci53d3coZmxvYXQ0IHYp
IHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueHh4eChmbG9hdDIgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci54eHh5KGZsb2F0MiB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4eXgoZmxv
YXQyIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh5eShmbG9hdDIgdikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXh4KGZsb2F0MiB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnh5eHkoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3IueHl5eChmbG9hdDIgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54
eXl5KGZsb2F0MiB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4eHgoZmxvYXQy
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh4eShmbG9hdDIgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHl4KGZsb2F0MiB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnl4eXkoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3IueXl4eChmbG9hdDIgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXh5
KGZsb2F0MiB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5eXgoZmxvYXQyIHYp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl5eShmbG9hdDIgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnh4eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3IueHh4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHl4KGZs
b2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4eXkoZmxvYXQzIHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh5eihmbG9hdDMgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci54eHp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnh4enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
eHh6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXh4KGZsb2F0
MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5eHkoZmxvYXQzIHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci54eXl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnh5eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl5
eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXp4KGZsb2F0MyB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5enkoZmxvYXQzIHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci54enh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnh6eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp4eihm
bG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54enl4KGZsb2F0MyB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IueHp5eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci54enp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnh6enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp6eihmbG9h
dDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHh4KGZsb2F0MyB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueXh4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci55eHl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4
eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh5eihmbG9hdDMg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHp4KGZsb2F0MyB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IueXh6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci55eXh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5eHko
ZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl4eihmbG9hdDMgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXl4KGZsb2F0MyB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueXl5eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci55eXp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5enkoZmxv
YXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl6eihmbG9hdDMgdikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55enh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnl6eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3IueXp4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55
enl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6eXkoZmxvYXQz
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXp5eihmbG9hdDMgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55enp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnl6enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3IueXp6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHh4
KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4eHkoZmxvYXQzIHYp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh4eihmbG9hdDMgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnp4eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3Iuenh5eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHp4KGZs
b2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4enkoZmxvYXQzIHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh6eihmbG9hdDMgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci56eXh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnp5eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
enl4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXl4KGZsb2F0
MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5eXkoZmxvYXQzIHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl5eihmbG9hdDMgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci56eXp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnp5enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl6
eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enh4KGZsb2F0MyB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp6eHkoZmxvYXQzIHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci56enl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnp6eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp5eihm
bG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enp4KGZsb2F0MyB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp6enkoZmxvYXQzIHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci54eHh4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnh4eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh4eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHh3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4eXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueHh5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci54eHl6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4
eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh6eChmbG9hdDQg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHp5KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4enooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IueHh6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci54eHd4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4d3ko
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh3eihmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHd3KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueHl4eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci54eXh6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5eHcoZmxv
YXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl5eChmbG9hdDQgdikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXl5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnh5eXooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3IueHl5dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54
eXp4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5enkoZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl6eihmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXp3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnh5enc9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZsb2F0NCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAg
IHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IueHl3eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci54eXd5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnh5d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl3ej0oZmxv
YXQ0IHYsIGZsb2F0NCBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lngg
PSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVz
dWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXd3
KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6eHgoZmxvYXQ0IHYp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp4eShmbG9hdDQgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci54enh6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnh6eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3IueHp5eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54enl5KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6eXooZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp5dyhmbG9hdDQgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci54enl3PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9h
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsK
KyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6engoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IueHp6eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci54enp6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6enco
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp3eChmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54end5KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6d3k9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZs
b2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55
OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp3eihmbG9hdDQgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci54end3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnh3eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHd4
eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54d3h6KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh3eHcoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHd5eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci54d3l5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnh3eXooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHd5ej0o
ZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAg
cmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54
d3l3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh3engoZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHd6eShmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54d3p5PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9
IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh3enooZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IueHd6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci54d3d4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnh3d3koZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHd3eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54d3d3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueXh4eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci55eHh6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4
eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh5eChmbG9hdDQg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHl5KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4eXooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IueXh5dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci55eHp4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4enko
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh6eihmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHp3KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4enc9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZs
b2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55
OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh3eChmbG9hdDQgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci55eHd5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnl4d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh3
ej0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7Cisg
ICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci55eHd3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5eHgoZmxv
YXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl4eShmbG9hdDQgdikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXh6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnl5eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3IueXl5eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55
eXl5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5eXooZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl5dyhmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXp4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnl5enkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3IueXl6eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXp3
KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5d3goZmxvYXQ0IHYp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl3eShmbG9hdDQgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXd6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnl5d3coZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3IueXp4eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55enh5KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6eHooZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXp4dyhmbG9hdDQgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci55enh3PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9h
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsK
KyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6eXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IueXp5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci55enl6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6eXco
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXp6eChmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55enp5KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6enooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueXp6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci55end4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6d3g9KGZs
b2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55
ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJl
c3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXp3
eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55end6KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6d3coZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXd4eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci55d3h5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnl3eHooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXd4ej0o
ZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAg
cmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55
d3h3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl3eXgoZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXd5eShmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55d3l6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnl3eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3IueXd6eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55d3p4
PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAg
ICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnl3enkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXd6eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55d3p3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl3d3goZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueXd3eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci55d3d6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl3
d3coZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh4eChmbG9hdDQg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHh5KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4eHooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3Iuenh4dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci56eHl4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4eXko
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh5eihmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHl3KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4eXc9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZs
b2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55
OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh6eChmbG9hdDQgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci56eHp5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnp4enooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh6
dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHd4KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4d3koZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh3eT0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAg
ZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHd6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnp4d3coZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3Iuenl4eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56
eXh5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5eHooZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl4dyhmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXh3PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9
IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5eXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci56eXl6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnp5eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl6eChmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXp5KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5enooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3Iuenl6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci56eXd4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5
d3g9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56Owor
ICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3Iuenl3eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXd6KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5d3coZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp4eChmbG9hdDQgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci56enh5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnp6eHooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
enp4dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enl4KGZsb2F0
NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp6eXkoZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp5eihmbG9hdDQgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci56enl3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnp6engoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp6
eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enp6KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp6encoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp3eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci56end5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnp6d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp3dyhm
bG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3h4KGZsb2F0NCB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp3eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iuend4eT0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAgZmxv
YXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7
CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3h6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnp3eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3Iuend5eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3l4
PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAg
ICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnp3eXkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuend5eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3l3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp3engoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3Iuend6eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci56d3p6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp3
encoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuend3eChmbG9hdDQg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3d5KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp3d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3Iuend3dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci53eHh4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4eHko
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3h4eihmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eHh3KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4eXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3Iud3h5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci53eHl6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4eXo9KGZs
b2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53
ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJl
c3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3h5
dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eHp4KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4enkoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3h6eT0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAg
ZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eHp6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnd4encoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3Iud3h3eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53
eHd5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4d3ooZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3h3dyhmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eXh4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnd5eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3Iud3l4eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eXh6
PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAg
ICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnd5eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3l5eChmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eXl5KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd5eXooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3Iud3l5dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci53eXp4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd5
eng9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56Owor
ICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3Iud3l6eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eXp6KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd5encoZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3l3eChmbG9hdDQgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci53eXd5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnd5d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
d3l3dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53enh4KGZsb2F0
NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd6eHkoZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p4eT0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0Lnog
PSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53enh6KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnd6eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3Iud3p5eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci53enl4PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMu
ejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnd6eXkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p5
eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53enl3KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd6engoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p6eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci53enp6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnd6encoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p3eChm
bG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53end5KGZsb2F0NCB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd6d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p3dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci53d3h4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnd3eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3d4eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53d3h3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd3eXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3Iud3d5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci53d3l6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd3
eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3d6eChmbG9hdDQg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53d3p5KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd3enooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3Iud3d6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci53d3d4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd3d3ko
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3d3eihmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53d3d3KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorCituYXRpdmUgZmxvYXQgY29zKGZsb2F0KTsKK2hhbGYgY29zKGhhbGYgeCkgeworICAg
IHJldHVybiBoYWxmKGNvcyhmbG9hdCh4KSkpOworfQorbmF0aXZlIGZsb2F0IHNpbihmbG9hdCk7
CitoYWxmIHNpbihoYWxmIHgpIHsKKyAgICByZXR1cm4gaGFsZihzaW4oZmxvYXQoeCkpKTsKK30K
K25hdGl2ZSBmbG9hdCB0YW4oZmxvYXQpOworaGFsZiB0YW4oaGFsZiB4KSB7CisgICAgcmV0dXJu
IGhhbGYodGFuKGZsb2F0KHgpKSk7Cit9CituYXRpdmUgZmxvYXQgYWNvcyhmbG9hdCk7CitoYWxm
IGFjb3MoaGFsZiB4KSB7CisgICAgcmV0dXJuIGhhbGYoYWNvcyhmbG9hdCh4KSkpOworfQorbmF0
aXZlIGZsb2F0IGFzaW4oZmxvYXQpOworaGFsZiBhc2luKGhhbGYgeCkgeworICAgIHJldHVybiBo
YWxmKGFzaW4oZmxvYXQoeCkpKTsKK30KK25hdGl2ZSBmbG9hdCBhdGFuKGZsb2F0KTsKK2hhbGYg
YXRhbihoYWxmIHgpIHsKKyAgICByZXR1cm4gaGFsZihhdGFuKGZsb2F0KHgpKSk7Cit9CituYXRp
dmUgZmxvYXQgY29zaChmbG9hdCk7CitoYWxmIGNvc2goaGFsZiB4KSB7CisgICAgcmV0dXJuIGhh
bGYoY29zaChmbG9hdCh4KSkpOworfQorbmF0aXZlIGZsb2F0IHNpbmgoZmxvYXQpOworaGFsZiBz
aW5oKGhhbGYgeCkgeworICAgIHJldHVybiBoYWxmKHNpbmgoZmxvYXQoeCkpKTsKK30KK25hdGl2
ZSBmbG9hdCB0YW5oKGZsb2F0KTsKK2hhbGYgdGFuaChoYWxmIHgpIHsKKyAgICByZXR1cm4gaGFs
Zih0YW5oKGZsb2F0KHgpKSk7Cit9CituYXRpdmUgZmxvYXQgY2VpbChmbG9hdCk7CitoYWxmIGNl
aWwoaGFsZiB4KSB7CisgICAgcmV0dXJuIGhhbGYoY2VpbChmbG9hdCh4KSkpOworfQorbmF0aXZl
IGZsb2F0IGV4cChmbG9hdCk7CitoYWxmIGV4cChoYWxmIHgpIHsKKyAgICByZXR1cm4gaGFsZihl
eHAoZmxvYXQoeCkpKTsKK30KK25hdGl2ZSBmbG9hdCBmbG9vcihmbG9hdCk7CitoYWxmIGZsb29y
KGhhbGYgeCkgeworICAgIHJldHVybiBoYWxmKGZsb29yKGZsb2F0KHgpKSk7Cit9CituYXRpdmUg
ZmxvYXQgbG9nKGZsb2F0KTsKK2hhbGYgbG9nKGhhbGYgeCkgeworICAgIHJldHVybiBoYWxmKGxv
ZyhmbG9hdCh4KSkpOworfQorbmF0aXZlIGZsb2F0IHJvdW5kKGZsb2F0KTsKK2hhbGYgcm91bmQo
aGFsZiB4KSB7CisgICAgcmV0dXJuIGhhbGYocm91bmQoZmxvYXQoeCkpKTsKK30KK25hdGl2ZSBm
bG9hdCB0cnVuYyhmbG9hdCk7CitoYWxmIHRydW5jKGhhbGYgeCkgeworICAgIHJldHVybiBoYWxm
KHRydW5jKGZsb2F0KHgpKSk7Cit9CituYXRpdmUgZmxvYXQgZGR4KGZsb2F0KTsKK2hhbGYgZGR4
KGhhbGYgeCkgeworICAgIHJldHVybiBoYWxmKGRkeChmbG9hdCh4KSkpOworfQorbmF0aXZlIGZs
b2F0IGRkeShmbG9hdCk7CitoYWxmIGRkeShoYWxmIHgpIHsKKyAgICByZXR1cm4gaGFsZihkZHko
ZmxvYXQoeCkpKTsKK30KK2hhbGYgc3FydChoYWxmIHgpIHsKKyAgICByZXR1cm4gcG93KHgsIDAu
NSk7Cit9CitoYWxmIGxvZzIoaGFsZiB4KSB7CisgICAgcmV0dXJuIGxvZyh4KSAvIGxvZygyKTsK
K30KK2hhbGYgbG9nMTAoaGFsZiB4KSB7CisgICAgcmV0dXJuIGxvZyh4KSAvIGxvZygxMCk7Cit9
CitoYWxmIGZyYWMoaGFsZiB4KSB7CisgICAgcmV0dXJuIHggLSBmbG9vcih4KTsKK30KK2hhbGYg
ZXhwMihoYWxmIHgpIHsKKyAgICByZXR1cm4gZXhwKHggKiBsb2coMikpOworfQoraGFsZiBkZWdy
ZWVzKGhhbGYgeCkgeworICAgIHJldHVybiB4ICogMTgwIC8gMy4xNDE1OTsKK30KK2hhbGYgcmFk
aWFucyhoYWxmIHgpIHsKKyAgICByZXR1cm4geCAqIDMuMTQxNTkgLyAxODA7Cit9CitoYWxmIHJj
cChoYWxmIHgpIHsKKyAgICByZXR1cm4gMSAvIHg7Cit9CitoYWxmIHJzcXJ0KGhhbGYgeCkgewor
ICAgIHJldHVybiAxIC8gc3FydCh4KTsKK30KK2hhbGYgc2F0dXJhdGUoaGFsZiB4KSB7CisgICAg
cmV0dXJuIGNsYW1wKHgsIDAsIDEpOworfQoraGFsZiBkZHhfY29hcnNlKGhhbGYgeCkgeworICAg
IHJldHVybiBkZHgoeCk7Cit9CitoYWxmIGRkeF9maW5lKGhhbGYgeCkgeworICAgIHJldHVybiBk
ZHgoeCk7Cit9CitoYWxmIGRkeV9jb2Fyc2UoaGFsZiB4KSB7CisgICAgcmV0dXJuIGRkeSh4KTsK
K30KK2hhbGYgZGR5X2ZpbmUoaGFsZiB4KSB7CisgICAgcmV0dXJuIGRkeSh4KTsKK30KK2hhbGYg
ZndpZHRoKGhhbGYgeCkgeworICAgIHJldHVybiBhYnMoZGR4KHgpKSArIGFicyhkZHkoeCkpOwor
fQoraGFsZjIgY29zKGhhbGYyIHgpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gY29zKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGNvcyh4WzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgY29zKGhhbGYzIHgpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gY29zKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGNvcyh4WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBjb3MoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IGNvcyhoYWxm
NCB4KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNvcyh4WzBdKTsKKyAg
ICByZXN1bHRbMV0gPSBjb3MoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gY29zKHhbMl0pOworICAg
IHJlc3VsdFszXSA9IGNvcyh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBj
b3MoaGFsZjJ4MiB4KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
Y29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvcyh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBjb3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY29zKHhbMV1bMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIGNvcyhoYWxmMngzIHgpIHsKKyAgICBo
YWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3MoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gY29zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNvcyh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
Y29zKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNvcyh4WzFdWzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjJ4NCBjb3MoaGFsZjJ4NCB4KSB7CisgICAgaGFsZjJ4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBjb3MoeFswXVsyXSk7CisgICAgcmVz
dWx0WzBdWzNdID0gY29zKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGNvcyh4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3MoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
Y29zKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGNvcyh4WzFdWzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjN4MiBjb3MoaGFsZjN4MiB4KSB7CisgICAgaGFsZjN4MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3MoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gY29zKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGNvcyh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBjb3MoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzeDMgY29zKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3MoeFswXVsx
XSk7CisgICAgcmVzdWx0WzBdWzJdID0gY29zKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9
IGNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3MoeFsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gY29zKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGNvcyh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0g
Y29zKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IGNvcyhoYWxmM3g0
IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3MoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gY29zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9
IGNvcyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBjb3MoeFswXVszXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvcyh4WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSBjb3MoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0g
Y29zKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGNvcyh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gY29zKHhbMl1bMl0p
OworICAgIHJlc3VsdFsyXVszXSA9IGNvcyh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjR4MiBjb3MoaGFsZjR4MiB4KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvcyh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
Y29zKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGNvcyh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gY29zKHhbM11bMF0p
OworICAgIHJlc3VsdFszXVsxXSA9IGNvcyh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjR4MyBjb3MoaGFsZjR4MyB4KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvcyh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBjb3MoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
Y29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvcyh4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBjb3MoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gY29zKHhbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IGNvcyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBj
b3MoeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gY29zKHhbM11bMF0pOworICAgIHJlc3Vs
dFszXVsxXSA9IGNvcyh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBjb3MoeFszXVsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgY29zKGhhbGY0eDQgeCkgeworICAgIGhh
bGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBjb3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY29zKHhbMF1bMl0p
OworICAgIHJlc3VsdFswXVszXSA9IGNvcyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBj
b3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY29zKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IGNvcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBjb3MoeFsxXVszXSk7
CisgICAgcmVzdWx0WzJdWzBdID0gY29zKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGNv
cyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjb3MoeFsyXVsyXSk7CisgICAgcmVzdWx0
WzJdWzNdID0gY29zKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGNvcyh4WzNdWzBdKTsK
KyAgICByZXN1bHRbM11bMV0gPSBjb3MoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gY29z
KHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGNvcyh4WzNdWzNdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjIgc2luKGhhbGYyIHgpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gc2luKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHNpbih4WzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjMgc2luKGhhbGYzIHgpIHsKKyAgICBoYWxmMyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gc2luKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHNpbih4WzFdKTsK
KyAgICByZXN1bHRbMl0gPSBzaW4oeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IHNpbihoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpbih4
WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaW4oeFsxXSk7CisgICAgcmVzdWx0WzJdID0gc2luKHhb
Ml0pOworICAgIHJlc3VsdFszXSA9IHNpbih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjJ4MiBzaW4oaGFsZjJ4MiB4KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbih4WzBdWzFdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBzaW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2lu
KHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIHNpbihoYWxmMngzIHgp
IHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW4oeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gc2luKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNp
bih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW4oeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNpbih4WzFdWzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBzaW4oaGFsZjJ4NCB4KSB7CisgICAgaGFs
ZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2luKHhbMF1bMF0pOworICAgIHJlc3Vs
dFswXVsxXSA9IHNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaW4oeFswXVsyXSk7
CisgICAgcmVzdWx0WzBdWzNdID0gc2luKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHNp
bih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW4oeFsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gc2luKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHNpbih4WzFdWzNdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBzaW4oaGFsZjN4MiB4KSB7CisgICAgaGFs
ZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2luKHhbMF1bMF0pOworICAgIHJlc3Vs
dFswXVsxXSA9IHNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW4oeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHNp
bih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaW4oeFsyXVsxXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYzeDMgc2luKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IHNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBz
aW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2luKHhbMF1bMl0pOworICAgIHJlc3Vs
dFsxXVswXSA9IHNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW4oeFsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gc2luKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IHNp
bih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaW4oeFsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gc2luKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IHNp
bihoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBz
aW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2luKHhbMF1bMV0pOworICAgIHJlc3Vs
dFswXVsyXSA9IHNpbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBzaW4oeFswXVszXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gc2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNp
bih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzaW4oeFsxXVsyXSk7CisgICAgcmVzdWx0
WzFdWzNdID0gc2luKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHNpbih4WzJdWzBdKTsK
KyAgICByZXN1bHRbMl1bMV0gPSBzaW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2lu
KHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHNpbih4WzJdWzNdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjR4MiBzaW4oaGFsZjR4MiB4KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNp
bih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW4oeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHNpbih4WzJdWzBdKTsK
KyAgICByZXN1bHRbMl1bMV0gPSBzaW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gc2lu
KHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IHNpbih4WzNdWzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjR4MyBzaW4oaGFsZjR4MyB4KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNp
bih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaW4oeFswXVsyXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gc2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBzaW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc2lu
KHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHNpbih4WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBzaW4oeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gc2luKHhbM11bMF0pOwor
ICAgIHJlc3VsdFszXVsxXSA9IHNpbih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBzaW4o
eFszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgc2luKGhhbGY0eDQgeCkg
eworICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbih4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2lu
KHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHNpbih4WzBdWzNdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBzaW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2luKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IHNpbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzaW4o
eFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc2luKHhbMl1bMF0pOworICAgIHJlc3VsdFsy
XVsxXSA9IHNpbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzaW4oeFsyXVsyXSk7Cisg
ICAgcmVzdWx0WzJdWzNdID0gc2luKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IHNpbih4
WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzaW4oeFszXVsxXSk7CisgICAgcmVzdWx0WzNd
WzJdID0gc2luKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IHNpbih4WzNdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgdGFuKGhhbGYyIHgpIHsKKyAgICBoYWxmMiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gdGFuKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHRhbih4WzFd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgdGFuKGhhbGYzIHgpIHsKKyAgICBoYWxm
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gdGFuKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHRh
bih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSB0YW4oeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IHRhbihoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IHRhbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSB0YW4oeFsxXSk7CisgICAgcmVzdWx0WzJd
ID0gdGFuKHhbMl0pOworICAgIHJlc3VsdFszXSA9IHRhbih4WzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjJ4MiB0YW4oaGFsZjJ4MiB4KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbih4
WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gdGFuKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIHRhbiho
YWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW4o
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdGFuKHhbMF1bMV0pOworICAgIHJlc3VsdFsw
XVsyXSA9IHRhbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW4oeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gdGFuKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHRhbih4
WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCB0YW4oaGFsZjJ4NCB4KSB7
CisgICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdGFuKHhbMF1bMF0pOwor
ICAgIHJlc3VsdFswXVsxXSA9IHRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0YW4o
eFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gdGFuKHhbMF1bM10pOworICAgIHJlc3VsdFsx
XVswXSA9IHRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW4oeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gdGFuKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHRhbih4
WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiB0YW4oaGFsZjN4MiB4KSB7
CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdGFuKHhbMF1bMF0pOwor
ICAgIHJlc3VsdFswXVsxXSA9IHRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW4o
eFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdGFuKHhbMV1bMV0pOworICAgIHJlc3VsdFsy
XVswXSA9IHRhbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW4oeFsyXVsxXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgdGFuKGhhbGYzeDMgeCkgeworICAgIGhhbGYz
eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gdGFuKHhbMF1bMl0pOwor
ICAgIHJlc3VsdFsxXVswXSA9IHRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW4o
eFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdGFuKHhbMV1bMl0pOworICAgIHJlc3VsdFsy
XVswXSA9IHRhbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW4oeFsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gdGFuKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmM3g0IHRhbihoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSB0YW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdGFuKHhbMF1bMV0pOwor
ICAgIHJlc3VsdFswXVsyXSA9IHRhbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSB0YW4o
eFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuKHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IHRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0YW4oeFsxXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzNdID0gdGFuKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHRhbih4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJd
WzJdID0gdGFuKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHRhbih4WzJdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiB0YW4oaGFsZjR4MiB4KSB7CisgICAgaGFsZjR4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IHRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW4oeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gdGFuKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHRhbih4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzNd
WzBdID0gdGFuKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IHRhbih4WzNdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyB0YW4oaGFsZjR4MyB4KSB7CisgICAgaGFsZjR4
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IHRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0YW4oeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gdGFuKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHRhbih4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0YW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzJd
WzBdID0gdGFuKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHRhbih4WzJdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMl0gPSB0YW4oeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gdGFuKHhb
M11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IHRhbih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11b
Ml0gPSB0YW4oeFszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgdGFuKGhh
bGY0eDQgeCkgeworICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gdGFuKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHRhbih4WzBdWzNdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSB0YW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdGFuKHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHRhbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1b
M10gPSB0YW4oeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gdGFuKHhbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IHRhbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSB0YW4oeFsy
XVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gdGFuKHhbMl1bM10pOworICAgIHJlc3VsdFszXVsw
XSA9IHRhbih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSB0YW4oeFszXVsxXSk7CisgICAg
cmVzdWx0WzNdWzJdID0gdGFuKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IHRhbih4WzNd
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgYWNvcyhoYWxmMiB4KSB7CisgICAg
aGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFjb3MoeFswXSk7CisgICAgcmVzdWx0WzFd
ID0gYWNvcyh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgYWNvcyhoYWxmMyB4
KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFjb3MoeFswXSk7CisgICAg
cmVzdWx0WzFdID0gYWNvcyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhY29zKHhbMl0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBhY29zKGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYWNvcyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhY29zKHhb
MV0pOworICAgIHJlc3VsdFsyXSA9IGFjb3MoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYWNvcyh4
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBhY29zKGhhbGYyeDIgeCkgewor
ICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFjb3MoeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gYWNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhY29z
KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFjb3MoeFsxXVsxXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyeDMgYWNvcyhoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGFjb3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYWNvcyh4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBhY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFjb3MoeFsx
XVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gYWNvcyh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjJ4NCBhY29zKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGFjb3MoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYWNv
cyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhY29zKHhbMF1bMl0pOworICAgIHJlc3Vs
dFswXVszXSA9IGFjb3MoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYWNvcyh4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBhY29zKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9
IGFjb3MoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gYWNvcyh4WzFdWzNdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBhY29zKGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFjb3MoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gYWNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhY29zKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGFjb3MoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gYWNv
cyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhY29zKHhbMl1bMV0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmM3gzIGFjb3MoaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYWNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBhY29zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFjb3MoeFswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gYWNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhY29zKHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFjb3MoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJd
WzBdID0gYWNvcyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhY29zKHhbMl1bMV0pOwor
ICAgIHJlc3VsdFsyXVsyXSA9IGFjb3MoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYzeDQgYWNvcyhoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFjb3MoeFswXVsx
XSk7CisgICAgcmVzdWx0WzBdWzJdID0gYWNvcyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10g
PSBhY29zKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGFjb3MoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gYWNvcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhY29zKHhb
MV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGFjb3MoeFsxXVszXSk7CisgICAgcmVzdWx0WzJd
WzBdID0gYWNvcyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhY29zKHhbMl1bMV0pOwor
ICAgIHJlc3VsdFsyXVsyXSA9IGFjb3MoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gYWNv
cyh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBhY29zKGhhbGY0eDIg
eCkgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFjb3MoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gYWNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBhY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFjb3MoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gYWNvcyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhY29zKHhb
Ml1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGFjb3MoeFszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gYWNvcyh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBhY29z
KGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFj
b3MoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYWNvcyh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBhY29zKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGFjb3MoeFsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gYWNvcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBhY29zKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGFjb3MoeFsyXVswXSk7CisgICAg
cmVzdWx0WzJdWzFdID0gYWNvcyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhY29zKHhb
Ml1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGFjb3MoeFszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gYWNvcyh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBhY29zKHhbM11bMl0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IGFjb3MoaGFsZjR4NCB4KSB7CisgICAgaGFs
ZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYWNvcyh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBhY29zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFjb3MoeFswXVsy
XSk7CisgICAgcmVzdWx0WzBdWzNdID0gYWNvcyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBhY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFjb3MoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzFdWzJdID0gYWNvcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhY29zKHhb
MV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGFjb3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gYWNvcyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhY29zKHhbMl1bMl0pOwor
ICAgIHJlc3VsdFsyXVszXSA9IGFjb3MoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gYWNv
cyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBhY29zKHhbM11bMV0pOworICAgIHJlc3Vs
dFszXVsyXSA9IGFjb3MoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gYWNvcyh4WzNdWzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgYXNpbihoYWxmMiB4KSB7CisgICAgaGFs
ZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFzaW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0g
YXNpbih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgYXNpbihoYWxmMyB4KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFzaW4oeFswXSk7CisgICAgcmVz
dWx0WzFdID0gYXNpbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhc2luKHhbMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBhc2luKGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYXNpbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhc2luKHhbMV0p
OworICAgIHJlc3VsdFsyXSA9IGFzaW4oeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYXNpbih4WzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBhc2luKGhhbGYyeDIgeCkgeworICAg
IGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFzaW4oeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gYXNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhc2luKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFzaW4oeFsxXVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYyeDMgYXNpbihoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBhc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFz
aW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYXNpbih4WzBdWzJdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBhc2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFzaW4oeFsxXVsx
XSk7CisgICAgcmVzdWx0WzFdWzJdID0gYXNpbih4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjJ4NCBhc2luKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFzaW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYXNpbih4
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhc2luKHhbMF1bMl0pOworICAgIHJlc3VsdFsw
XVszXSA9IGFzaW4oeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXNpbih4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBhc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFz
aW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gYXNpbih4WzFdWzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjN4MiBhc2luKGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGFzaW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gYXNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhc2luKHhbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IGFzaW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gYXNpbih4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhc2luKHhbMl1bMV0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmM3gzIGFzaW4oaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gYXNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBh
c2luKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFzaW4oeFswXVsyXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gYXNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhc2luKHhbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFzaW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gYXNpbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhc2luKHhbMl1bMV0pOworICAg
IHJlc3VsdFsyXVsyXSA9IGFzaW4oeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzeDQgYXNpbihoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBhc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFzaW4oeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gYXNpbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBh
c2luKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGFzaW4oeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gYXNpbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhc2luKHhbMV1b
Ml0pOworICAgIHJlc3VsdFsxXVszXSA9IGFzaW4oeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gYXNpbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhc2luKHhbMl1bMV0pOworICAg
IHJlc3VsdFsyXVsyXSA9IGFzaW4oeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gYXNpbih4
WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBhc2luKGhhbGY0eDIgeCkg
eworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFzaW4oeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gYXNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBh
c2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFzaW4oeFsxXVsxXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gYXNpbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhc2luKHhbMl1b
MV0pOworICAgIHJlc3VsdFszXVswXSA9IGFzaW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFd
ID0gYXNpbih4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBhc2luKGhh
bGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFzaW4o
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYXNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSBhc2luKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGFzaW4oeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gYXNpbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBh
c2luKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGFzaW4oeFsyXVswXSk7CisgICAgcmVz
dWx0WzJdWzFdID0gYXNpbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhc2luKHhbMl1b
Ml0pOworICAgIHJlc3VsdFszXVswXSA9IGFzaW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFd
ID0gYXNpbih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBhc2luKHhbM11bMl0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IGFzaW4oaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYXNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBhc2luKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFzaW4oeFswXVsyXSk7
CisgICAgcmVzdWx0WzBdWzNdID0gYXNpbih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBh
c2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFzaW4oeFsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gYXNpbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhc2luKHhbMV1b
M10pOworICAgIHJlc3VsdFsyXVswXSA9IGFzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gYXNpbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhc2luKHhbMl1bMl0pOworICAg
IHJlc3VsdFsyXVszXSA9IGFzaW4oeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gYXNpbih4
WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBhc2luKHhbM11bMV0pOworICAgIHJlc3VsdFsz
XVsyXSA9IGFzaW4oeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gYXNpbih4WzNdWzNdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgYXRhbihoYWxmMiB4KSB7CisgICAgaGFsZjIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGF0YW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0gYXRh
bih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgYXRhbihoYWxmMyB4KSB7Cisg
ICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGF0YW4oeFswXSk7CisgICAgcmVzdWx0
WzFdID0gYXRhbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhdGFuKHhbMl0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBhdGFuKGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYXRhbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhdGFuKHhbMV0pOwor
ICAgIHJlc3VsdFsyXSA9IGF0YW4oeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYXRhbih4WzNdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBhdGFuKGhhbGYyeDIgeCkgeworICAgIGhh
bGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4oeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gYXRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4oeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyeDMgYXRhbihoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGF0YW4o
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYXRhbih4WzBdWzJdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBhdGFuKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4oeFsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gYXRhbih4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjJ4NCBhdGFuKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGF0YW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYXRhbih4WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVsz
XSA9IGF0YW4oeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXRhbih4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGF0YW4o
eFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gYXRhbih4WzFdWzNdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjN4MiBhdGFuKGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
YXRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuKHhbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IGF0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gYXRhbih4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFuKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmM3gzIGF0YW4oaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gYXRhbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFu
KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGF0YW4oeFswXVsyXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gYXRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IGF0YW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
YXRhbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFuKHhbMl1bMV0pOworICAgIHJl
c3VsdFsyXVsyXSA9IGF0YW4oeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
eDQgYXRhbihoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBhdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGF0YW4oeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzBdWzJdID0gYXRhbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBhdGFu
KHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGF0YW4oeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gYXRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuKHhbMV1bMl0p
OworICAgIHJlc3VsdFsxXVszXSA9IGF0YW4oeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
YXRhbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFuKHhbMl1bMV0pOworICAgIHJl
c3VsdFsyXVsyXSA9IGF0YW4oeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gYXRhbih4WzJd
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBhdGFuKGhhbGY0eDIgeCkgewor
ICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4oeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gYXRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFu
KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gYXRhbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFuKHhbMl1bMV0p
OworICAgIHJlc3VsdFszXVswXSA9IGF0YW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0g
YXRhbih4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBhdGFuKGhhbGY0
eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4oeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYXRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1b
Ml0gPSBhdGFuKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGF0YW4oeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gYXRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFu
KHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGF0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gYXRhbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhdGFuKHhbMl1bMl0p
OworICAgIHJlc3VsdFszXVswXSA9IGF0YW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0g
YXRhbih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBhdGFuKHhbM11bMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IGF0YW4oaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYXRhbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhdGFuKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGF0YW4oeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzBdWzNdID0gYXRhbih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFu
KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gYXRhbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhdGFuKHhbMV1bM10p
OworICAgIHJlc3VsdFsyXVswXSA9IGF0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
YXRhbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhdGFuKHhbMl1bMl0pOworICAgIHJl
c3VsdFsyXVszXSA9IGF0YW4oeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gYXRhbih4WzNd
WzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBhdGFuKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsy
XSA9IGF0YW4oeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gYXRhbih4WzNdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgY29zaChoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGNvc2goeFswXSk7CisgICAgcmVzdWx0WzFdID0gY29zaCh4
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgY29zaChoYWxmMyB4KSB7CisgICAg
aGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNvc2goeFswXSk7CisgICAgcmVzdWx0WzFd
ID0gY29zaCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBjb3NoKHhbMl0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBjb3NoKGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gY29zaCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBjb3NoKHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IGNvc2goeFsyXSk7CisgICAgcmVzdWx0WzNdID0gY29zaCh4WzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBjb3NoKGhhbGYyeDIgeCkgeworICAgIGhhbGYy
eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNvc2goeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gY29zaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3NoKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IGNvc2goeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYyeDMgY29zaChoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBjb3NoKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvc2goeFsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY29zaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBjb3NoKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvc2goeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gY29zaCh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjJ4NCBjb3NoKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGNvc2goeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gY29zaCh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBjb3NoKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9
IGNvc2goeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zaCh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBjb3NoKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNvc2goeFsx
XVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gY29zaCh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjN4MiBjb3NoKGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGNvc2goeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gY29z
aCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3NoKHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IGNvc2goeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gY29zaCh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBjb3NoKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmM3gzIGNvc2goaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gY29zaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3NoKHhb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNvc2goeFswXVsyXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gY29zaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3NoKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IGNvc2goeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gY29z
aCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjb3NoKHhbMl1bMV0pOworICAgIHJlc3Vs
dFsyXVsyXSA9IGNvc2goeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQg
Y29zaChoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBjb3NoKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvc2goeFswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gY29zaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBjb3NoKHhb
MF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGNvc2goeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gY29zaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjb3NoKHhbMV1bMl0pOwor
ICAgIHJlc3VsdFsxXVszXSA9IGNvc2goeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gY29z
aCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjb3NoKHhbMl1bMV0pOworICAgIHJlc3Vs
dFsyXVsyXSA9IGNvc2goeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gY29zaCh4WzJdWzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBjb3NoKGhhbGY0eDIgeCkgeworICAg
IGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNvc2goeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gY29zaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3NoKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvc2goeFsxXVsxXSk7CisgICAgcmVzdWx0WzJd
WzBdID0gY29zaCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjb3NoKHhbMl1bMV0pOwor
ICAgIHJlc3VsdFszXVswXSA9IGNvc2goeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gY29z
aCh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBjb3NoKGhhbGY0eDMg
eCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNvc2goeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gY29zaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBjb3NoKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGNvc2goeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gY29zaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjb3NoKHhb
MV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGNvc2goeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gY29zaCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjb3NoKHhbMl1bMl0pOwor
ICAgIHJlc3VsdFszXVswXSA9IGNvc2goeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gY29z
aCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBjb3NoKHhbM11bMl0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNHg0IGNvc2goaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY29zaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBjb3NoKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNvc2goeFswXVsyXSk7CisgICAg
cmVzdWx0WzBdWzNdID0gY29zaCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3NoKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvc2goeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gY29zaCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBjb3NoKHhbMV1bM10pOwor
ICAgIHJlc3VsdFsyXVswXSA9IGNvc2goeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY29z
aCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjb3NoKHhbMl1bMl0pOworICAgIHJlc3Vs
dFsyXVszXSA9IGNvc2goeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gY29zaCh4WzNdWzBd
KTsKKyAgICByZXN1bHRbM11bMV0gPSBjb3NoKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9
IGNvc2goeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gY29zaCh4WzNdWzNdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjIgc2luaChoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IHNpbmgoeFswXSk7CisgICAgcmVzdWx0WzFdID0gc2luaCh4WzFd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgc2luaChoYWxmMyB4KSB7CisgICAgaGFs
ZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpbmgoeFswXSk7CisgICAgcmVzdWx0WzFdID0g
c2luaCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzaW5oKHhbMl0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBzaW5oKGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gc2luaCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaW5oKHhbMV0pOworICAgIHJl
c3VsdFsyXSA9IHNpbmgoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gc2luaCh4WzNdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBzaW5oKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gc2luaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW5oKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHNpbmgoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDMgc2luaChoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBzaW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbmgoeFswXVsx
XSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2luaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBzaW5oKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbmgoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzFdWzJdID0gc2luaCh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4NCBzaW5oKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IHNpbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2luaCh4WzBdWzFdKTsK
KyAgICByZXN1bHRbMF1bMl0gPSBzaW5oKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHNp
bmgoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luaCh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBzaW5oKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNpbmgoeFsxXVsy
XSk7CisgICAgcmVzdWx0WzFdWzNdID0gc2luaCh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjN4MiBzaW5oKGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IHNpbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2luaCh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW5oKHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IHNpbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc2luaCh4WzJdWzBdKTsK
KyAgICByZXN1bHRbMl1bMV0gPSBzaW5oKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmM3gzIHNpbmgoaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gc2luaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzaW5oKHhbMF1b
MV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpbmgoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gc2luaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW5oKHhbMV1bMV0pOworICAg
IHJlc3VsdFsxXVsyXSA9IHNpbmgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc2luaCh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaW5oKHhbMl1bMV0pOworICAgIHJlc3VsdFsy
XVsyXSA9IHNpbmgoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgc2lu
aChoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBz
aW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbmgoeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gc2luaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBzaW5oKHhbMF1b
M10pOworICAgIHJlc3VsdFsxXVswXSA9IHNpbmgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gc2luaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzaW5oKHhbMV1bMl0pOworICAg
IHJlc3VsdFsxXVszXSA9IHNpbmgoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc2luaCh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaW5oKHhbMl1bMV0pOworICAgIHJlc3VsdFsy
XVsyXSA9IHNpbmgoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gc2luaCh4WzJdWzNdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBzaW5oKGhhbGY0eDIgeCkgeworICAgIGhh
bGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbmgoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gc2luaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW5oKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gc2luaCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaW5oKHhbMl1bMV0pOworICAg
IHJlc3VsdFszXVswXSA9IHNpbmgoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc2luaCh4
WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBzaW5oKGhhbGY0eDMgeCkg
eworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbmgoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gc2luaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBz
aW5oKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IHNpbmgoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gc2luaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzaW5oKHhbMV1b
Ml0pOworICAgIHJlc3VsdFsyXVswXSA9IHNpbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gc2luaCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzaW5oKHhbMl1bMl0pOworICAg
IHJlc3VsdFszXVswXSA9IHNpbmgoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc2luaCh4
WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBzaW5oKHhbM11bMl0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNHg0IHNpbmgoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gc2luaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBz
aW5oKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpbmgoeFswXVsyXSk7CisgICAgcmVz
dWx0WzBdWzNdID0gc2luaCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW5oKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gc2luaCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzaW5oKHhbMV1bM10pOworICAg
IHJlc3VsdFsyXVswXSA9IHNpbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luaCh4
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzaW5oKHhbMl1bMl0pOworICAgIHJlc3VsdFsy
XVszXSA9IHNpbmgoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gc2luaCh4WzNdWzBdKTsK
KyAgICByZXN1bHRbM11bMV0gPSBzaW5oKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IHNp
bmgoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gc2luaCh4WzNdWzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjIgdGFuaChoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IHRhbmgoeFswXSk7CisgICAgcmVzdWx0WzFdID0gdGFuaCh4WzFdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgdGFuaChoYWxmMyB4KSB7CisgICAgaGFsZjMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IHRhbmgoeFswXSk7CisgICAgcmVzdWx0WzFdID0gdGFu
aCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSB0YW5oKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCB0YW5oKGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gdGFuaCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSB0YW5oKHhbMV0pOworICAgIHJlc3Vs
dFsyXSA9IHRhbmgoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gdGFuaCh4WzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjJ4MiB0YW5oKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gdGFuaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW5oKHhbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IHRhbmgoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYyeDMgdGFuaChoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSB0YW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbmgoeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gdGFuaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0
YW5oKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHRhbmgoeFsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gdGFuaCh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4
NCB0YW5oKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IHRhbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdGFuaCh4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSB0YW5oKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHRhbmgo
eFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuaCh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHRhbmgoeFsxXVsyXSk7
CisgICAgcmVzdWx0WzFdWzNdID0gdGFuaCh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjN4MiB0YW5oKGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IHRhbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdGFuaCh4WzBd
WzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW5oKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IHRhbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gdGFuaCh4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSB0YW5oKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmM3gzIHRhbmgoaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gdGFuaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW5oKHhbMF1bMV0p
OworICAgIHJlc3VsdFswXVsyXSA9IHRhbmgoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
dGFuaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJl
c3VsdFsxXVsyXSA9IHRhbmgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gdGFuaCh4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW5oKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsy
XSA9IHRhbmgoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgdGFuaCho
YWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW5o
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbmgoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gdGFuaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSB0YW5oKHhbMF1bM10p
OworICAgIHJlc3VsdFsxXVswXSA9IHRhbmgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
dGFuaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0YW5oKHhbMV1bMl0pOworICAgIHJl
c3VsdFsxXVszXSA9IHRhbmgoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gdGFuaCh4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW5oKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsy
XSA9IHRhbmgoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gdGFuaCh4WzJdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiB0YW5oKGhhbGY0eDIgeCkgeworICAgIGhhbGY0
eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbmgoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gdGFuaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW5oKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IHRhbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
dGFuaCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW5oKHhbMl1bMV0pOworICAgIHJl
c3VsdFszXVswXSA9IHRhbmgoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gdGFuaCh4WzNd
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyB0YW5oKGhhbGY0eDMgeCkgewor
ICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbmgoeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gdGFuaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0YW5o
KHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IHRhbmgoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gdGFuaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0YW5oKHhbMV1bMl0p
OworICAgIHJlc3VsdFsyXVswXSA9IHRhbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
dGFuaCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSB0YW5oKHhbMl1bMl0pOworICAgIHJl
c3VsdFszXVswXSA9IHRhbmgoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gdGFuaCh4WzNd
WzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSB0YW5oKHhbM11bMl0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNHg0IHRhbmgoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gdGFuaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW5o
KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHRhbmgoeFswXVsyXSk7CisgICAgcmVzdWx0
WzBdWzNdID0gdGFuaCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW5oKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IHRhbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
dGFuaCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSB0YW5oKHhbMV1bM10pOworICAgIHJl
c3VsdFsyXVswXSA9IHRhbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuaCh4WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSB0YW5oKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVsz
XSA9IHRhbmgoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gdGFuaCh4WzNdWzBdKTsKKyAg
ICByZXN1bHRbM11bMV0gPSB0YW5oKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IHRhbmgo
eFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gdGFuaCh4WzNdWzNdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjIgY2VpbChoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGNlaWwoeFswXSk7CisgICAgcmVzdWx0WzFdID0gY2VpbCh4WzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgY2VpbChoYWxmMyB4KSB7CisgICAgaGFsZjMgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGNlaWwoeFswXSk7CisgICAgcmVzdWx0WzFdID0gY2VpbCh4
WzFdKTsKKyAgICByZXN1bHRbMl0gPSBjZWlsKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBjZWlsKGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gY2VpbCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBjZWlsKHhbMV0pOworICAgIHJlc3VsdFsy
XSA9IGNlaWwoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gY2VpbCh4WzNdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjJ4MiBjZWlsKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGNlaWwoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
Y2VpbCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjZWlsKHhbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IGNlaWwoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYy
eDMgY2VpbChoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBjZWlsKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNlaWwoeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzBdWzJdID0gY2VpbCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjZWls
KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNlaWwoeFsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gY2VpbCh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBj
ZWlsKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IGNlaWwoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gY2VpbCh4WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBjZWlsKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGNlaWwoeFsw
XVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY2VpbCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBjZWlsKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNlaWwoeFsxXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzNdID0gY2VpbCh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjN4MiBjZWlsKGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGNlaWwoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gY2VpbCh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBjZWlsKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IGNlaWwoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gY2VpbCh4WzJdWzBdKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBjZWlsKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
M3gzIGNlaWwoaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gY2VpbCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjZWlsKHhbMF1bMV0pOwor
ICAgIHJlc3VsdFswXVsyXSA9IGNlaWwoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY2Vp
bCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjZWlsKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IGNlaWwoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gY2VpbCh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBjZWlsKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9
IGNlaWwoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgY2VpbChoYWxm
M3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjZWlsKHhb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNlaWwoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gY2VpbCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBjZWlsKHhbMF1bM10pOwor
ICAgIHJlc3VsdFsxXVswXSA9IGNlaWwoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY2Vp
bCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjZWlsKHhbMV1bMl0pOworICAgIHJlc3Vs
dFsxXVszXSA9IGNlaWwoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gY2VpbCh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBjZWlsKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9
IGNlaWwoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gY2VpbCh4WzJdWzNdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBjZWlsKGhhbGY0eDIgeCkgeworICAgIGhhbGY0eDIg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNlaWwoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gY2VpbCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjZWlsKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGNlaWwoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gY2Vp
bCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjZWlsKHhbMl1bMV0pOworICAgIHJlc3Vs
dFszXVswXSA9IGNlaWwoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gY2VpbCh4WzNdWzFd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBjZWlsKGhhbGY0eDMgeCkgeworICAg
IGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNlaWwoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gY2VpbCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBjZWlsKHhb
MF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGNlaWwoeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gY2VpbCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjZWlsKHhbMV1bMl0pOwor
ICAgIHJlc3VsdFsyXVswXSA9IGNlaWwoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY2Vp
bCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjZWlsKHhbMl1bMl0pOworICAgIHJlc3Vs
dFszXVswXSA9IGNlaWwoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gY2VpbCh4WzNdWzFd
KTsKKyAgICByZXN1bHRbM11bMl0gPSBjZWlsKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNHg0IGNlaWwoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gY2VpbCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjZWlsKHhb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNlaWwoeFswXVsyXSk7CisgICAgcmVzdWx0WzBd
WzNdID0gY2VpbCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjZWlsKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGNlaWwoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gY2Vp
bCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBjZWlsKHhbMV1bM10pOworICAgIHJlc3Vs
dFsyXVswXSA9IGNlaWwoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY2VpbCh4WzJdWzFd
KTsKKyAgICByZXN1bHRbMl1bMl0gPSBjZWlsKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9
IGNlaWwoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gY2VpbCh4WzNdWzBdKTsKKyAgICBy
ZXN1bHRbM11bMV0gPSBjZWlsKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGNlaWwoeFsz
XVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gY2VpbCh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjIgZXhwKGhhbGYyIHgpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gZXhwKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGV4cCh4WzFdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjMgZXhwKGhhbGYzIHgpIHsKKyAgICBoYWxmMyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gZXhwKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGV4cCh4WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSBleHAoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IGV4
cChoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGV4cCh4WzBd
KTsKKyAgICByZXN1bHRbMV0gPSBleHAoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZXhwKHhbMl0p
OworICAgIHJlc3VsdFszXSA9IGV4cCh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4MiBleHAoaGFsZjJ4MiB4KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gZXhwKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGV4cCh4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBleHAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZXhwKHhb
MV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIGV4cChoYWxmMngzIHgpIHsK
KyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBleHAoeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gZXhwKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGV4cCh4
WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBleHAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gZXhwKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGV4cCh4WzFdWzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBleHAoaGFsZjJ4NCB4KSB7CisgICAgaGFsZjJ4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZXhwKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGV4cCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBleHAoeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzBdWzNdID0gZXhwKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGV4cCh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBleHAoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gZXhwKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGV4cCh4WzFdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBleHAoaGFsZjN4MiB4KSB7CisgICAgaGFsZjN4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZXhwKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGV4cCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBleHAoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gZXhwKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGV4cCh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBleHAoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzeDMgZXhwKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGV4cCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBleHAo
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZXhwKHhbMF1bMl0pOworICAgIHJlc3VsdFsx
XVswXSA9IGV4cCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBleHAoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gZXhwKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGV4cCh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBleHAoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJd
WzJdID0gZXhwKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IGV4cCho
YWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBleHAo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZXhwKHhbMF1bMV0pOworICAgIHJlc3VsdFsw
XVsyXSA9IGV4cCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBleHAoeFswXVszXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gZXhwKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cCh4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBleHAoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFd
WzNdID0gZXhwKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGV4cCh4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSBleHAoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZXhwKHhb
Ml1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGV4cCh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MiBleHAoaGFsZjR4MiB4KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gZXhwKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGV4cCh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBleHAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gZXhwKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGV4cCh4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSBleHAoeFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZXhwKHhb
M11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGV4cCh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MyBleHAoaGFsZjR4MyB4KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gZXhwKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGV4cCh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBleHAoeFswXVsyXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gZXhwKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cCh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBleHAoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZXhwKHhb
Ml1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGV4cCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBleHAoeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZXhwKHhbM11bMF0pOworICAg
IHJlc3VsdFszXVsxXSA9IGV4cCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBleHAoeFsz
XVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgZXhwKGhhbGY0eDQgeCkgewor
ICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGV4cCh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBleHAoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZXhwKHhb
MF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGV4cCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBleHAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZXhwKHhbMV1bMV0pOworICAg
IHJlc3VsdFsxXVsyXSA9IGV4cCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBleHAoeFsx
XVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZXhwKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IGV4cCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBleHAoeFsyXVsyXSk7CisgICAg
cmVzdWx0WzJdWzNdID0gZXhwKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGV4cCh4WzNd
WzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBleHAoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJd
ID0gZXhwKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGV4cCh4WzNdWzNdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjIgZmxvb3IoaGFsZjIgeCkgeworICAgIGhhbGYyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBmbG9vcih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmbG9vcih4
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgZmxvb3IoaGFsZjMgeCkgeworICAg
IGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmbG9vcih4WzBdKTsKKyAgICByZXN1bHRb
MV0gPSBmbG9vcih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBmbG9vcih4WzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgZmxvb3IoaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBmbG9vcih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmbG9vcih4WzFd
KTsKKyAgICByZXN1bHRbMl0gPSBmbG9vcih4WzJdKTsKKyAgICByZXN1bHRbM10gPSBmbG9vcih4
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBmbG9vcihoYWxmMngyIHgpIHsK
KyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbG9vcih4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBmbG9vcih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBm
bG9vcih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbG9vcih4WzFdWzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBmbG9vcihoYWxmMngzIHgpIHsKKyAgICBoYWxmMngz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbG9vcih4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBmbG9vcih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmbG9vcih4WzBdWzJd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBmbG9vcih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBmbG9vcih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmbG9vcih4WzFdWzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBmbG9vcihoYWxmMng0IHgpIHsKKyAgICBoYWxm
Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbG9vcih4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBmbG9vcih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmbG9vcih4WzBd
WzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBmbG9vcih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBmbG9vcih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbG9vcih4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBmbG9vcih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBm
bG9vcih4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBmbG9vcihoYWxm
M3gyIHgpIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbG9vcih4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbG9vcih4WzBdWzFdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBmbG9vcih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbG9vcih4WzFdWzFd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbG9vcih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBmbG9vcih4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBmbG9vciho
YWxmM3gzIHgpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbG9v
cih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbG9vcih4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBmbG9vcih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmbG9vcih4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbG9vcih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBmbG9vcih4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbG9vcih4WzJdWzBdKTsK
KyAgICByZXN1bHRbMl1bMV0gPSBmbG9vcih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBm
bG9vcih4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCBmbG9vcihoYWxm
M3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbG9vcih4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbG9vcih4WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSBmbG9vcih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBmbG9vcih4WzBdWzNd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBmbG9vcih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBmbG9vcih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmbG9vcih4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSBmbG9vcih4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbG9v
cih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmbG9vcih4WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSBmbG9vcih4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBmbG9vcih4WzJd
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBmbG9vcihoYWxmNHgyIHgpIHsK
KyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbG9vcih4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBmbG9vcih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBm
bG9vcih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbG9vcih4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBmbG9vcih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmbG9vcih4
WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBmbG9vcih4WzNdWzBdKTsKKyAgICByZXN1bHRb
M11bMV0gPSBmbG9vcih4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBm
bG9vcihoYWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBmbG9vcih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbG9vcih4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSBmbG9vcih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmbG9v
cih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbG9vcih4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBmbG9vcih4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbG9vcih4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmbG9vcih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBmbG9vcih4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBmbG9vcih4WzNdWzBdKTsK
KyAgICByZXN1bHRbM11bMV0gPSBmbG9vcih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBm
bG9vcih4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBmbG9vcihoYWxm
NHg0IHgpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbG9vcih4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbG9vcih4WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSBmbG9vcih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBmbG9vcih4WzBdWzNd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBmbG9vcih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBmbG9vcih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmbG9vcih4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSBmbG9vcih4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbG9v
cih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmbG9vcih4WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSBmbG9vcih4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBmbG9vcih4WzJd
WzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBmbG9vcih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11b
MV0gPSBmbG9vcih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBmbG9vcih4WzNdWzJdKTsK
KyAgICByZXN1bHRbM11bM10gPSBmbG9vcih4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjIgbG9nKGhhbGYyIHgpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gbG9nKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGxvZyh4WzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgbG9nKGhhbGYzIHgpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gbG9nKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGxvZyh4WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBsb2coeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IGxvZyhoYWxm
NCB4KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGxvZyh4WzBdKTsKKyAg
ICByZXN1bHRbMV0gPSBsb2coeFsxXSk7CisgICAgcmVzdWx0WzJdID0gbG9nKHhbMl0pOworICAg
IHJlc3VsdFszXSA9IGxvZyh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBs
b2coaGFsZjJ4MiB4KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
bG9nKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxvZyh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBsb2coeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9nKHhbMV1bMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIGxvZyhoYWxmMngzIHgpIHsKKyAgICBo
YWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2coeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gbG9nKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGxvZyh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2coeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
bG9nKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxvZyh4WzFdWzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjJ4NCBsb2coaGFsZjJ4NCB4KSB7CisgICAgaGFsZjJ4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbG9nKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGxvZyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2coeFswXVsyXSk7CisgICAgcmVz
dWx0WzBdWzNdID0gbG9nKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGxvZyh4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2coeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
bG9nKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGxvZyh4WzFdWzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjN4MiBsb2coaGFsZjN4MiB4KSB7CisgICAgaGFsZjN4MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbG9nKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGxvZyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2coeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gbG9nKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGxvZyh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBsb2coeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzeDMgbG9nKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGxvZyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2coeFswXVsx
XSk7CisgICAgcmVzdWx0WzBdWzJdID0gbG9nKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9
IGxvZyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2coeFsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gbG9nKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGxvZyh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBsb2coeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0g
bG9nKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IGxvZyhoYWxmM3g0
IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2coeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gbG9nKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9
IGxvZyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBsb2coeFswXVszXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gbG9nKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxvZyh4WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSBsb2coeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0g
bG9nKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGxvZyh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBsb2coeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbG9nKHhbMl1bMl0p
OworICAgIHJlc3VsdFsyXVszXSA9IGxvZyh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjR4MiBsb2coaGFsZjR4MiB4KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gbG9nKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxvZyh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2coeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
bG9nKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGxvZyh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBsb2coeFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gbG9nKHhbM11bMF0p
OworICAgIHJlc3VsdFszXVsxXSA9IGxvZyh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjR4MyBsb2coaGFsZjR4MyB4KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gbG9nKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxvZyh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2coeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
bG9nKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxvZyh4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBsb2coeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbG9nKHhbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IGxvZyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBs
b2coeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gbG9nKHhbM11bMF0pOworICAgIHJlc3Vs
dFszXVsxXSA9IGxvZyh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBsb2coeFszXVsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgbG9nKGhhbGY0eDQgeCkgeworICAgIGhh
bGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxvZyh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBsb2coeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbG9nKHhbMF1bMl0p
OworICAgIHJlc3VsdFswXVszXSA9IGxvZyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBs
b2coeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9nKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IGxvZyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBsb2coeFsxXVszXSk7
CisgICAgcmVzdWx0WzJdWzBdID0gbG9nKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGxv
Zyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBsb2coeFsyXVsyXSk7CisgICAgcmVzdWx0
WzJdWzNdID0gbG9nKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGxvZyh4WzNdWzBdKTsK
KyAgICByZXN1bHRbM11bMV0gPSBsb2coeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gbG9n
KHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGxvZyh4WzNdWzNdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjIgcm91bmQoaGFsZjIgeCkgeworICAgIGhhbGYyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSByb3VuZCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSByb3VuZCh4WzFdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgcm91bmQoaGFsZjMgeCkgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSByb3VuZCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBy
b3VuZCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSByb3VuZCh4WzJdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgcm91bmQoaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSByb3VuZCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSByb3VuZCh4WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSByb3VuZCh4WzJdKTsKKyAgICByZXN1bHRbM10gPSByb3VuZCh4WzNdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiByb3VuZChoYWxmMngyIHgpIHsKKyAgICBo
YWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByb3VuZCh4WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSByb3VuZCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByb3VuZCh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByb3VuZCh4WzFdWzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjJ4MyByb3VuZChoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSByb3VuZCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSByb3VuZCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByb3VuZCh4WzBdWzJdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSByb3VuZCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByb3Vu
ZCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByb3VuZCh4WzFdWzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjJ4NCByb3VuZChoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByb3VuZCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSByb3VuZCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByb3VuZCh4WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSByb3VuZCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBy
b3VuZCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByb3VuZCh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSByb3VuZCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSByb3VuZCh4
WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiByb3VuZChoYWxmM3gyIHgp
IHsKKyAgICBoYWxmM3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByb3VuZCh4WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSByb3VuZCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSByb3VuZCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByb3VuZCh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSByb3VuZCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByb3Vu
ZCh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyByb3VuZChoYWxmM3gz
IHgpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByb3VuZCh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByb3VuZCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1b
Ml0gPSByb3VuZCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByb3VuZCh4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSByb3VuZCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBy
b3VuZCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByb3VuZCh4WzJdWzBdKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSByb3VuZCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSByb3VuZCh4
WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCByb3VuZChoYWxmM3g0IHgp
IHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByb3VuZCh4WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSByb3VuZCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSByb3VuZCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSByb3VuZCh4WzBdWzNdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSByb3VuZCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByb3Vu
ZCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByb3VuZCh4WzFdWzJdKTsKKyAgICByZXN1
bHRbMV1bM10gPSByb3VuZCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByb3VuZCh4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByb3VuZCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSByb3VuZCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSByb3VuZCh4WzJdWzNdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiByb3VuZChoYWxmNHgyIHgpIHsKKyAgICBo
YWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByb3VuZCh4WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSByb3VuZCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByb3VuZCh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByb3VuZCh4WzFdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSByb3VuZCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByb3VuZCh4WzJdWzFd
KTsKKyAgICByZXN1bHRbM11bMF0gPSByb3VuZCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0g
PSByb3VuZCh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyByb3VuZCho
YWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByb3Vu
ZCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByb3VuZCh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSByb3VuZCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByb3VuZCh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByb3VuZCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSByb3VuZCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByb3VuZCh4WzJdWzBdKTsK
KyAgICByZXN1bHRbMl1bMV0gPSByb3VuZCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBy
b3VuZCh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSByb3VuZCh4WzNdWzBdKTsKKyAgICBy
ZXN1bHRbM11bMV0gPSByb3VuZCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSByb3VuZCh4
WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCByb3VuZChoYWxmNHg0IHgp
IHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByb3VuZCh4WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSByb3VuZCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSByb3VuZCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSByb3VuZCh4WzBdWzNdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSByb3VuZCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByb3Vu
ZCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByb3VuZCh4WzFdWzJdKTsKKyAgICByZXN1
bHRbMV1bM10gPSByb3VuZCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByb3VuZCh4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByb3VuZCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSByb3VuZCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSByb3VuZCh4WzJdWzNdKTsK
KyAgICByZXN1bHRbM11bMF0gPSByb3VuZCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBy
b3VuZCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSByb3VuZCh4WzNdWzJdKTsKKyAgICBy
ZXN1bHRbM11bM10gPSByb3VuZCh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjIgdHJ1bmMoaGFsZjIgeCkgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB0
cnVuYyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSB0cnVuYyh4WzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgdHJ1bmMoaGFsZjMgeCkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSB0cnVuYyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSB0cnVuYyh4WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSB0cnVuYyh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
dHJ1bmMoaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB0cnVu
Yyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSB0cnVuYyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSB0
cnVuYyh4WzJdKTsKKyAgICByZXN1bHRbM10gPSB0cnVuYyh4WzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjJ4MiB0cnVuYyhoYWxmMngyIHgpIHsKKyAgICBoYWxmMngyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSB0cnVuYyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0
cnVuYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0cnVuYyh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSB0cnVuYyh4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4MyB0cnVuYyhoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSB0cnVuYyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0cnVuYyh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSB0cnVuYyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSB0cnVuYyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0cnVuYyh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSB0cnVuYyh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjJ4NCB0cnVuYyhoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSB0cnVuYyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0cnVuYyh4WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0cnVuYyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1b
M10gPSB0cnVuYyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0cnVuYyh4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSB0cnVuYyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0
cnVuYyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSB0cnVuYyh4WzFdWzNdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiB0cnVuYyhoYWxmM3gyIHgpIHsKKyAgICBoYWxmM3gy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0cnVuYyh4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSB0cnVuYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0cnVuYyh4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSB0cnVuYyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0g
PSB0cnVuYyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0cnVuYyh4WzJdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyB0cnVuYyhoYWxmM3gzIHgpIHsKKyAgICBoYWxm
M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0cnVuYyh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSB0cnVuYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0cnVuYyh4WzBd
WzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0cnVuYyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSB0cnVuYyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0cnVuYyh4WzFdWzJdKTsK
KyAgICByZXN1bHRbMl1bMF0gPSB0cnVuYyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0
cnVuYyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSB0cnVuYyh4WzJdWzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCB0cnVuYyhoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0cnVuYyh4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSB0cnVuYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0cnVuYyh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMF1bM10gPSB0cnVuYyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSB0cnVuYyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0cnVuYyh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSB0cnVuYyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSB0cnVu
Yyh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSB0cnVuYyh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSB0cnVuYyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSB0cnVuYyh4WzJd
WzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSB0cnVuYyh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MiB0cnVuYyhoYWxmNHgyIHgpIHsKKyAgICBoYWxmNHgyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSB0cnVuYyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0
cnVuYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0cnVuYyh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSB0cnVuYyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSB0cnVuYyh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0cnVuYyh4WzJdWzFdKTsKKyAgICByZXN1bHRb
M11bMF0gPSB0cnVuYyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSB0cnVuYyh4WzNdWzFd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyB0cnVuYyhoYWxmNHgzIHgpIHsKKyAg
ICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0cnVuYyh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSB0cnVuYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0cnVu
Yyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0cnVuYyh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSB0cnVuYyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0cnVuYyh4WzFd
WzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSB0cnVuYyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1b
MV0gPSB0cnVuYyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSB0cnVuYyh4WzJdWzJdKTsK
KyAgICByZXN1bHRbM11bMF0gPSB0cnVuYyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSB0
cnVuYyh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSB0cnVuYyh4WzNdWzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCB0cnVuYyhoYWxmNHg0IHgpIHsKKyAgICBoYWxmNHg0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0cnVuYyh4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSB0cnVuYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0cnVuYyh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMF1bM10gPSB0cnVuYyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSB0cnVuYyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0cnVuYyh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSB0cnVuYyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSB0cnVu
Yyh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSB0cnVuYyh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSB0cnVuYyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSB0cnVuYyh4WzJd
WzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSB0cnVuYyh4WzJdWzNdKTsKKyAgICByZXN1bHRbM11b
MF0gPSB0cnVuYyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSB0cnVuYyh4WzNdWzFdKTsK
KyAgICByZXN1bHRbM11bMl0gPSB0cnVuYyh4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSB0
cnVuYyh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgZGR4KGhhbGYyIHgp
IHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR4KHhbMF0pOworICAgIHJl
c3VsdFsxXSA9IGRkeCh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgZGR4KGhh
bGYzIHgpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR4KHhbMF0pOwor
ICAgIHJlc3VsdFsxXSA9IGRkeCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBkZHgoeFsyXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IGRkeChoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGRkeCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBkZHgoeFsx
XSk7CisgICAgcmVzdWx0WzJdID0gZGR4KHhbMl0pOworICAgIHJlc3VsdFszXSA9IGRkeCh4WzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBkZHgoaGFsZjJ4MiB4KSB7CisgICAg
aGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4KHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IGRkeCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHgoeFsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4KHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMngzIGRkeChoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBkZHgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4KHhbMF1b
MV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBkZHgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4KHhbMV1bMV0pOworICAgIHJl
c3VsdFsxXVsyXSA9IGRkeCh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4
NCBkZHgoaGFsZjJ4NCB4KSB7CisgICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gZGR4KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeCh4WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBkZHgoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR4KHhbMF1b
M10pOworICAgIHJlc3VsdFsxXVswXSA9IGRkeCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBkZHgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4KHhbMV1bMl0pOworICAgIHJl
c3VsdFsxXVszXSA9IGRkeCh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4
MiBkZHgoaGFsZjN4MiB4KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gZGR4KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeCh4WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBkZHgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4KHhbMV1b
MV0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBkZHgoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgZGR4KGhhbGYz
eDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeCh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHgoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJd
ID0gZGR4KHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGRkeCh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBkZHgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4KHhbMV1b
Ml0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBkZHgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR4KHhbMl1bMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IGRkeChoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gZGR4KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeCh4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBkZHgoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4KHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBkZHgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR4KHhbMV1bM10pOworICAgIHJl
c3VsdFsyXVswXSA9IGRkeCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHgoeFsyXVsx
XSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR4KHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9
IGRkeCh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBkZHgoaGFsZjR4
MiB4KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4KHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBkZHgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4KHhbMV1bMV0pOworICAgIHJl
c3VsdFsyXVswXSA9IGRkeCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHgoeFsyXVsx
XSk7CisgICAgcmVzdWx0WzNdWzBdID0gZGR4KHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9
IGRkeCh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBkZHgoaGFsZjR4
MyB4KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4KHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBkZHgoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4KHhbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IGRkeCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHgoeFsxXVsy
XSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR4KHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IGRkeCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHgoeFsyXVsyXSk7CisgICAgcmVz
dWx0WzNdWzBdID0gZGR4KHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGRkeCh4WzNdWzFd
KTsKKyAgICByZXN1bHRbM11bMl0gPSBkZHgoeFszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0eDQgZGR4KGhhbGY0eDQgeCkgeworICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGRkeCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHgoeFswXVsx
XSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR4KHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9
IGRkeCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHgoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gZGR4KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRkeCh4WzFdWzJd
KTsKKyAgICByZXN1bHRbMV1bM10gPSBkZHgoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
ZGR4KHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGRkeCh4WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSBkZHgoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gZGR4KHhbMl1bM10p
OworICAgIHJlc3VsdFszXVswXSA9IGRkeCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBk
ZHgoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZGR4KHhbM11bMl0pOworICAgIHJlc3Vs
dFszXVszXSA9IGRkeCh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgZGR5
KGhhbGYyIHgpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR5KHhbMF0p
OworICAgIHJlc3VsdFsxXSA9IGRkeSh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjMgZGR5KGhhbGYzIHgpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR5
KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGRkeSh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBkZHko
eFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IGRkeShoYWxmNCB4KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRkeSh4WzBdKTsKKyAgICByZXN1bHRbMV0g
PSBkZHkoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGR5KHhbMl0pOworICAgIHJlc3VsdFszXSA9
IGRkeSh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBkZHkoaGFsZjJ4MiB4
KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR5KHhbMF1bMF0p
OworICAgIHJlc3VsdFswXVsxXSA9IGRkeSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBk
ZHkoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5KHhbMV1bMV0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmMngzIGRkeShoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHkoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
ZGR5KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeSh4WzBdWzJdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBkZHkoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5KHhbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IGRkeSh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjJ4NCBkZHkoaGFsZjJ4NCB4KSB7CisgICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gZGR5KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeSh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHkoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0g
ZGR5KHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGRkeSh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBkZHkoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR5KHhbMV1bMl0p
OworICAgIHJlc3VsdFsxXVszXSA9IGRkeSh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjN4MiBkZHkoaGFsZjN4MiB4KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gZGR5KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeSh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHkoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
ZGR5KHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeSh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBkZHkoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMg
ZGR5KGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IGRkeSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHkoeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gZGR5KHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGRkeSh4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHkoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
ZGR5KHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeSh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBkZHkoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR5KHhbMl1bMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IGRkeShoYWxmM3g0IHgpIHsKKyAgICBo
YWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHkoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gZGR5KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeSh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMF1bM10gPSBkZHkoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
ZGR5KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeSh4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBkZHkoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR5KHhbMV1bM10p
OworICAgIHJlc3VsdFsyXVswXSA9IGRkeSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBk
ZHkoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR5KHhbMl1bMl0pOworICAgIHJlc3Vs
dFsyXVszXSA9IGRkeSh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBk
ZHkoaGFsZjR4MiB4KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
ZGR5KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeSh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBkZHkoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5KHhbMV1bMV0p
OworICAgIHJlc3VsdFsyXVswXSA9IGRkeSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBk
ZHkoeFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZGR5KHhbM11bMF0pOworICAgIHJlc3Vs
dFszXVsxXSA9IGRkeSh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBk
ZHkoaGFsZjR4MyB4KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
ZGR5KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeSh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBkZHkoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5KHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IGRkeSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBk
ZHkoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR5KHhbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IGRkeSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHkoeFsyXVsyXSk7
CisgICAgcmVzdWx0WzNdWzBdID0gZGR5KHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGRk
eSh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBkZHkoeFszXVsyXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0eDQgZGR5KGhhbGY0eDQgeCkgeworICAgIGhhbGY0eDQgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGRkeSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBk
ZHkoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR5KHhbMF1bMl0pOworICAgIHJlc3Vs
dFswXVszXSA9IGRkeSh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHkoeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gZGR5KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRk
eSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBkZHkoeFsxXVszXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gZGR5KHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGRkeSh4WzJdWzFdKTsK
KyAgICByZXN1bHRbMl1bMl0gPSBkZHkoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gZGR5
KHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGRkeSh4WzNdWzBdKTsKKyAgICByZXN1bHRb
M11bMV0gPSBkZHkoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZGR5KHhbM11bMl0pOwor
ICAgIHJlc3VsdFszXVszXSA9IGRkeSh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjIgc3FydChoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IHNxcnQoeFswXSk7CisgICAgcmVzdWx0WzFdID0gc3FydCh4WzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgc3FydChoYWxmMyB4KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IHNxcnQoeFswXSk7CisgICAgcmVzdWx0WzFdID0gc3FydCh4WzFdKTsKKyAgICBy
ZXN1bHRbMl0gPSBzcXJ0KHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBzcXJ0
KGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc3FydCh4WzBd
KTsKKyAgICByZXN1bHRbMV0gPSBzcXJ0KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHNxcnQoeFsy
XSk7CisgICAgcmVzdWx0WzNdID0gc3FydCh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjJ4MiBzcXJ0KGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IHNxcnQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc3FydCh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBzcXJ0KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IHNxcnQoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgc3FydChoYWxm
MngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzcXJ0KHhb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gc3FydCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzcXJ0KHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc3Fy
dCh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBzcXJ0KGhhbGYyeDQg
eCkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNxcnQoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBzcXJ0KHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHNxcnQoeFswXVszXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gc3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzcXJ0KHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNxcnQoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFd
WzNdID0gc3FydCh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBzcXJ0
KGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNx
cnQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc3FydCh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBzcXJ0KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNxcnQoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzJdWzBdID0gc3FydCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBzcXJ0KHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIHNxcnQoaGFs
ZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc3FydCh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzcXJ0KHhbMF1bMV0pOworICAgIHJlc3VsdFsw
XVsyXSA9IHNxcnQoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc3FydCh4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBzcXJ0KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNx
cnQoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc3FydCh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBzcXJ0KHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHNxcnQoeFsyXVsy
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgc3FydChoYWxmM3g0IHgpIHsKKyAg
ICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzcXJ0KHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IHNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc3FydCh4
WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBzcXJ0KHhbMF1bM10pOworICAgIHJlc3VsdFsx
XVswXSA9IHNxcnQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3FydCh4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBzcXJ0KHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHNx
cnQoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc3FydCh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBzcXJ0KHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHNxcnQoeFsyXVsy
XSk7CisgICAgcmVzdWx0WzJdWzNdID0gc3FydCh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjR4MiBzcXJ0KGhhbGY0eDIgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IHNxcnQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc3FydCh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzcXJ0KHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IHNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc3FydCh4WzJdWzBdKTsK
KyAgICByZXN1bHRbMl1bMV0gPSBzcXJ0KHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IHNx
cnQoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc3FydCh4WzNdWzFdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjR4MyBzcXJ0KGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IHNxcnQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzcXJ0KHhbMF1bMl0pOworICAg
IHJlc3VsdFsxXVswXSA9IHNxcnQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3FydCh4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzcXJ0KHhbMV1bMl0pOworICAgIHJlc3VsdFsy
XVswXSA9IHNxcnQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc3FydCh4WzJdWzFdKTsK
KyAgICByZXN1bHRbMl1bMl0gPSBzcXJ0KHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IHNx
cnQoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc3FydCh4WzNdWzFdKTsKKyAgICByZXN1
bHRbM11bMl0gPSBzcXJ0KHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0
IHNxcnQoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gc3FydCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzcXJ0KHhbMF1bMV0pOworICAg
IHJlc3VsdFswXVsyXSA9IHNxcnQoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gc3FydCh4
WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzcXJ0KHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IHNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc3FydCh4WzFdWzJdKTsK
KyAgICByZXN1bHRbMV1bM10gPSBzcXJ0KHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHNx
cnQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc3FydCh4WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSBzcXJ0KHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHNxcnQoeFsyXVsz
XSk7CisgICAgcmVzdWx0WzNdWzBdID0gc3FydCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0g
PSBzcXJ0KHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IHNxcnQoeFszXVsyXSk7CisgICAg
cmVzdWx0WzNdWzNdID0gc3FydCh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjIgbG9nMihoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGxv
ZzIoeFswXSk7CisgICAgcmVzdWx0WzFdID0gbG9nMih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjMgbG9nMihoYWxmMyB4KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGxvZzIoeFswXSk7CisgICAgcmVzdWx0WzFdID0gbG9nMih4WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBsb2cyKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBsb2cyKGhh
bGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbG9nMih4WzBdKTsK
KyAgICByZXN1bHRbMV0gPSBsb2cyKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGxvZzIoeFsyXSk7
CisgICAgcmVzdWx0WzNdID0gbG9nMih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4MiBsb2cyKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGxvZzIoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbG9nMih4WzBdWzFdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBsb2cyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxv
ZzIoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgbG9nMihoYWxmMngz
IHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2cyKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxvZzIoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJd
ID0gbG9nMih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cyKHhbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IGxvZzIoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbG9nMih4
WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBsb2cyKGhhbGYyeDQgeCkg
eworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxvZzIoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gbG9nMih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBs
b2cyKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGxvZzIoeFswXVszXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gbG9nMih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2cyKHhbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxvZzIoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNd
ID0gbG9nMih4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBsb2cyKGhh
bGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxvZzIo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbG9nMih4WzBdWzFdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBsb2cyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxvZzIoeFsxXVsxXSk7
CisgICAgcmVzdWx0WzJdWzBdID0gbG9nMih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBs
b2cyKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIGxvZzIoaGFsZjN4
MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbG9nMih4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2cyKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IGxvZzIoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMih4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBsb2cyKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxvZzIo
eFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbG9nMih4WzJdWzBdKTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBsb2cyKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGxvZzIoeFsyXVsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgbG9nMihoYWxmM3g0IHgpIHsKKyAgICBo
YWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2cyKHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IGxvZzIoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbG9nMih4WzBd
WzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBsb2cyKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVsw
XSA9IGxvZzIoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9nMih4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBsb2cyKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGxvZzIo
eFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbG9nMih4WzJdWzBdKTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBsb2cyKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGxvZzIoeFsyXVsyXSk7
CisgICAgcmVzdWx0WzJdWzNdID0gbG9nMih4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjR4MiBsb2cyKGhhbGY0eDIgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGxvZzIoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbG9nMih4WzBd
WzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IGxvZzIoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbG9nMih4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSBsb2cyKHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGxvZzIo
eFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbG9nMih4WzNdWzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjR4MyBsb2cyKGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGxvZzIoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
bG9nMih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2cyKHhbMF1bMl0pOworICAgIHJl
c3VsdFsxXVswXSA9IGxvZzIoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9nMih4WzFd
WzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsb2cyKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVsw
XSA9IGxvZzIoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nMih4WzJdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMl0gPSBsb2cyKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGxvZzIo
eFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbG9nMih4WzNdWzFdKTsKKyAgICByZXN1bHRb
M11bMl0gPSBsb2cyKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IGxv
ZzIoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
bG9nMih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2cyKHhbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IGxvZzIoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gbG9nMih4WzBd
WzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IGxvZzIoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbG9nMih4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSBsb2cyKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGxvZzIo
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nMih4WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBsb2cyKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGxvZzIoeFsyXVszXSk7
CisgICAgcmVzdWx0WzNdWzBdID0gbG9nMih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBs
b2cyKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGxvZzIoeFszXVsyXSk7CisgICAgcmVz
dWx0WzNdWzNdID0gbG9nMih4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIg
bG9nMTAoaGFsZjIgeCkgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBsb2cx
MCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBsb2cxMCh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjMgbG9nMTAoaGFsZjMgeCkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBsb2cxMCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBsb2cxMCh4WzFdKTsKKyAgICBy
ZXN1bHRbMl0gPSBsb2cxMCh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgbG9n
MTAoaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBsb2cxMCh4
WzBdKTsKKyAgICByZXN1bHRbMV0gPSBsb2cxMCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBsb2cx
MCh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBsb2cxMCh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjJ4MiBsb2cxMChoYWxmMngyIHgpIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBsb2cxMCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2cx
MCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cxMCh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBsb2cxMCh4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4
MyBsb2cxMChoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBsb2cxMCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2cxMCh4WzBdWzFdKTsK
KyAgICByZXN1bHRbMF1bMl0gPSBsb2cxMCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBs
b2cxMCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2cxMCh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBsb2cxMCh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4NCBsb2cxMChoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBsb2cxMCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2cxMCh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2cxMCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10g
PSBsb2cxMCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cxMCh4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBsb2cxMCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsb2cx
MCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBsb2cxMCh4WzFdWzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjN4MiBsb2cxMChoYWxmM3gyIHgpIHsKKyAgICBoYWxmM3gyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2cxMCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBsb2cxMCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cxMCh4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBsb2cxMCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBs
b2cxMCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBsb2cxMCh4WzJdWzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBsb2cxMChoYWxmM3gzIHgpIHsKKyAgICBoYWxmM3gz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2cxMCh4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBsb2cxMCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2cxMCh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cxMCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBsb2cxMCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsb2cxMCh4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBsb2cxMCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBsb2cx
MCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBsb2cxMCh4WzJdWzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjN4NCBsb2cxMChoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2cxMCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBsb2cxMCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2cxMCh4WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSBsb2cxMCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBs
b2cxMCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2cxMCh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBsb2cxMCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBsb2cxMCh4
WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsb2cxMCh4WzJdWzBdKTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBsb2cxMCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBsb2cxMCh4WzJdWzJd
KTsKKyAgICByZXN1bHRbMl1bM10gPSBsb2cxMCh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjR4MiBsb2cxMChoYWxmNHgyIHgpIHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBsb2cxMCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2cx
MCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cxMCh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBsb2cxMCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsb2cxMCh4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBsb2cxMCh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11b
MF0gPSBsb2cxMCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBsb2cxMCh4WzNdWzFdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBsb2cxMChoYWxmNHgzIHgpIHsKKyAgICBo
YWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2cxMCh4WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBsb2cxMCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2cxMCh4
WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cxMCh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBsb2cxMCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsb2cxMCh4WzFdWzJd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSBsb2cxMCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBsb2cxMCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBsb2cxMCh4WzJdWzJdKTsKKyAg
ICByZXN1bHRbM11bMF0gPSBsb2cxMCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBsb2cx
MCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBsb2cxMCh4WzNdWzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjR4NCBsb2cxMChoYWxmNHg0IHgpIHsKKyAgICBoYWxmNHg0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2cxMCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBsb2cxMCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2cxMCh4WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSBsb2cxMCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBs
b2cxMCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2cxMCh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBsb2cxMCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBsb2cxMCh4
WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsb2cxMCh4WzJdWzBdKTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBsb2cxMCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBsb2cxMCh4WzJdWzJd
KTsKKyAgICByZXN1bHRbMl1bM10gPSBsb2cxMCh4WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0g
PSBsb2cxMCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBsb2cxMCh4WzNdWzFdKTsKKyAg
ICByZXN1bHRbM11bMl0gPSBsb2cxMCh4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBsb2cx
MCh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgZnJhYyhoYWxmMiB4KSB7
CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZyYWMoeFswXSk7CisgICAgcmVz
dWx0WzFdID0gZnJhYyh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgZnJhYyho
YWxmMyB4KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZyYWMoeFswXSk7
CisgICAgcmVzdWx0WzFdID0gZnJhYyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBmcmFjKHhbMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBmcmFjKGhhbGY0IHgpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZnJhYyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBm
cmFjKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGZyYWMoeFsyXSk7CisgICAgcmVzdWx0WzNdID0g
ZnJhYyh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBmcmFjKGhhbGYyeDIg
eCkgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZyYWMoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gZnJhYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBmcmFjKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZyYWMoeFsxXVsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgZnJhYyhoYWxmMngzIHgpIHsKKyAgICBoYWxmMngz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmcmFjKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGZyYWMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZnJhYyh4WzBdWzJdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBmcmFjKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZy
YWMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZnJhYyh4WzFdWzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjJ4NCBmcmFjKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGZyYWMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gZnJhYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmcmFjKHhbMF1bMl0pOworICAg
IHJlc3VsdFswXVszXSA9IGZyYWMoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZnJhYyh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmcmFjKHhbMV1bMV0pOworICAgIHJlc3VsdFsx
XVsyXSA9IGZyYWMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZnJhYyh4WzFdWzNdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBmcmFjKGhhbGYzeDIgeCkgeworICAgIGhh
bGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZyYWMoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gZnJhYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmcmFjKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZyYWMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gZnJhYyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmcmFjKHhbMl1bMV0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIGZyYWMoaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZnJhYyh4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBmcmFjKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZyYWMoeFswXVsyXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZnJhYyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBm
cmFjKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGZyYWMoeFsxXVsyXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gZnJhYyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmcmFjKHhbMl1b
MV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGZyYWMoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYzeDQgZnJhYyhoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBmcmFjKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZyYWMo
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZnJhYyh4WzBdWzJdKTsKKyAgICByZXN1bHRb
MF1bM10gPSBmcmFjKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGZyYWMoeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gZnJhYyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBm
cmFjKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGZyYWMoeFsxXVszXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gZnJhYyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmcmFjKHhbMl1b
MV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGZyYWMoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNd
ID0gZnJhYyh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBmcmFjKGhh
bGY0eDIgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZyYWMo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZnJhYyh4WzBdWzFdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBmcmFjKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZyYWMoeFsxXVsxXSk7
CisgICAgcmVzdWx0WzJdWzBdID0gZnJhYyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBm
cmFjKHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGZyYWMoeFszXVswXSk7CisgICAgcmVz
dWx0WzNdWzFdID0gZnJhYyh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4
MyBmcmFjKGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGZyYWMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZnJhYyh4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSBmcmFjKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGZyYWMo
eFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZnJhYyh4WzFdWzFdKTsKKyAgICByZXN1bHRb
MV1bMl0gPSBmcmFjKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGZyYWMoeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gZnJhYyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBm
cmFjKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGZyYWMoeFszXVswXSk7CisgICAgcmVz
dWx0WzNdWzFdID0gZnJhYyh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBmcmFjKHhbM11b
Ml0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IGZyYWMoaGFsZjR4NCB4KSB7Cisg
ICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZnJhYyh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBmcmFjKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZyYWMo
eFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZnJhYyh4WzBdWzNdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBmcmFjKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZyYWMoeFsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gZnJhYyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBm
cmFjKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGZyYWMoeFsyXVswXSk7CisgICAgcmVz
dWx0WzJdWzFdID0gZnJhYyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBmcmFjKHhbMl1b
Ml0pOworICAgIHJlc3VsdFsyXVszXSA9IGZyYWMoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBd
ID0gZnJhYyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBmcmFjKHhbM11bMV0pOworICAg
IHJlc3VsdFszXVsyXSA9IGZyYWMoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gZnJhYyh4
WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgZXhwMihoYWxmMiB4KSB7Cisg
ICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGV4cDIoeFswXSk7CisgICAgcmVzdWx0
WzFdID0gZXhwMih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgZXhwMihoYWxm
MyB4KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGV4cDIoeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gZXhwMih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBleHAyKHhbMl0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBleHAyKGhhbGY0IHgpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZXhwMih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBleHAy
KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGV4cDIoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gZXhw
Mih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBleHAyKGhhbGYyeDIgeCkg
eworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGV4cDIoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gZXhwMih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBl
eHAyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cDIoeFsxXVsxXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgZXhwMihoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBleHAyKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IGV4cDIoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZXhwMih4WzBdWzJdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBleHAyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cDIo
eFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZXhwMih4WzFdWzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjJ4NCBleHAyKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGV4cDIoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
ZXhwMih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBleHAyKHhbMF1bMl0pOworICAgIHJl
c3VsdFswXVszXSA9IGV4cDIoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZXhwMih4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBleHAyKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IGV4cDIoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZXhwMih4WzFdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBleHAyKGhhbGYzeDIgeCkgeworICAgIGhhbGYz
eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGV4cDIoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gZXhwMih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBleHAyKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IGV4cDIoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
ZXhwMih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBleHAyKHhbMl1bMV0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIGV4cDIoaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZXhwMih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBleHAyKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGV4cDIoeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gZXhwMih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBleHAy
KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGV4cDIoeFsxXVsyXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gZXhwMih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBleHAyKHhbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IGV4cDIoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzeDQgZXhwMihoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBleHAyKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGV4cDIoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZXhwMih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1b
M10gPSBleHAyKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGV4cDIoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gZXhwMih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBleHAy
KHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGV4cDIoeFsxXVszXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gZXhwMih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBleHAyKHhbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IGV4cDIoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0g
ZXhwMih4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBleHAyKGhhbGY0
eDIgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGV4cDIoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZXhwMih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBleHAyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cDIoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gZXhwMih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBleHAy
KHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGV4cDIoeFszXVswXSk7CisgICAgcmVzdWx0
WzNdWzFdID0gZXhwMih4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBl
eHAyKGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IGV4cDIoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZXhwMih4WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBleHAyKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGV4cDIoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZXhwMih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBleHAyKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGV4cDIoeFsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gZXhwMih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBleHAy
KHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGV4cDIoeFszXVswXSk7CisgICAgcmVzdWx0
WzNdWzFdID0gZXhwMih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBleHAyKHhbM11bMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IGV4cDIoaGFsZjR4NCB4KSB7CisgICAg
aGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZXhwMih4WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBleHAyKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGV4cDIoeFsw
XVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZXhwMih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBleHAyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cDIoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gZXhwMih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBleHAy
KHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGV4cDIoeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gZXhwMih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBleHAyKHhbMl1bMl0p
OworICAgIHJlc3VsdFsyXVszXSA9IGV4cDIoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0g
ZXhwMih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBleHAyKHhbM11bMV0pOworICAgIHJl
c3VsdFszXVsyXSA9IGV4cDIoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gZXhwMih4WzNd
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgZGVncmVlcyhoYWxmMiB4KSB7Cisg
ICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRlZ3JlZXMoeFswXSk7CisgICAgcmVz
dWx0WzFdID0gZGVncmVlcyh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgZGVn
cmVlcyhoYWxmMyB4KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRlZ3Jl
ZXMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZGVncmVlcyh4WzFdKTsKKyAgICByZXN1bHRbMl0g
PSBkZWdyZWVzKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBkZWdyZWVzKGhh
bGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGVncmVlcyh4WzBd
KTsKKyAgICByZXN1bHRbMV0gPSBkZWdyZWVzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGRlZ3Jl
ZXMoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gZGVncmVlcyh4WzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjJ4MiBkZWdyZWVzKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGRlZ3JlZXMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gZGVncmVlcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZWdyZWVzKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IGRlZ3JlZXMoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyeDMgZGVncmVlcyhoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBkZWdyZWVzKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGRlZ3JlZXMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGVncmVlcyh4WzBdWzJdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBkZWdyZWVzKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IGRlZ3JlZXMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGVncmVlcyh4WzFdWzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBkZWdyZWVzKGhhbGYyeDQgeCkgeworICAg
IGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRlZ3JlZXMoeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gZGVncmVlcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBk
ZWdyZWVzKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGRlZ3JlZXMoeFswXVszXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gZGVncmVlcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBk
ZWdyZWVzKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRlZ3JlZXMoeFsxXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzNdID0gZGVncmVlcyh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjN4MiBkZWdyZWVzKGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGRlZ3JlZXMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGVn
cmVlcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZWdyZWVzKHhbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IGRlZ3JlZXMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGVn
cmVlcyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZWdyZWVzKHhbMl1bMV0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIGRlZ3JlZXMoaGFsZjN4MyB4KSB7CisgICAgaGFs
ZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGVncmVlcyh4WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBkZWdyZWVzKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRlZ3Jl
ZXMoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGVncmVlcyh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBkZWdyZWVzKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRlZ3Jl
ZXMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGVncmVlcyh4WzJdWzBdKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBkZWdyZWVzKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGRlZ3Jl
ZXMoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgZGVncmVlcyhoYWxm
M3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZWdyZWVz
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRlZ3JlZXMoeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gZGVncmVlcyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBkZWdyZWVz
KHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGRlZ3JlZXMoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gZGVncmVlcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZWdyZWVz
KHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGRlZ3JlZXMoeFsxXVszXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gZGVncmVlcyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZWdyZWVz
KHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGRlZ3JlZXMoeFsyXVsyXSk7CisgICAgcmVz
dWx0WzJdWzNdID0gZGVncmVlcyh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjR4MiBkZWdyZWVzKGhhbGY0eDIgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGRlZ3JlZXMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGVncmVlcyh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZWdyZWVzKHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IGRlZ3JlZXMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGVncmVlcyh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZWdyZWVzKHhbMl1bMV0pOworICAgIHJlc3Vs
dFszXVswXSA9IGRlZ3JlZXMoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGVncmVlcyh4
WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBkZWdyZWVzKGhhbGY0eDMg
eCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRlZ3JlZXMoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGVncmVlcyh4WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSBkZWdyZWVzKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGRlZ3JlZXMoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGVncmVlcyh4WzFdWzFdKTsKKyAgICByZXN1bHRb
MV1bMl0gPSBkZWdyZWVzKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGRlZ3JlZXMoeFsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGVncmVlcyh4WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBkZWdyZWVzKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGRlZ3JlZXMoeFsz
XVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGVncmVlcyh4WzNdWzFdKTsKKyAgICByZXN1bHRb
M11bMl0gPSBkZWdyZWVzKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0
IGRlZ3JlZXMoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gZGVncmVlcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZWdyZWVzKHhbMF1b
MV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRlZ3JlZXMoeFswXVsyXSk7CisgICAgcmVzdWx0WzBd
WzNdID0gZGVncmVlcyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZWdyZWVzKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRlZ3JlZXMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gZGVncmVlcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBkZWdyZWVzKHhbMV1b
M10pOworICAgIHJlc3VsdFsyXVswXSA9IGRlZ3JlZXMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gZGVncmVlcyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZWdyZWVzKHhbMl1b
Ml0pOworICAgIHJlc3VsdFsyXVszXSA9IGRlZ3JlZXMoeFsyXVszXSk7CisgICAgcmVzdWx0WzNd
WzBdID0gZGVncmVlcyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBkZWdyZWVzKHhbM11b
MV0pOworICAgIHJlc3VsdFszXVsyXSA9IGRlZ3JlZXMoeFszXVsyXSk7CisgICAgcmVzdWx0WzNd
WzNdID0gZGVncmVlcyh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgcmFk
aWFucyhoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHJhZGlh
bnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gcmFkaWFucyh4WzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgcmFkaWFucyhoYWxmMyB4KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IHJhZGlhbnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gcmFkaWFucyh4WzFd
KTsKKyAgICByZXN1bHRbMl0gPSByYWRpYW5zKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCByYWRpYW5zKGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gcmFkaWFucyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSByYWRpYW5zKHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IHJhZGlhbnMoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gcmFkaWFucyh4WzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiByYWRpYW5zKGhhbGYyeDIgeCkgewor
ICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHJhZGlhbnMoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gcmFkaWFucyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSByYWRpYW5zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHJhZGlhbnMoeFsxXVsxXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgcmFkaWFucyhoYWxmMngzIHgpIHsKKyAg
ICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByYWRpYW5zKHhbMF1bMF0pOwor
ICAgIHJlc3VsdFswXVsxXSA9IHJhZGlhbnMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0g
cmFkaWFucyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByYWRpYW5zKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHJhZGlhbnMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
cmFkaWFucyh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCByYWRpYW5z
KGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHJh
ZGlhbnMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcmFkaWFucyh4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSByYWRpYW5zKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHJh
ZGlhbnMoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcmFkaWFucyh4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSByYWRpYW5zKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHJh
ZGlhbnMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gcmFkaWFucyh4WzFdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiByYWRpYW5zKGhhbGYzeDIgeCkgeworICAgIGhh
bGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHJhZGlhbnMoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gcmFkaWFucyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByYWRp
YW5zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHJhZGlhbnMoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gcmFkaWFucyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByYWRp
YW5zKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIHJhZGlhbnMoaGFs
ZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcmFkaWFu
cyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByYWRpYW5zKHhbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IHJhZGlhbnMoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcmFkaWFu
cyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByYWRpYW5zKHhbMV1bMV0pOworICAgIHJl
c3VsdFsxXVsyXSA9IHJhZGlhbnMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcmFkaWFu
cyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByYWRpYW5zKHhbMl1bMV0pOworICAgIHJl
c3VsdFsyXVsyXSA9IHJhZGlhbnMoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzeDQgcmFkaWFucyhoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSByYWRpYW5zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHJhZGlhbnMo
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcmFkaWFucyh4WzBdWzJdKTsKKyAgICByZXN1
bHRbMF1bM10gPSByYWRpYW5zKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHJhZGlhbnMo
eFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcmFkaWFucyh4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSByYWRpYW5zKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHJhZGlhbnMo
eFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcmFkaWFucyh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSByYWRpYW5zKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHJhZGlhbnMo
eFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gcmFkaWFucyh4WzJdWzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjR4MiByYWRpYW5zKGhhbGY0eDIgeCkgeworICAgIGhhbGY0eDIg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHJhZGlhbnMoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gcmFkaWFucyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByYWRpYW5zKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHJhZGlhbnMoeFsxXVsxXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gcmFkaWFucyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByYWRpYW5zKHhb
Ml1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IHJhZGlhbnMoeFszXVswXSk7CisgICAgcmVzdWx0
WzNdWzFdID0gcmFkaWFucyh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4
MyByYWRpYW5zKGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IHJhZGlhbnMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcmFkaWFucyh4WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByYWRpYW5zKHhbMF1bMl0pOworICAgIHJlc3VsdFsx
XVswXSA9IHJhZGlhbnMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcmFkaWFucyh4WzFd
WzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByYWRpYW5zKHhbMV1bMl0pOworICAgIHJlc3VsdFsy
XVswXSA9IHJhZGlhbnMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcmFkaWFucyh4WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSByYWRpYW5zKHhbMl1bMl0pOworICAgIHJlc3VsdFsz
XVswXSA9IHJhZGlhbnMoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gcmFkaWFucyh4WzNd
WzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSByYWRpYW5zKHhbM11bMl0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNHg0IHJhZGlhbnMoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcmFkaWFucyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSByYWRpYW5zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHJhZGlhbnMoeFswXVsy
XSk7CisgICAgcmVzdWx0WzBdWzNdID0gcmFkaWFucyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSByYWRpYW5zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHJhZGlhbnMoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzFdWzJdID0gcmFkaWFucyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1b
M10gPSByYWRpYW5zKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHJhZGlhbnMoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gcmFkaWFucyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSByYWRpYW5zKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHJhZGlhbnMoeFsyXVsz
XSk7CisgICAgcmVzdWx0WzNdWzBdID0gcmFkaWFucyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11b
MV0gPSByYWRpYW5zKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IHJhZGlhbnMoeFszXVsy
XSk7CisgICAgcmVzdWx0WzNdWzNdID0gcmFkaWFucyh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjIgcmNwKGhhbGYyIHgpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gcmNwKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHJjcCh4WzFdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjMgcmNwKGhhbGYzIHgpIHsKKyAgICBoYWxmMyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gcmNwKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHJjcCh4WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSByY3AoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IHJj
cChoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHJjcCh4WzBd
KTsKKyAgICByZXN1bHRbMV0gPSByY3AoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gcmNwKHhbMl0p
OworICAgIHJlc3VsdFszXSA9IHJjcCh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4MiByY3AoaGFsZjJ4MiB4KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gcmNwKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHJjcCh4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSByY3AoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcmNwKHhb
MV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIHJjcChoYWxmMngzIHgpIHsK
KyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByY3AoeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gcmNwKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHJjcCh4
WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByY3AoeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gcmNwKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHJjcCh4WzFdWzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCByY3AoaGFsZjJ4NCB4KSB7CisgICAgaGFsZjJ4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcmNwKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IHJjcCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByY3AoeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzBdWzNdID0gcmNwKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHJjcCh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByY3AoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gcmNwKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHJjcCh4WzFdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiByY3AoaGFsZjN4MiB4KSB7CisgICAgaGFsZjN4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcmNwKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IHJjcCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByY3AoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gcmNwKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHJjcCh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByY3AoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzeDMgcmNwKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IHJjcCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByY3Ao
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcmNwKHhbMF1bMl0pOworICAgIHJlc3VsdFsx
XVswXSA9IHJjcCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByY3AoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gcmNwKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IHJjcCh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByY3AoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJd
WzJdID0gcmNwKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IHJjcCho
YWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByY3Ao
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcmNwKHhbMF1bMV0pOworICAgIHJlc3VsdFsw
XVsyXSA9IHJjcCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSByY3AoeFswXVszXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gcmNwKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHJjcCh4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByY3AoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFd
WzNdID0gcmNwKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHJjcCh4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSByY3AoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gcmNwKHhb
Ml1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHJjcCh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MiByY3AoaGFsZjR4MiB4KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gcmNwKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHJjcCh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByY3AoeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gcmNwKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHJjcCh4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSByY3AoeFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gcmNwKHhb
M11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IHJjcCh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MyByY3AoaGFsZjR4MyB4KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gcmNwKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHJjcCh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByY3AoeFswXVsyXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gcmNwKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHJjcCh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSByY3AoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcmNwKHhb
Ml1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHJjcCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSByY3AoeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gcmNwKHhbM11bMF0pOworICAg
IHJlc3VsdFszXVsxXSA9IHJjcCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSByY3AoeFsz
XVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgcmNwKGhhbGY0eDQgeCkgewor
ICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHJjcCh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSByY3AoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcmNwKHhb
MF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHJjcCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSByY3AoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcmNwKHhbMV1bMV0pOworICAg
IHJlc3VsdFsxXVsyXSA9IHJjcCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSByY3AoeFsx
XVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcmNwKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IHJjcCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSByY3AoeFsyXVsyXSk7CisgICAg
cmVzdWx0WzJdWzNdID0gcmNwKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IHJjcCh4WzNd
WzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSByY3AoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJd
ID0gcmNwKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IHJjcCh4WzNdWzNdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjIgcnNxcnQoaGFsZjIgeCkgeworICAgIGhhbGYyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSByc3FydCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSByc3FydCh4
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgcnNxcnQoaGFsZjMgeCkgeworICAg
IGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSByc3FydCh4WzBdKTsKKyAgICByZXN1bHRb
MV0gPSByc3FydCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSByc3FydCh4WzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgcnNxcnQoaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSByc3FydCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSByc3FydCh4WzFd
KTsKKyAgICByZXN1bHRbMl0gPSByc3FydCh4WzJdKTsKKyAgICByZXN1bHRbM10gPSByc3FydCh4
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiByc3FydChoYWxmMngyIHgpIHsK
KyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByc3FydCh4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSByc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBy
c3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByc3FydCh4WzFdWzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyByc3FydChoYWxmMngzIHgpIHsKKyAgICBoYWxmMngz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByc3FydCh4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSByc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByc3FydCh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSByc3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSByc3FydCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByc3FydCh4WzFdWzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCByc3FydChoYWxmMng0IHgpIHsKKyAgICBoYWxm
Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByc3FydCh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSByc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByc3FydCh4WzBd
WzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSByc3FydCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSByc3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByc3FydCh4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSByc3FydCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBy
c3FydCh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiByc3FydChoYWxm
M3gyIHgpIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByc3FydCh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSByc3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByc3FydCh4WzFdWzFd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSByc3FydCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSByc3FydCh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyByc3FydCho
YWxmM3gzIHgpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByc3Fy
dCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByc3FydCh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSByc3FydCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByc3FydCh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByc3FydCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSByc3FydCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByc3FydCh4WzJdWzBdKTsK
KyAgICByZXN1bHRbMl1bMV0gPSByc3FydCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBy
c3FydCh4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCByc3FydChoYWxm
M3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByc3FydCh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSByc3FydCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSByc3FydCh4WzBdWzNd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSByc3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSByc3FydCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByc3FydCh4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSByc3FydCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByc3Fy
dCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByc3FydCh4WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSByc3FydCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSByc3FydCh4WzJd
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiByc3FydChoYWxmNHgyIHgpIHsK
KyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByc3FydCh4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSByc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBy
c3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByc3FydCh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSByc3FydCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByc3FydCh4
WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSByc3FydCh4WzNdWzBdKTsKKyAgICByZXN1bHRb
M11bMV0gPSByc3FydCh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBy
c3FydChoYWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSByc3FydCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByc3FydCh4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSByc3FydCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByc3Fy
dCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByc3FydCh4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSByc3FydCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByc3FydCh4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByc3FydCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSByc3FydCh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSByc3FydCh4WzNdWzBdKTsK
KyAgICByZXN1bHRbM11bMV0gPSByc3FydCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBy
c3FydCh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCByc3FydChoYWxm
NHg0IHgpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByc3FydCh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSByc3FydCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSByc3FydCh4WzBdWzNd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSByc3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSByc3FydCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByc3FydCh4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSByc3FydCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByc3Fy
dCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByc3FydCh4WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSByc3FydCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSByc3FydCh4WzJd
WzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSByc3FydCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11b
MV0gPSByc3FydCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSByc3FydCh4WzNdWzJdKTsK
KyAgICByZXN1bHRbM11bM10gPSByc3FydCh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjIgc2F0dXJhdGUoaGFsZjIgeCkgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBzYXR1cmF0ZSh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzYXR1cmF0ZSh4WzFdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgc2F0dXJhdGUoaGFsZjMgeCkgeworICAgIGhh
bGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBzYXR1cmF0ZSh4WzBdKTsKKyAgICByZXN1bHRb
MV0gPSBzYXR1cmF0ZSh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzYXR1cmF0ZSh4WzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgc2F0dXJhdGUoaGFsZjQgeCkgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBzYXR1cmF0ZSh4WzBdKTsKKyAgICByZXN1bHRbMV0g
PSBzYXR1cmF0ZSh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzYXR1cmF0ZSh4WzJdKTsKKyAgICBy
ZXN1bHRbM10gPSBzYXR1cmF0ZSh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4
MiBzYXR1cmF0ZShoYWxmMngyIHgpIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBzYXR1cmF0ZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzYXR1cmF0ZSh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzYXR1cmF0ZSh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBzYXR1cmF0ZSh4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4MyBzYXR1cmF0ZShoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBzYXR1cmF0ZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzYXR1cmF0
ZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzYXR1cmF0ZSh4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBzYXR1cmF0ZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzYXR1
cmF0ZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzYXR1cmF0ZSh4WzFdWzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBzYXR1cmF0ZShoYWxmMng0IHgpIHsKKyAgICBo
YWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzYXR1cmF0ZSh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBzYXR1cmF0ZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBz
YXR1cmF0ZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBzYXR1cmF0ZSh4WzBdWzNdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBzYXR1cmF0ZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBzYXR1cmF0ZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzYXR1cmF0ZSh4WzFdWzJd
KTsKKyAgICByZXN1bHRbMV1bM10gPSBzYXR1cmF0ZSh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjN4MiBzYXR1cmF0ZShoYWxmM3gyIHgpIHsKKyAgICBoYWxmM3gyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBzYXR1cmF0ZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBzYXR1cmF0ZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzYXR1cmF0ZSh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzYXR1cmF0ZSh4WzFdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBzYXR1cmF0ZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzYXR1cmF0ZSh4
WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBzYXR1cmF0ZShoYWxmM3gz
IHgpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzYXR1cmF0ZSh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzYXR1cmF0ZSh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBzYXR1cmF0ZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzYXR1cmF0
ZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzYXR1cmF0ZSh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBzYXR1cmF0ZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzYXR1
cmF0ZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzYXR1cmF0ZSh4WzJdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMl0gPSBzYXR1cmF0ZSh4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjN4NCBzYXR1cmF0ZShoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBzYXR1cmF0ZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBz
YXR1cmF0ZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzYXR1cmF0ZSh4WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSBzYXR1cmF0ZSh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBzYXR1cmF0ZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzYXR1cmF0ZSh4WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSBzYXR1cmF0ZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1b
M10gPSBzYXR1cmF0ZSh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzYXR1cmF0ZSh4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzYXR1cmF0ZSh4WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBzYXR1cmF0ZSh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBzYXR1cmF0ZSh4
WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBzYXR1cmF0ZShoYWxmNHgy
IHgpIHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzYXR1cmF0ZSh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzYXR1cmF0ZSh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBzYXR1cmF0ZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzYXR1cmF0
ZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzYXR1cmF0ZSh4WzJdWzBdKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBzYXR1cmF0ZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzYXR1
cmF0ZSh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzYXR1cmF0ZSh4WzNdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBzYXR1cmF0ZShoYWxmNHgzIHgpIHsKKyAgICBo
YWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzYXR1cmF0ZSh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBzYXR1cmF0ZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBz
YXR1cmF0ZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzYXR1cmF0ZSh4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBzYXR1cmF0ZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBzYXR1cmF0ZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzYXR1cmF0ZSh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBzYXR1cmF0ZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBzYXR1cmF0ZSh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzYXR1cmF0ZSh4WzNd
WzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzYXR1cmF0ZSh4WzNdWzFdKTsKKyAgICByZXN1bHRb
M11bMl0gPSBzYXR1cmF0ZSh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4
NCBzYXR1cmF0ZShoYWxmNHg0IHgpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBzYXR1cmF0ZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzYXR1cmF0ZSh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzYXR1cmF0ZSh4WzBdWzJdKTsKKyAgICByZXN1
bHRbMF1bM10gPSBzYXR1cmF0ZSh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzYXR1cmF0
ZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzYXR1cmF0ZSh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBzYXR1cmF0ZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzYXR1
cmF0ZSh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzYXR1cmF0ZSh4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSBzYXR1cmF0ZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBz
YXR1cmF0ZSh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBzYXR1cmF0ZSh4WzJdWzNdKTsK
KyAgICByZXN1bHRbM11bMF0gPSBzYXR1cmF0ZSh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0g
PSBzYXR1cmF0ZSh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBzYXR1cmF0ZSh4WzNdWzJd
KTsKKyAgICByZXN1bHRbM11bM10gPSBzYXR1cmF0ZSh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjIgZGR4X2NvYXJzZShoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGRkeF9jb2Fyc2UoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZGR4X2Nv
YXJzZSh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgZGR4X2NvYXJzZShoYWxm
MyB4KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRkeF9jb2Fyc2UoeFsw
XSk7CisgICAgcmVzdWx0WzFdID0gZGR4X2NvYXJzZSh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBk
ZHhfY29hcnNlKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBkZHhfY29hcnNl
KGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR4X2NvYXJz
ZSh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBkZHhfY29hcnNlKHhbMV0pOworICAgIHJlc3VsdFsy
XSA9IGRkeF9jb2Fyc2UoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gZGR4X2NvYXJzZSh4WzNdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBkZHhfY29hcnNlKGhhbGYyeDIgeCkgewor
ICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeF9jb2Fyc2UoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBkZHhfY29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeF9jb2Fy
c2UoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgZGR4X2NvYXJzZSho
YWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhf
Y29hcnNlKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeF9jb2Fyc2UoeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gZGR4X2NvYXJzZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBkZHhfY29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeF9jb2Fyc2Uo
eFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4X2NvYXJzZSh4WzFdWzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBkZHhfY29hcnNlKGhhbGYyeDQgeCkgeworICAgIGhh
bGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeF9jb2Fyc2UoeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gZGR4X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBkZHhfY29hcnNlKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGRkeF9jb2Fyc2UoeFsw
XVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBkZHhfY29hcnNlKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRkeF9j
b2Fyc2UoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR4X2NvYXJzZSh4WzFdWzNdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBkZHhfY29hcnNlKGhhbGYzeDIgeCkgewor
ICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeF9jb2Fyc2UoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBkZHhfY29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeF9jb2Fy
c2UoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR4X2NvYXJzZSh4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSBkZHhfY29hcnNlKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmM3gzIGRkeF9jb2Fyc2UoaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gZGR4X2NvYXJzZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBkZHhfY29hcnNlKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeF9jb2Fyc2Uo
eFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2NvYXJzZSh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBkZHhfY29hcnNlKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRk
eF9jb2Fyc2UoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR4X2NvYXJzZSh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHhfY29hcnNlKHhbMl1bMV0pOworICAgIHJlc3VsdFsy
XVsyXSA9IGRkeF9jb2Fyc2UoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
eDQgZGR4X2NvYXJzZShoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBkZHhfY29hcnNlKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeF9j
b2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR4X2NvYXJzZSh4WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSBkZHhfY29hcnNlKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVsw
XSA9IGRkeF9jb2Fyc2UoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4X2NvYXJzZSh4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHhfY29hcnNlKHhbMV1bMl0pOworICAgIHJl
c3VsdFsxXVszXSA9IGRkeF9jb2Fyc2UoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR4
X2NvYXJzZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHhfY29hcnNlKHhbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IGRkeF9jb2Fyc2UoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJd
WzNdID0gZGR4X2NvYXJzZSh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4
MiBkZHhfY29hcnNlKGhhbGY0eDIgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGRkeF9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4X2Nv
YXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHhfY29hcnNlKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGRkeF9jb2Fyc2UoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gZGR4X2NvYXJzZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHhfY29hcnNlKHhb
Ml1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGRkeF9jb2Fyc2UoeFszXVswXSk7CisgICAgcmVz
dWx0WzNdWzFdID0gZGR4X2NvYXJzZSh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjR4MyBkZHhfY29hcnNlKGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGRkeF9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
ZGR4X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHhfY29hcnNlKHhbMF1b
Ml0pOworICAgIHJlc3VsdFsxXVswXSA9IGRkeF9jb2Fyc2UoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gZGR4X2NvYXJzZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHhfY29h
cnNlKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeF9jb2Fyc2UoeFsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gZGR4X2NvYXJzZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0g
PSBkZHhfY29hcnNlKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGRkeF9jb2Fyc2UoeFsz
XVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGR4X2NvYXJzZSh4WzNdWzFdKTsKKyAgICByZXN1
bHRbM11bMl0gPSBkZHhfY29hcnNlKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNHg0IGRkeF9jb2Fyc2UoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gZGR4X2NvYXJzZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBk
ZHhfY29hcnNlKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeF9jb2Fyc2UoeFswXVsy
XSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR4X2NvYXJzZSh4WzBdWzNdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBkZHhfY29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeF9jb2Fy
c2UoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4X2NvYXJzZSh4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSBkZHhfY29hcnNlKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9
IGRkeF9jb2Fyc2UoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR4X2NvYXJzZSh4WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHhfY29hcnNlKHhbMl1bMl0pOworICAgIHJlc3Vs
dFsyXVszXSA9IGRkeF9jb2Fyc2UoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZGR4X2Nv
YXJzZSh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBkZHhfY29hcnNlKHhbM11bMV0pOwor
ICAgIHJlc3VsdFszXVsyXSA9IGRkeF9jb2Fyc2UoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNd
ID0gZGR4X2NvYXJzZSh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgZGR4
X2ZpbmUoaGFsZjIgeCkgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBkZHhf
ZmluZSh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBkZHhfZmluZSh4WzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjMgZGR4X2ZpbmUoaGFsZjMgeCkgeworICAgIGhhbGYzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBkZHhfZmluZSh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBkZHhfZmlu
ZSh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBkZHhfZmluZSh4WzJdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgZGR4X2ZpbmUoaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBkZHhfZmluZSh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBkZHhfZmluZSh4
WzFdKTsKKyAgICByZXN1bHRbMl0gPSBkZHhfZmluZSh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBk
ZHhfZmluZSh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBkZHhfZmluZSho
YWxmMngyIHgpIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhf
ZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHhfZmluZSh4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBkZHhfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBk
ZHhfZmluZSh4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBkZHhfZmlu
ZShoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBk
ZHhfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHhfZmluZSh4WzBdWzFdKTsK
KyAgICByZXN1bHRbMF1bMl0gPSBkZHhfZmluZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBkZHhfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHhfZmluZSh4WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHhfZmluZSh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjJ4NCBkZHhfZmluZShoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBkZHhfZmluZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHhfZmluZSh4WzBd
WzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBkZHhfZmluZSh4WzBdWzNdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBkZHhfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHhfZmluZSh4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHhfZmluZSh4WzFdWzJdKTsKKyAgICByZXN1
bHRbMV1bM10gPSBkZHhfZmluZSh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjN4MiBkZHhfZmluZShoYWxmM3gyIHgpIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBkZHhfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHhfZmlu
ZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHhfZmluZSh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBkZHhfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHhf
ZmluZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHhfZmluZSh4WzJdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBkZHhfZmluZShoYWxmM3gzIHgpIHsKKyAgICBo
YWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhfZmluZSh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBkZHhfZmluZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBk
ZHhfZmluZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHhfZmluZSh4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBkZHhfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBkZHhfZmluZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHhfZmluZSh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHhfZmluZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBkZHhfZmluZSh4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCBk
ZHhfZmluZShoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBkZHhfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHhfZmluZSh4WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHhfZmluZSh4WzBdWzJdKTsKKyAgICByZXN1bHRb
MF1bM10gPSBkZHhfZmluZSh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHhfZmluZSh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHhfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBkZHhfZmluZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBkZHhfZmlu
ZSh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHhfZmluZSh4WzJdWzBdKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBkZHhfZmluZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHhf
ZmluZSh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBkZHhfZmluZSh4WzJdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBkZHhfZmluZShoYWxmNHgyIHgpIHsKKyAgICBo
YWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhfZmluZSh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBkZHhfZmluZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBk
ZHhfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHhfZmluZSh4WzFdWzFdKTsK
KyAgICByZXN1bHRbMl1bMF0gPSBkZHhfZmluZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBkZHhfZmluZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBkZHhfZmluZSh4WzNdWzBd
KTsKKyAgICByZXN1bHRbM11bMV0gPSBkZHhfZmluZSh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MyBkZHhfZmluZShoYWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBkZHhfZmluZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHhfZmluZSh4WzBd
WzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHhfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBkZHhfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHhfZmluZSh4
WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHhfZmluZSh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBkZHhfZmluZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHhfZmlu
ZSh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBkZHhfZmluZSh4WzNdWzBdKTsKKyAgICBy
ZXN1bHRbM11bMV0gPSBkZHhfZmluZSh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBkZHhf
ZmluZSh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBkZHhfZmluZSho
YWxmNHg0IHgpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhf
ZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHhfZmluZSh4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSBkZHhfZmluZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBk
ZHhfZmluZSh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHhfZmluZSh4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBkZHhfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBkZHhfZmluZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBkZHhfZmluZSh4WzFdWzNd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHhfZmluZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1b
MV0gPSBkZHhfZmluZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHhfZmluZSh4WzJd
WzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBkZHhfZmluZSh4WzJdWzNdKTsKKyAgICByZXN1bHRb
M11bMF0gPSBkZHhfZmluZSh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBkZHhfZmluZSh4
WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBkZHhfZmluZSh4WzNdWzJdKTsKKyAgICByZXN1
bHRbM11bM10gPSBkZHhfZmluZSh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjIgZGR5X2NvYXJzZShoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGRkeV9jb2Fyc2UoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZGR5X2NvYXJzZSh4WzFdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgZGR5X2NvYXJzZShoYWxmMyB4KSB7CisgICAg
aGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRkeV9jb2Fyc2UoeFswXSk7CisgICAgcmVz
dWx0WzFdID0gZGR5X2NvYXJzZSh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBkZHlfY29hcnNlKHhb
Ml0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBkZHlfY29hcnNlKGhhbGY0IHgpIHsK
KyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR5X2NvYXJzZSh4WzBdKTsKKyAg
ICByZXN1bHRbMV0gPSBkZHlfY29hcnNlKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGRkeV9jb2Fy
c2UoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gZGR5X2NvYXJzZSh4WzNdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjJ4MiBkZHlfY29hcnNlKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeV9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gZGR5X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlf
Y29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeV9jb2Fyc2UoeFsxXVsxXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgZGR5X2NvYXJzZShoYWxmMngzIHgpIHsK
KyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfY29hcnNlKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeV9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gZGR5X2NvYXJzZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlfY29h
cnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeV9jb2Fyc2UoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gZGR5X2NvYXJzZSh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjJ4NCBkZHlfY29hcnNlKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGRkeV9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gZGR5X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHlfY29hcnNl
KHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGRkeV9jb2Fyc2UoeFswXVszXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gZGR5X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBk
ZHlfY29hcnNlKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRkeV9jb2Fyc2UoeFsxXVsy
XSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR5X2NvYXJzZSh4WzFdWzNdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjN4MiBkZHlfY29hcnNlKGhhbGYzeDIgeCkgeworICAgIGhhbGYzeDIg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeV9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gZGR5X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlf
Y29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeV9jb2Fyc2UoeFsxXVsxXSk7
CisgICAgcmVzdWx0WzJdWzBdID0gZGR5X2NvYXJzZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1b
MV0gPSBkZHlfY29hcnNlKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gz
IGRkeV9jb2Fyc2UoaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gZGR5X2NvYXJzZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfY29h
cnNlKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeV9jb2Fyc2UoeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gZGR5X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBkZHlfY29hcnNlKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRkeV9jb2Fyc2UoeFsx
XVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR5X2NvYXJzZSh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBkZHlfY29hcnNlKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGRkeV9j
b2Fyc2UoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgZGR5X2NvYXJz
ZShoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBk
ZHlfY29hcnNlKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeV9jb2Fyc2UoeFswXVsx
XSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR5X2NvYXJzZSh4WzBdWzJdKTsKKyAgICByZXN1bHRb
MF1bM10gPSBkZHlfY29hcnNlKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGRkeV9jb2Fy
c2UoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5X2NvYXJzZSh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBkZHlfY29hcnNlKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9
IGRkeV9jb2Fyc2UoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR5X2NvYXJzZSh4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHlfY29hcnNlKHhbMl1bMV0pOworICAgIHJlc3Vs
dFsyXVsyXSA9IGRkeV9jb2Fyc2UoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gZGR5X2Nv
YXJzZSh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBkZHlfY29hcnNl
KGhhbGY0eDIgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRk
eV9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR5X2NvYXJzZSh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlfY29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IGRkeV9jb2Fyc2UoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR5X2NvYXJz
ZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHlfY29hcnNlKHhbMl1bMV0pOworICAg
IHJlc3VsdFszXVswXSA9IGRkeV9jb2Fyc2UoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0g
ZGR5X2NvYXJzZSh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBkZHlf
Y29hcnNlKGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGRkeV9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR5X2NvYXJzZSh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHlfY29hcnNlKHhbMF1bMl0pOworICAgIHJl
c3VsdFsxXVswXSA9IGRkeV9jb2Fyc2UoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5
X2NvYXJzZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHlfY29hcnNlKHhbMV1bMl0p
OworICAgIHJlc3VsdFsyXVswXSA9IGRkeV9jb2Fyc2UoeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gZGR5X2NvYXJzZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHlfY29hcnNl
KHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGRkeV9jb2Fyc2UoeFszXVswXSk7CisgICAg
cmVzdWx0WzNdWzFdID0gZGR5X2NvYXJzZSh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBk
ZHlfY29hcnNlKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IGRkeV9j
b2Fyc2UoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gZGR5X2NvYXJzZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfY29hcnNlKHhb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeV9jb2Fyc2UoeFswXVsyXSk7CisgICAgcmVz
dWx0WzBdWzNdID0gZGR5X2NvYXJzZSh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlf
Y29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeV9jb2Fyc2UoeFsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gZGR5X2NvYXJzZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1b
M10gPSBkZHlfY29hcnNlKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeV9jb2Fyc2Uo
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR5X2NvYXJzZSh4WzJdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSBkZHlfY29hcnNlKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGRk
eV9jb2Fyc2UoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZGR5X2NvYXJzZSh4WzNdWzBd
KTsKKyAgICByZXN1bHRbM11bMV0gPSBkZHlfY29hcnNlKHhbM11bMV0pOworICAgIHJlc3VsdFsz
XVsyXSA9IGRkeV9jb2Fyc2UoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gZGR5X2NvYXJz
ZSh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgZGR5X2ZpbmUoaGFsZjIg
eCkgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBkZHlfZmluZSh4WzBdKTsK
KyAgICByZXN1bHRbMV0gPSBkZHlfZmluZSh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjMgZGR5X2ZpbmUoaGFsZjMgeCkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBkZHlfZmluZSh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBkZHlfZmluZSh4WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSBkZHlfZmluZSh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgZGR5X2ZpbmUoaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBkZHlfZmluZSh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBkZHlfZmluZSh4WzFdKTsKKyAgICBy
ZXN1bHRbMl0gPSBkZHlfZmluZSh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBkZHlfZmluZSh4WzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBkZHlfZmluZShoYWxmMngyIHgpIHsK
KyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfZmluZSh4WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfZmluZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBkZHlfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHlfZmluZSh4WzFd
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBkZHlfZmluZShoYWxmMngzIHgp
IHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfZmluZSh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfZmluZSh4WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSBkZHlfZmluZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlfZmluZSh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHlfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBkZHlfZmluZSh4WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4NCBkZHlfZmluZShoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBkZHlfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfZmlu
ZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHlfZmluZSh4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBkZHlfZmluZSh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlf
ZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHlfZmluZSh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBkZHlfZmluZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBk
ZHlfZmluZSh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBkZHlfZmlu
ZShoYWxmM3gyIHgpIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBk
ZHlfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfZmluZSh4WzBdWzFdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBkZHlfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBkZHlfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHlfZmluZSh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHlfZmluZSh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjN4MyBkZHlfZmluZShoYWxmM3gzIHgpIHsKKyAgICBoYWxmM3gzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBkZHlfZmluZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHlfZmluZSh4WzBd
WzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBkZHlfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHlfZmluZSh4
WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHlfZmluZSh4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBkZHlfZmluZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHlfZmlu
ZSh4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCBkZHlfZmluZShoYWxm
M3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfZmlu
ZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfZmluZSh4WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBkZHlfZmluZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBkZHlf
ZmluZSh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlfZmluZSh4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBkZHlfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBk
ZHlfZmluZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBkZHlfZmluZSh4WzFdWzNdKTsK
KyAgICByZXN1bHRbMl1bMF0gPSBkZHlfZmluZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBkZHlfZmluZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHlfZmluZSh4WzJdWzJd
KTsKKyAgICByZXN1bHRbMl1bM10gPSBkZHlfZmluZSh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MiBkZHlfZmluZShoYWxmNHgyIHgpIHsKKyAgICBoYWxmNHgyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBkZHlfZmluZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlfZmluZSh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHlfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBkZHlfZmluZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHlfZmluZSh4
WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBkZHlfZmluZSh4WzNdWzBdKTsKKyAgICByZXN1
bHRbM11bMV0gPSBkZHlfZmluZSh4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjR4MyBkZHlfZmluZShoYWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBkZHlfZmluZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfZmlu
ZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHlfZmluZSh4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBkZHlfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHlf
ZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHlfZmluZSh4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBkZHlfZmluZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBk
ZHlfZmluZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHlfZmluZSh4WzJdWzJdKTsK
KyAgICByZXN1bHRbM11bMF0gPSBkZHlfZmluZSh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0g
PSBkZHlfZmluZSh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBkZHlfZmluZSh4WzNdWzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBkZHlfZmluZShoYWxmNHg0IHgpIHsK
KyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfZmluZSh4WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfZmluZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1b
Ml0gPSBkZHlfZmluZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBkZHlfZmluZSh4WzBd
WzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlfZmluZSh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBkZHlfZmluZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHlfZmluZSh4
WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBkZHlfZmluZSh4WzFdWzNdKTsKKyAgICByZXN1
bHRbMl1bMF0gPSBkZHlfZmluZSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHlfZmlu
ZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHlfZmluZSh4WzJdWzJdKTsKKyAgICBy
ZXN1bHRbMl1bM10gPSBkZHlfZmluZSh4WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBkZHlf
ZmluZSh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBkZHlfZmluZSh4WzNdWzFdKTsKKyAg
ICByZXN1bHRbM11bMl0gPSBkZHlfZmluZSh4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBk
ZHlfZmluZSh4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgZndpZHRoKGhh
bGYyIHgpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZndpZHRoKHhbMF0p
OworICAgIHJlc3VsdFsxXSA9IGZ3aWR0aCh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjMgZndpZHRoKGhhbGYzIHgpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gZndpZHRoKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGZ3aWR0aCh4WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBmd2lkdGgoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IGZ3aWR0
aChoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZ3aWR0aCh4
WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmd2lkdGgoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZndp
ZHRoKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGZ3aWR0aCh4WzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjJ4MiBmd2lkdGgoaGFsZjJ4MiB4KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gZndpZHRoKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGZ3aWR0aCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmd2lkdGgoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gZndpZHRoKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmMngzIGZ3aWR0aChoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBmd2lkdGgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZndpZHRo
KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZ3aWR0aCh4WzBdWzJdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBmd2lkdGgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZndpZHRoKHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGZ3aWR0aCh4WzFdWzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjJ4NCBmd2lkdGgoaGFsZjJ4NCB4KSB7CisgICAgaGFsZjJ4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZndpZHRoKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IGZ3aWR0aCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmd2lkdGgoeFswXVsyXSk7
CisgICAgcmVzdWx0WzBdWzNdID0gZndpZHRoKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9
IGZ3aWR0aCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmd2lkdGgoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gZndpZHRoKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGZ3
aWR0aCh4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBmd2lkdGgoaGFs
ZjN4MiB4KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZndpZHRo
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZ3aWR0aCh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBmd2lkdGgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZndpZHRoKHhb
MV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGZ3aWR0aCh4WzJdWzBdKTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBmd2lkdGgoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMg
ZndpZHRoKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGZ3aWR0aCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmd2lkdGgoeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gZndpZHRoKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9
IGZ3aWR0aCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmd2lkdGgoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gZndpZHRoKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGZ3
aWR0aCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmd2lkdGgoeFsyXVsxXSk7CisgICAg
cmVzdWx0WzJdWzJdID0gZndpZHRoKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmM3g0IGZ3aWR0aChoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBmd2lkdGgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZndpZHRoKHhb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZ3aWR0aCh4WzBdWzJdKTsKKyAgICByZXN1bHRb
MF1bM10gPSBmd2lkdGgoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZndpZHRoKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZ3aWR0aCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBmd2lkdGgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZndpZHRoKHhbMV1bM10p
OworICAgIHJlc3VsdFsyXVswXSA9IGZ3aWR0aCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBmd2lkdGgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZndpZHRoKHhbMl1bMl0pOwor
ICAgIHJlc3VsdFsyXVszXSA9IGZ3aWR0aCh4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjR4MiBmd2lkdGgoaGFsZjR4MiB4KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gZndpZHRoKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZ3aWR0
aCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmd2lkdGgoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gZndpZHRoKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGZ3aWR0aCh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmd2lkdGgoeFsyXVsxXSk7CisgICAgcmVzdWx0
WzNdWzBdID0gZndpZHRoKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGZ3aWR0aCh4WzNd
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBmd2lkdGgoaGFsZjR4MyB4KSB7
CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZndpZHRoKHhbMF1bMF0p
OworICAgIHJlc3VsdFswXVsxXSA9IGZ3aWR0aCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBmd2lkdGgoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZndpZHRoKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGZ3aWR0aCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBm
d2lkdGgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZndpZHRoKHhbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IGZ3aWR0aCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBmd2lk
dGgoeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZndpZHRoKHhbM11bMF0pOworICAgIHJl
c3VsdFszXVsxXSA9IGZ3aWR0aCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBmd2lkdGgo
eFszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgZndpZHRoKGhhbGY0eDQg
eCkgeworICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZ3aWR0aCh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmd2lkdGgoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gZndpZHRoKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGZ3aWR0aCh4WzBdWzNd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBmd2lkdGgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gZndpZHRoKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGZ3aWR0aCh4WzFdWzJdKTsK
KyAgICByZXN1bHRbMV1bM10gPSBmd2lkdGgoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
ZndpZHRoKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGZ3aWR0aCh4WzJdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMl0gPSBmd2lkdGgoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gZndp
ZHRoKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGZ3aWR0aCh4WzNdWzBdKTsKKyAgICBy
ZXN1bHRbM11bMV0gPSBmd2lkdGgoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZndpZHRo
KHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGZ3aWR0aCh4WzNdWzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorCitmbG9hdCBzcXJ0KGZsb2F0IHgpIHsKKyAgICByZXR1cm4gcG93KHgs
IDAuNSk7Cit9CitmbG9hdCBsb2cyKGZsb2F0IHgpIHsKKyAgICByZXR1cm4gbG9nKHgpIC8gbG9n
KDIpOworfQorZmxvYXQgbG9nMTAoZmxvYXQgeCkgeworICAgIHJldHVybiBsb2coeCkgLyBsb2co
MTApOworfQorZmxvYXQgZnJhYyhmbG9hdCB4KSB7CisgICAgcmV0dXJuIHggLSBmbG9vcih4KTsK
K30KK2Zsb2F0IGV4cDIoZmxvYXQgeCkgeworICAgIHJldHVybiBleHAoeCAqIGxvZygyKSk7Cit9
CitmbG9hdCBkZWdyZWVzKGZsb2F0IHgpIHsKKyAgICByZXR1cm4geCAqIDE4MCAvIDMuMTQxNTk7
Cit9CitmbG9hdCByYWRpYW5zKGZsb2F0IHgpIHsKKyAgICByZXR1cm4geCAqIDMuMTQxNTkgLyAx
ODA7Cit9CitmbG9hdCByY3AoZmxvYXQgeCkgeworICAgIHJldHVybiAxIC8geDsKK30KK2Zsb2F0
IHJzcXJ0KGZsb2F0IHgpIHsKKyAgICByZXR1cm4gMSAvIHNxcnQoeCk7Cit9CitmbG9hdCBzYXR1
cmF0ZShmbG9hdCB4KSB7CisgICAgcmV0dXJuIGNsYW1wKHgsIDAsIDEpOworfQorZmxvYXQgZGR4
X2NvYXJzZShmbG9hdCB4KSB7CisgICAgcmV0dXJuIGRkeCh4KTsKK30KK2Zsb2F0IGRkeF9maW5l
KGZsb2F0IHgpIHsKKyAgICByZXR1cm4gZGR4KHgpOworfQorZmxvYXQgZGR5X2NvYXJzZShmbG9h
dCB4KSB7CisgICAgcmV0dXJuIGRkeSh4KTsKK30KK2Zsb2F0IGRkeV9maW5lKGZsb2F0IHgpIHsK
KyAgICByZXR1cm4gZGR5KHgpOworfQorZmxvYXQgZndpZHRoKGZsb2F0IHgpIHsKKyAgICByZXR1
cm4gYWJzKGRkeCh4KSkgKyBhYnMoZGR5KHgpKTsKK30KK2Zsb2F0MiBjb3MoZmxvYXQyIHgpIHsK
KyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNvcyh4WzBdKTsKKyAgICByZXN1
bHRbMV0gPSBjb3MoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBjb3MoZmxv
YXQzIHgpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNvcyh4WzBdKTsK
KyAgICByZXN1bHRbMV0gPSBjb3MoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gY29zKHhbMl0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgY29zKGZsb2F0NCB4KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjb3MoeFswXSk7CisgICAgcmVzdWx0WzFdID0gY29z
KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGNvcyh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBjb3Mo
eFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGNvcyhmbG9hdDJ4MiB4KSB7
CisgICAgZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBjb3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29z
KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvcyh4WzFdWzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQyeDMgY29zKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBjb3MoeFswXVsyXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvcyh4WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSBjb3MoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0Mng0IGNvcyhmbG9hdDJ4NCB4KSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3MoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY29zKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVsz
XSA9IGNvcyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3MoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gY29zKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNvcyh4WzFd
WzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBjb3MoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0M3gyIGNvcyhmbG9hdDN4MiB4KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3Mo
eFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IGNvcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjb3MoeFsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gY29zKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDN4MyBjb3MoZmxvYXQzeDMgeCkgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBjb3MoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gY29zKHhbMF1bMV0p
OworICAgIHJlc3VsdFswXVsyXSA9IGNvcyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBj
b3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY29zKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IGNvcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjb3MoeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gY29zKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGNv
cyh4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgY29zKGZsb2F0M3g0
IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY29zKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBjb3MoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gY29zKHhbMF1bM10pOworICAgIHJl
c3VsdFsxXVswXSA9IGNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3MoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzFdWzJdID0gY29zKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9
IGNvcyh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjb3MoeFsyXVswXSk7CisgICAgcmVz
dWx0WzJdWzFdID0gY29zKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGNvcyh4WzJdWzJd
KTsKKyAgICByZXN1bHRbMl1bM10gPSBjb3MoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NHgyIGNvcyhmbG9hdDR4MiB4KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3MoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IGNvcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjb3MoeFsyXVswXSk7CisgICAg
cmVzdWx0WzJdWzFdID0gY29zKHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGNvcyh4WzNd
WzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBjb3MoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NHgzIGNvcyhmbG9hdDR4MyB4KSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3Mo
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY29zKHhbMF1bMl0pOworICAgIHJlc3VsdFsx
XVswXSA9IGNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3MoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gY29zKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGNvcyh4
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJd
WzJdID0gY29zKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGNvcyh4WzNdWzBdKTsKKyAg
ICByZXN1bHRbM11bMV0gPSBjb3MoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gY29zKHhb
M11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBjb3MoZmxvYXQ0eDQgeCkg
eworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3MoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gY29zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNv
cyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBjb3MoeFswXVszXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvcyh4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBjb3MoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gY29z
KHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGNvcyh4WzJdWzBdKTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gY29zKHhbMl1bMl0pOwor
ICAgIHJlc3VsdFsyXVszXSA9IGNvcyh4WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBjb3Mo
eFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gY29zKHhbM11bMV0pOworICAgIHJlc3VsdFsz
XVsyXSA9IGNvcyh4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBjb3MoeFszXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBzaW4oZmxvYXQyIHgpIHsKKyAgICBmbG9hdDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaW4o
eFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBzaW4oZmxvYXQzIHgpIHsKKyAg
ICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpbih4WzBdKTsKKyAgICByZXN1bHRb
MV0gPSBzaW4oeFsxXSk7CisgICAgcmVzdWx0WzJdID0gc2luKHhbMl0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgc2luKGZsb2F0NCB4KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBzaW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0gc2luKHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IHNpbih4WzJdKTsKKyAgICByZXN1bHRbM10gPSBzaW4oeFszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIHNpbihmbG9hdDJ4MiB4KSB7CisgICAgZmxvYXQy
eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQyeDMgc2luKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbih4WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaW4oeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
c2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBzaW4oeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0
IHNpbihmbG9hdDJ4NCB4KSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IHNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzaW4oeFswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gc2luKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHNpbih4WzBd
WzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNpbih4WzFdWzJdKTsKKyAgICBy
ZXN1bHRbMV1bM10gPSBzaW4oeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
M3gyIHNpbihmbG9hdDN4MiB4KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IHNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzaW4oeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gc2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4
WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gc2luKHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBzaW4o
ZmxvYXQzeDMgeCkgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBz
aW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2luKHhbMF1bMV0pOworICAgIHJlc3Vs
dFswXVsyXSA9IHNpbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW4oeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNp
bih4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gc2luKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHNpbih4WzJdWzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgc2luKGZsb2F0M3g0IHgpIHsKKyAgICBm
bG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2luKHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IHNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaW4oeFswXVsy
XSk7CisgICAgcmVzdWx0WzBdWzNdID0gc2luKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9
IHNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW4oeFsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gc2luKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHNpbih4WzFdWzNd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSBzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
c2luKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHNpbih4WzJdWzJdKTsKKyAgICByZXN1
bHRbMl1bM10gPSBzaW4oeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgy
IHNpbihmbG9hdDR4MiB4KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IHNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzaW4oeFswXVsxXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gc2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4WzFd
WzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gc2luKHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IHNpbih4WzNdWzBdKTsKKyAgICBy
ZXN1bHRbM11bMV0gPSBzaW4oeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NHgzIHNpbihmbG9hdDR4MyB4KSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IHNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzaW4oeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzBdWzJdID0gc2luKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IHNpbih4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gc2luKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IHNpbih4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSBzaW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2luKHhb
Ml1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IHNpbih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11b
MV0gPSBzaW4oeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gc2luKHhbM11bMl0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBzaW4oZmxvYXQ0eDQgeCkgeworICAgIGZsb2F0
NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW4oeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gc2luKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpbih4WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSBzaW4oeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2lu
KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4WzFdWzFdKTsKKyAgICByZXN1bHRb
MV1bMl0gPSBzaW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc2luKHhbMV1bM10pOwor
ICAgIHJlc3VsdFsyXVswXSA9IHNpbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaW4o
eFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2luKHhbMl1bMl0pOworICAgIHJlc3VsdFsy
XVszXSA9IHNpbih4WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzaW4oeFszXVswXSk7Cisg
ICAgcmVzdWx0WzNdWzFdID0gc2luKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IHNpbih4
WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBzaW4oeFszXVszXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MiB0YW4oZmxvYXQyIHgpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IHRhbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSB0YW4oeFsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyB0YW4oZmxvYXQzIHgpIHsKKyAgICBmbG9hdDMgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IHRhbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSB0YW4oeFsx
XSk7CisgICAgcmVzdWx0WzJdID0gdGFuKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgdGFuKGZsb2F0NCB4KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSB0YW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0gdGFuKHhbMV0pOworICAgIHJlc3VsdFsyXSA9
IHRhbih4WzJdKTsKKyAgICByZXN1bHRbM10gPSB0YW4oeFszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngyIHRhbihmbG9hdDJ4MiB4KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IHRhbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW4o
eFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuKHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IHRhbih4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgdGFu
KGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
dGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbih4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSB0YW4oeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IHRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0
YW4oeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IHRhbihmbG9hdDJ4
NCB4KSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJd
ID0gdGFuKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHRhbih4WzBdWzNdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSB0YW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdGFuKHhbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHRhbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10g
PSB0YW4oeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIHRhbihmbG9h
dDN4MiB4KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gdGFuKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHRhbih4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSB0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuKHhb
Ml1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyB0YW4oZmxvYXQzeDMgeCkg
eworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW4oeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gdGFuKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHRh
bih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW4oeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gdGFuKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHRhbih4WzFdWzJdKTsK
KyAgICByZXN1bHRbMl1bMF0gPSB0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFu
KHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHRhbih4WzJdWzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzeDQgdGFuKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IHRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0YW4oeFswXVsyXSk7CisgICAgcmVz
dWx0WzBdWzNdID0gdGFuKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHRhbih4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
dGFuKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHRhbih4WzFdWzNdKTsKKyAgICByZXN1
bHRbMl1bMF0gPSB0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuKHhbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IHRhbih4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSB0
YW4oeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIHRhbihmbG9hdDR4
MiB4KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gdGFuKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHRhbih4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSB0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuKHhbMl1b
MV0pOworICAgIHJlc3VsdFszXVswXSA9IHRhbih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0g
PSB0YW4oeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIHRhbihmbG9h
dDR4MyB4KSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gdGFuKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IHRhbih4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSB0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdGFuKHhb
MV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IHRhbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1b
MV0gPSB0YW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gdGFuKHhbMl1bMl0pOworICAg
IHJlc3VsdFszXVswXSA9IHRhbih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSB0YW4oeFsz
XVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gdGFuKHhbM11bMl0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDR4NCB0YW4oZmxvYXQ0eDQgeCkgeworICAgIGZsb2F0NHg0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSB0YW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdGFu
KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHRhbih4WzBdWzJdKTsKKyAgICByZXN1bHRb
MF1bM10gPSB0YW4oeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0YW4o
eFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gdGFuKHhbMV1bM10pOworICAgIHJlc3VsdFsy
XVswXSA9IHRhbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW4oeFsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gdGFuKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHRhbih4
WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSB0YW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gdGFuKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IHRhbih4WzNdWzJdKTsKKyAg
ICByZXN1bHRbM11bM10gPSB0YW4oeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MiBhY29zKGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhY29zKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFjb3MoeFsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MyBhY29zKGZsb2F0MyB4KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhY29zKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFjb3MoeFsxXSk7Cisg
ICAgcmVzdWx0WzJdID0gYWNvcyh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IGFjb3MoZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFj
b3MoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYWNvcyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBh
Y29zKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGFjb3MoeFszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngyIGFjb3MoZmxvYXQyeDIgeCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBhY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFj
b3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYWNvcyh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBhY29zKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4
MyBhY29zKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gYWNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhY29zKHhbMF1bMV0pOwor
ICAgIHJlc3VsdFswXVsyXSA9IGFjb3MoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYWNv
cyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhY29zKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IGFjb3MoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0
IGFjb3MoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBhY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFjb3MoeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzBdWzJdID0gYWNvcyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBhY29z
KHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGFjb3MoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gYWNvcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhY29zKHhbMV1bMl0p
OworICAgIHJlc3VsdFsxXVszXSA9IGFjb3MoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0M3gyIGFjb3MoZmxvYXQzeDIgeCkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFjb3Mo
eFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYWNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBhY29zKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGFjb3MoeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gYWNvcyh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQzeDMgYWNvcyhmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFjb3MoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYWNvcyh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhY29zKHhbMF1bMl0pOworICAgIHJlc3VsdFsx
XVswXSA9IGFjb3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYWNvcyh4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBhY29zKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGFj
b3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYWNvcyh4WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSBhY29zKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4
NCBhY29zKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gYWNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhY29zKHhbMF1bMV0pOwor
ICAgIHJlc3VsdFswXVsyXSA9IGFjb3MoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gYWNv
cyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhY29zKHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IGFjb3MoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gYWNvcyh4WzFdWzJd
KTsKKyAgICByZXN1bHRbMV1bM10gPSBhY29zKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9
IGFjb3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYWNvcyh4WzJdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSBhY29zKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGFjb3MoeFsy
XVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIGFjb3MoZmxvYXQ0eDIgeCkg
eworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhY29zKHhbMF1bMF0p
OworICAgIHJlc3VsdFswXVsxXSA9IGFjb3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
YWNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhY29zKHhbMV1bMV0pOworICAgIHJl
c3VsdFsyXVswXSA9IGFjb3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYWNvcyh4WzJd
WzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhY29zKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsx
XSA9IGFjb3MoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIGFjb3Mo
ZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBh
Y29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFjb3MoeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gYWNvcyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhY29zKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFjb3MoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gYWNvcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhY29zKHhbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IGFjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gYWNvcyh4
WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhY29zKHhbM11bMF0pOworICAgIHJlc3VsdFsz
XVsxXSA9IGFjb3MoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gYWNvcyh4WzNdWzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgYWNvcyhmbG9hdDR4NCB4KSB7CisgICAg
ZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFjb3MoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gYWNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhY29zKHhb
MF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGFjb3MoeFswXVszXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gYWNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhY29zKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IGFjb3MoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gYWNv
cyh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhY29zKHhbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IGFjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gYWNvcyh4WzJdWzJd
KTsKKyAgICByZXN1bHRbMl1bM10gPSBhY29zKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9
IGFjb3MoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gYWNvcyh4WzNdWzFdKTsKKyAgICBy
ZXN1bHRbM11bMl0gPSBhY29zKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGFjb3MoeFsz
XVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBhc2luKGZsb2F0MiB4KSB7Cisg
ICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhc2luKHhbMF0pOworICAgIHJlc3Vs
dFsxXSA9IGFzaW4oeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBhc2luKGZs
b2F0MyB4KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhc2luKHhbMF0p
OworICAgIHJlc3VsdFsxXSA9IGFzaW4oeFsxXSk7CisgICAgcmVzdWx0WzJdID0gYXNpbih4WzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGFzaW4oZmxvYXQ0IHgpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFzaW4oeFswXSk7CisgICAgcmVzdWx0WzFd
ID0gYXNpbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhc2luKHhbMl0pOworICAgIHJlc3VsdFsz
XSA9IGFzaW4oeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGFzaW4oZmxv
YXQyeDIgeCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhc2lu
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gYXNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhc2luKHhbMV1bMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBhc2luKGZsb2F0MngzIHgpIHsKKyAg
ICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYXNpbih4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBhc2luKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFzaW4o
eFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBhc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFzaW4oeFsxXVsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGFzaW4oZmxvYXQyeDQgeCkgeworICAg
IGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhc2luKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IGFzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYXNpbih4
WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBhc2luKHhbMF1bM10pOworICAgIHJlc3VsdFsx
XVswXSA9IGFzaW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYXNpbih4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBhc2luKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGFz
aW4oeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGFzaW4oZmxvYXQz
eDIgeCkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhc2luKHhb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gYXNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhc2luKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsyXVswXSA9IGFzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXNp
bih4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgYXNpbihmbG9hdDN4
MyB4KSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFzaW4oeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYXNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1b
Ml0gPSBhc2luKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGFzaW4oeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gYXNpbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhc2lu
KHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGFzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gYXNpbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhc2luKHhbMl1bMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBhc2luKGZsb2F0M3g0IHgpIHsKKyAg
ICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYXNpbih4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBhc2luKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFzaW4o
eFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gYXNpbih4WzBdWzNdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBhc2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFzaW4oeFsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gYXNpbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBh
c2luKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGFzaW4oeFsyXVswXSk7CisgICAgcmVz
dWx0WzJdWzFdID0gYXNpbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhc2luKHhbMl1b
Ml0pOworICAgIHJlc3VsdFsyXVszXSA9IGFzaW4oeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NHgyIGFzaW4oZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBhc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFz
aW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXNpbih4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBhc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGFzaW4oeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXNpbih4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0g
PSBhc2luKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGFzaW4oeFszXVsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIGFzaW4oZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0
NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhc2luKHhbMF1bMF0pOworICAgIHJlc3Vs
dFswXVsxXSA9IGFzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYXNpbih4WzBdWzJd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBhc2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IGFzaW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gYXNpbih4WzFdWzJdKTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhc2luKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGFzaW4oeFsy
XVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gYXNpbih4WzJdWzJdKTsKKyAgICByZXN1bHRbM11b
MF0gPSBhc2luKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGFzaW4oeFszXVsxXSk7Cisg
ICAgcmVzdWx0WzNdWzJdID0gYXNpbih4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0eDQgYXNpbihmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGFzaW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYXNpbih4WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhc2luKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVsz
XSA9IGFzaW4oeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXNpbih4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFzaW4o
eFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gYXNpbih4WzFdWzNdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBhc2luKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGFzaW4oeFsyXVsxXSk7
CisgICAgcmVzdWx0WzJdWzJdID0gYXNpbih4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBh
c2luKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGFzaW4oeFszXVswXSk7CisgICAgcmVz
dWx0WzNdWzFdID0gYXNpbih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBhc2luKHhbM11b
Ml0pOworICAgIHJlc3VsdFszXVszXSA9IGFzaW4oeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MiBhdGFuKGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhdGFuKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGF0YW4oeFsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBhdGFuKGZsb2F0MyB4KSB7CisgICAgZmxvYXQzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhdGFuKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGF0YW4o
eFsxXSk7CisgICAgcmVzdWx0WzJdID0gYXRhbih4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IGF0YW4oZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGF0YW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0gYXRhbih4WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBhdGFuKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGF0YW4oeFszXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGF0YW4oZmxvYXQyeDIgeCkgeworICAgIGZsb2F0Mngy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGF0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXRhbih4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDJ4MyBhdGFuKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gYXRhbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuKHhb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGF0YW4oeFswXVsyXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gYXRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IGF0YW4oeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0Mng0IGF0YW4oZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBhdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGF0YW4oeFsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYXRhbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1b
M10gPSBhdGFuKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGF0YW4oeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gYXRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFu
KHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGF0YW4oeFsxXVszXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0M3gyIGF0YW4oZmxvYXQzeDIgeCkgeworICAgIGZsb2F0M3gyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IGF0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXRhbih4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGF0YW4o
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXRhbih4WzJdWzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzeDMgYXRhbihmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gYXRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuKHhbMF1bMl0pOworICAg
IHJlc3VsdFsxXVswXSA9IGF0YW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYXRhbih4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuKHhbMV1bMl0pOworICAgIHJlc3VsdFsy
XVswXSA9IGF0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXRhbih4WzJdWzFdKTsK
KyAgICByZXN1bHRbMl1bMl0gPSBhdGFuKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDN4NCBhdGFuKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gYXRhbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuKHhb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGF0YW4oeFswXVsyXSk7CisgICAgcmVzdWx0WzBd
WzNdID0gYXRhbih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gYXRh
bih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhdGFuKHhbMV1bM10pOworICAgIHJlc3Vs
dFsyXVswXSA9IGF0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXRhbih4WzJdWzFd
KTsKKyAgICByZXN1bHRbMl1bMl0gPSBhdGFuKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9
IGF0YW4oeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIGF0YW4oZmxv
YXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFu
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGF0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gYXRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0p
OworICAgIHJlc3VsdFsyXVswXSA9IGF0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
YXRhbih4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhdGFuKHhbM11bMF0pOworICAgIHJl
c3VsdFszXVsxXSA9IGF0YW4oeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NHgzIGF0YW4oZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBhdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGF0YW4oeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gYXRhbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBh
dGFuKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4oeFsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gYXRhbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhdGFuKHhbMl1b
MF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGF0YW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJd
ID0gYXRhbih4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhdGFuKHhbM11bMF0pOworICAg
IHJlc3VsdFszXVsxXSA9IGF0YW4oeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gYXRhbih4
WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgYXRhbihmbG9hdDR4NCB4
KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4oeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gYXRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBhdGFuKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGF0YW4oeFswXVszXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gYXRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuKHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGF0YW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzFd
WzNdID0gYXRhbih4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhdGFuKHhbMl1bMF0pOwor
ICAgIHJlc3VsdFsyXVsxXSA9IGF0YW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gYXRh
bih4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBhdGFuKHhbMl1bM10pOworICAgIHJlc3Vs
dFszXVswXSA9IGF0YW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gYXRhbih4WzNdWzFd
KTsKKyAgICByZXN1bHRbM11bMl0gPSBhdGFuKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9
IGF0YW4oeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBjb3NoKGZsb2F0
MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjb3NoKHhbMF0pOwor
ICAgIHJlc3VsdFsxXSA9IGNvc2goeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
MyBjb3NoKGZsb2F0MyB4KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBj
b3NoKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGNvc2goeFsxXSk7CisgICAgcmVzdWx0WzJdID0g
Y29zaCh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGNvc2goZmxvYXQ0IHgp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNvc2goeFswXSk7CisgICAg
cmVzdWx0WzFdID0gY29zaCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBjb3NoKHhbMl0pOworICAg
IHJlc3VsdFszXSA9IGNvc2goeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mngy
IGNvc2goZmxvYXQyeDIgeCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBjb3NoKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvc2goeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gY29zaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3No
KHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBjb3NoKGZsb2F0Mngz
IHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY29zaCh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3NoKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IGNvc2goeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zaCh4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBjb3NoKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNvc2go
eFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGNvc2goZmxvYXQyeDQg
eCkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3NoKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvc2goeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJd
ID0gY29zaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBjb3NoKHhbMF1bM10pOworICAg
IHJlc3VsdFsxXVswXSA9IGNvc2goeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY29zaCh4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjb3NoKHhbMV1bMl0pOworICAgIHJlc3VsdFsx
XVszXSA9IGNvc2goeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGNv
c2goZmxvYXQzeDIgeCkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBjb3NoKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvc2goeFswXVsxXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gY29zaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3NoKHhb
MV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGNvc2goeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gY29zaCh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgY29z
aChmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IGNvc2goeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gY29zaCh4WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBjb3NoKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGNvc2goeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY29zaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBjb3NoKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGNvc2goeFsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gY29zaCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjb3No
KHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBjb3NoKGZsb2F0M3g0
IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY29zaCh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3NoKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IGNvc2goeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gY29zaCh4WzBdWzNdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBjb3NoKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvc2go
eFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gY29zaCh4WzFdWzJdKTsKKyAgICByZXN1bHRb
MV1bM10gPSBjb3NoKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGNvc2goeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gY29zaCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBj
b3NoKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGNvc2goeFsyXVszXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIGNvc2goZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3NoKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGNvc2goeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zaCh4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBjb3NoKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGNv
c2goeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY29zaCh4WzJdWzFdKTsKKyAgICByZXN1
bHRbM11bMF0gPSBjb3NoKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGNvc2goeFszXVsx
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIGNvc2goZmxvYXQ0eDMgeCkgewor
ICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3NoKHhbMF1bMF0pOwor
ICAgIHJlc3VsdFswXVsxXSA9IGNvc2goeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY29z
aCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3NoKHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IGNvc2goeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gY29zaCh4WzFdWzJd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSBjb3NoKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IGNvc2goeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gY29zaCh4WzJdWzJdKTsKKyAgICBy
ZXN1bHRbM11bMF0gPSBjb3NoKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGNvc2goeFsz
XVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gY29zaCh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0eDQgY29zaChmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGNvc2goeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
Y29zaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBjb3NoKHhbMF1bMl0pOworICAgIHJl
c3VsdFswXVszXSA9IGNvc2goeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zaCh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3NoKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IGNvc2goeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gY29zaCh4WzFdWzNdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBjb3NoKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGNvc2go
eFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gY29zaCh4WzJdWzJdKTsKKyAgICByZXN1bHRb
Ml1bM10gPSBjb3NoKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGNvc2goeFszXVswXSk7
CisgICAgcmVzdWx0WzNdWzFdID0gY29zaCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBj
b3NoKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGNvc2goeFszXVszXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBzaW5oKGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBzaW5oKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHNpbmgoeFsx
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBzaW5oKGZsb2F0MyB4KSB7CisgICAg
ZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBzaW5oKHhbMF0pOworICAgIHJlc3VsdFsx
XSA9IHNpbmgoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gc2luaCh4WzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IHNpbmgoZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IHNpbmgoeFswXSk7CisgICAgcmVzdWx0WzFdID0gc2luaCh4WzFdKTsK
KyAgICByZXN1bHRbMl0gPSBzaW5oKHhbMl0pOworICAgIHJlc3VsdFszXSA9IHNpbmgoeFszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIHNpbmgoZmxvYXQyeDIgeCkgeworICAg
IGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW5oKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IHNpbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luaCh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW5oKHhbMV1bMV0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDJ4MyBzaW5oKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2luaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBzaW5oKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpbmgoeFswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gc2luaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW5oKHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNpbmgoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0Mng0IHNpbmgoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IHNpbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2luaCh4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBzaW5oKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHNpbmgoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2luaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBzaW5oKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHNpbmgoeFsxXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIHNpbmgoZmxvYXQzeDIgeCkgeworICAgIGZs
b2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW5oKHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IHNpbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luaCh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW5oKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVsw
XSA9IHNpbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luaCh4WzJdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgc2luaChmbG9hdDN4MyB4KSB7CisgICAgZmxv
YXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbmgoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gc2luaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaW5oKHhbMF1b
Ml0pOworICAgIHJlc3VsdFsxXVswXSA9IHNpbmgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gc2luaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzaW5oKHhbMV1bMl0pOworICAg
IHJlc3VsdFsyXVswXSA9IHNpbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luaCh4
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzaW5oKHhbMl1bMl0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDN4NCBzaW5oKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2luaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBzaW5oKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpbmgoeFswXVsyXSk7CisgICAg
cmVzdWx0WzBdWzNdID0gc2luaCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW5oKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gc2luaCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzaW5oKHhbMV1bM10pOwor
ICAgIHJlc3VsdFsyXVswXSA9IHNpbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2lu
aCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzaW5oKHhbMl1bMl0pOworICAgIHJlc3Vs
dFsyXVszXSA9IHNpbmgoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgy
IHNpbmgoZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBzaW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbmgoeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gc2luaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW5o
KHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHNpbmgoeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gc2luaCh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzaW5oKHhbM11bMF0p
OworICAgIHJlc3VsdFszXVsxXSA9IHNpbmgoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NHgzIHNpbmgoZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBzaW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbmgo
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2luaCh4WzBdWzJdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBzaW5oKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbmgoeFsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gc2luaCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBz
aW5oKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHNpbmgoeFsyXVsxXSk7CisgICAgcmVz
dWx0WzJdWzJdID0gc2luaCh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzaW5oKHhbM11b
MF0pOworICAgIHJlc3VsdFszXVsxXSA9IHNpbmgoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJd
ID0gc2luaCh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgc2luaChm
bG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNp
bmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2luaCh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBzaW5oKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHNpbmgoeFswXVsz
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBzaW5oKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNpbmgoeFsxXVsyXSk7CisgICAg
cmVzdWx0WzFdWzNdID0gc2luaCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzaW5oKHhb
Ml1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHNpbmgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJd
WzJdID0gc2luaCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBzaW5oKHhbMl1bM10pOwor
ICAgIHJlc3VsdFszXVswXSA9IHNpbmgoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc2lu
aCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBzaW5oKHhbM11bMl0pOworICAgIHJlc3Vs
dFszXVszXSA9IHNpbmgoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiB0
YW5oKGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB0YW5o
KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHRhbmgoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MyB0YW5oKGZsb2F0MyB4KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSB0YW5oKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHRhbmgoeFsxXSk7CisgICAgcmVz
dWx0WzJdID0gdGFuaCh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IHRhbmgo
ZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHRhbmgoeFsw
XSk7CisgICAgcmVzdWx0WzFdID0gdGFuaCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSB0YW5oKHhb
Ml0pOworICAgIHJlc3VsdFszXSA9IHRhbmgoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MngyIHRhbmgoZmxvYXQyeDIgeCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSB0YW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbmgoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyB0YW5o
KGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
dGFuaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW5oKHhbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IHRhbmgoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuaCh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IHRhbmgoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IHRhbmgo
ZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0
YW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbmgoeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gdGFuaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSB0YW5oKHhbMF1b
M10pOworICAgIHJlc3VsdFsxXVswXSA9IHRhbmgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gdGFuaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0YW5oKHhbMV1bMl0pOworICAg
IHJlc3VsdFsxXVszXSA9IHRhbmgoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0M3gyIHRhbmgoZmxvYXQzeDIgeCkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSB0YW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbmgoeFswXVsx
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSB0YW5oKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHRhbmgoeFsyXVswXSk7CisgICAg
cmVzdWx0WzJdWzFdID0gdGFuaCh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQzeDMgdGFuaChmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IHRhbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdGFuaCh4WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSB0YW5oKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9
IHRhbmgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdGFuaCh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSB0YW5oKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IHRhbmgoeFsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuaCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSB0YW5oKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCB0YW5o
KGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
dGFuaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW5oKHhbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IHRhbmgoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gdGFuaCh4WzBd
WzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW5oKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IHRhbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdGFuaCh4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSB0YW5oKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHRhbmgo
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuaCh4WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSB0YW5oKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHRhbmgoeFsyXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIHRhbmgoZmxvYXQ0eDIgeCkgeworICAg
IGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW5oKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IHRhbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuaCh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJlc3VsdFsy
XVswXSA9IHRhbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuaCh4WzJdWzFdKTsK
KyAgICByZXN1bHRbM11bMF0gPSB0YW5oKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IHRh
bmgoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIHRhbmgoZmxvYXQ0
eDMgeCkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW5oKHhb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gdGFuaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW5oKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHRhbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdGFu
aCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSB0YW5oKHhbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IHRhbmgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gdGFuaCh4WzJdWzJd
KTsKKyAgICByZXN1bHRbM11bMF0gPSB0YW5oKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9
IHRhbmgoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gdGFuaCh4WzNdWzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgdGFuaChmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0
eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbmgoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gdGFuaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0YW5oKHhbMF1bMl0p
OworICAgIHJlc3VsdFswXVszXSA9IHRhbmgoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
dGFuaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJl
c3VsdFsxXVsyXSA9IHRhbmgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gdGFuaCh4WzFd
WzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSB0YW5oKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IHRhbmgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gdGFuaCh4WzJdWzJdKTsKKyAg
ICByZXN1bHRbMl1bM10gPSB0YW5oKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IHRhbmgo
eFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gdGFuaCh4WzNdWzFdKTsKKyAgICByZXN1bHRb
M11bMl0gPSB0YW5oKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IHRhbmgoeFszXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBjZWlsKGZsb2F0MiB4KSB7CisgICAgZmxv
YXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjZWlsKHhbMF0pOworICAgIHJlc3VsdFsxXSA9
IGNlaWwoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBjZWlsKGZsb2F0MyB4
KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjZWlsKHhbMF0pOworICAg
IHJlc3VsdFsxXSA9IGNlaWwoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gY2VpbCh4WzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGNlaWwoZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNlaWwoeFswXSk7CisgICAgcmVzdWx0WzFdID0gY2Vp
bCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBjZWlsKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGNl
aWwoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGNlaWwoZmxvYXQyeDIg
eCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjZWlsKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNlaWwoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gY2VpbCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjZWlsKHhbMV1bMV0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBjZWlsKGZsb2F0MngzIHgpIHsKKyAgICBmbG9h
dDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY2VpbCh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBjZWlsKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNlaWwoeFswXVsy
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gY2VpbCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBjZWlsKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNlaWwoeFsxXVsyXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGNlaWwoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0
Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjZWlsKHhbMF1bMF0pOworICAgIHJlc3Vs
dFswXVsxXSA9IGNlaWwoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY2VpbCh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMF1bM10gPSBjZWlsKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9
IGNlaWwoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY2VpbCh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBjZWlsKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGNlaWwoeFsx
XVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGNlaWwoZmxvYXQzeDIgeCkg
eworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjZWlsKHhbMF1bMF0p
OworICAgIHJlc3VsdFswXVsxXSA9IGNlaWwoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
Y2VpbCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjZWlsKHhbMV1bMV0pOworICAgIHJl
c3VsdFsyXVswXSA9IGNlaWwoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY2VpbCh4WzJd
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgY2VpbChmbG9hdDN4MyB4KSB7
CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNlaWwoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gY2VpbCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBj
ZWlsKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGNlaWwoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gY2VpbCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjZWlsKHhbMV1b
Ml0pOworICAgIHJlc3VsdFsyXVswXSA9IGNlaWwoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gY2VpbCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjZWlsKHhbMl1bMl0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBjZWlsKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9h
dDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY2VpbCh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBjZWlsKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNlaWwoeFswXVsy
XSk7CisgICAgcmVzdWx0WzBdWzNdID0gY2VpbCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBjZWlsKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNlaWwoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzFdWzJdID0gY2VpbCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBjZWlsKHhb
MV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGNlaWwoeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gY2VpbCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjZWlsKHhbMl1bMl0pOwor
ICAgIHJlc3VsdFsyXVszXSA9IGNlaWwoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NHgyIGNlaWwoZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBjZWlsKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNlaWwoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY2VpbCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBjZWlsKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGNlaWwoeFsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gY2VpbCh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBjZWls
KHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGNlaWwoeFszXVsxXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NHgzIGNlaWwoZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0NHgzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjZWlsKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IGNlaWwoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY2VpbCh4WzBdWzJdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBjZWlsKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNlaWwo
eFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gY2VpbCh4WzFdWzJdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBjZWlsKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGNlaWwoeFsyXVsxXSk7
CisgICAgcmVzdWx0WzJdWzJdID0gY2VpbCh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBj
ZWlsKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGNlaWwoeFszXVsxXSk7CisgICAgcmVz
dWx0WzNdWzJdID0gY2VpbCh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
eDQgY2VpbChmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGNlaWwoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gY2VpbCh4WzBdWzFdKTsK
KyAgICByZXN1bHRbMF1bMl0gPSBjZWlsKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGNl
aWwoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY2VpbCh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBjZWlsKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNlaWwoeFsxXVsy
XSk7CisgICAgcmVzdWx0WzFdWzNdID0gY2VpbCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0g
PSBjZWlsKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGNlaWwoeFsyXVsxXSk7CisgICAg
cmVzdWx0WzJdWzJdID0gY2VpbCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBjZWlsKHhb
Ml1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGNlaWwoeFszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gY2VpbCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBjZWlsKHhbM11bMl0pOwor
ICAgIHJlc3VsdFszXVszXSA9IGNlaWwoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MiBleHAoZmxvYXQyIHgpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGV4cCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBleHAoeFsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MyBleHAoZmxvYXQzIHgpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGV4cCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBleHAoeFsxXSk7CisgICAg
cmVzdWx0WzJdID0gZXhwKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgZXhw
KGZsb2F0NCB4KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBleHAoeFsw
XSk7CisgICAgcmVzdWx0WzFdID0gZXhwKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGV4cCh4WzJd
KTsKKyAgICByZXN1bHRbM10gPSBleHAoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MngyIGV4cChmbG9hdDJ4MiB4KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGV4cCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBleHAoeFswXVsxXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZXhwKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4
cCh4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgZXhwKGZsb2F0Mngz
IHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZXhwKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGV4cCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBleHAoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZXhwKHhbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IGV4cCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBleHAoeFsxXVsy
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGV4cChmbG9hdDJ4NCB4KSB7Cisg
ICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGV4cCh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBleHAoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZXhwKHhb
MF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGV4cCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBleHAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZXhwKHhbMV1bMV0pOworICAg
IHJlc3VsdFsxXVsyXSA9IGV4cCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBleHAoeFsx
XVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGV4cChmbG9hdDN4MiB4KSB7
CisgICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGV4cCh4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBleHAoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZXhw
KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cCh4WzFdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBleHAoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZXhwKHhbMl1bMV0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBleHAoZmxvYXQzeDMgeCkgeworICAgIGZs
b2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBleHAoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gZXhwKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGV4cCh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBleHAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
ZXhwKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGV4cCh4WzFdWzJdKTsKKyAgICByZXN1
bHRbMl1bMF0gPSBleHAoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZXhwKHhbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IGV4cCh4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQzeDQgZXhwKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gZXhwKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGV4cCh4WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBleHAoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNd
ID0gZXhwKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGV4cCh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBleHAoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZXhwKHhbMV1b
Ml0pOworICAgIHJlc3VsdFsxXVszXSA9IGV4cCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0g
PSBleHAoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZXhwKHhbMl1bMV0pOworICAgIHJl
c3VsdFsyXVsyXSA9IGV4cCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBleHAoeFsyXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIGV4cChmbG9hdDR4MiB4KSB7Cisg
ICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGV4cCh4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBleHAoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZXhwKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1b
MF0gPSBleHAoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZXhwKHhbMl1bMV0pOworICAg
IHJlc3VsdFszXVswXSA9IGV4cCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBleHAoeFsz
XVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIGV4cChmbG9hdDR4MyB4KSB7
CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGV4cCh4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBleHAoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZXhw
KHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGV4cCh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBleHAoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZXhwKHhbMV1bMl0pOwor
ICAgIHJlc3VsdFsyXVswXSA9IGV4cCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBleHAo
eFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZXhwKHhbMl1bMl0pOworICAgIHJlc3VsdFsz
XVswXSA9IGV4cCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBleHAoeFszXVsxXSk7Cisg
ICAgcmVzdWx0WzNdWzJdID0gZXhwKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDR4NCBleHAoZmxvYXQ0eDQgeCkgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBleHAoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZXhwKHhbMF1bMV0p
OworICAgIHJlc3VsdFswXVsyXSA9IGV4cCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBl
eHAoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZXhwKHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IGV4cCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBleHAoeFsxXVsyXSk7
CisgICAgcmVzdWx0WzFdWzNdID0gZXhwKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGV4
cCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBleHAoeFsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gZXhwKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGV4cCh4WzJdWzNdKTsK
KyAgICByZXN1bHRbM11bMF0gPSBleHAoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZXhw
KHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGV4cCh4WzNdWzJdKTsKKyAgICByZXN1bHRb
M11bM10gPSBleHAoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBmbG9v
cihmbG9hdDIgeCkgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmxvb3Io
eFswXSk7CisgICAgcmVzdWx0WzFdID0gZmxvb3IoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MyBmbG9vcihmbG9hdDMgeCkgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gZmxvb3IoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmxvb3IoeFsxXSk7CisgICAg
cmVzdWx0WzJdID0gZmxvb3IoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBm
bG9vcihmbG9hdDQgeCkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmxv
b3IoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmxvb3IoeFsxXSk7CisgICAgcmVzdWx0WzJdID0g
Zmxvb3IoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gZmxvb3IoeFszXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MngyIGZsb29yKGZsb2F0MngyIHgpIHsKKyAgICBmbG9hdDJ4MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZmxvb3IoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gZmxvb3IoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZmxvb3IoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gZmxvb3IoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MngzIGZsb29yKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gZmxvb3IoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZmxvb3Io
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZmxvb3IoeFswXVsyXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gZmxvb3IoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZmxvb3IoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzFdWzJdID0gZmxvb3IoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0Mng0IGZsb29yKGZsb2F0Mng0IHgpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gZmxvb3IoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
Zmxvb3IoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZmxvb3IoeFswXVsyXSk7CisgICAg
cmVzdWx0WzBdWzNdID0gZmxvb3IoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZmxvb3Io
eFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZmxvb3IoeFsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gZmxvb3IoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZmxvb3IoeFsxXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGZsb29yKGZsb2F0M3gyIHgpIHsK
KyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZmxvb3IoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gZmxvb3IoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
Zmxvb3IoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZmxvb3IoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gZmxvb3IoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZmxvb3Io
eFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIGZsb29yKGZsb2F0M3gz
IHgpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZmxvb3IoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZmxvb3IoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gZmxvb3IoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZmxvb3IoeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gZmxvb3IoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
Zmxvb3IoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZmxvb3IoeFsyXVswXSk7CisgICAg
cmVzdWx0WzJdWzFdID0gZmxvb3IoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZmxvb3Io
eFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IGZsb29yKGZsb2F0M3g0
IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZmxvb3IoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZmxvb3IoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gZmxvb3IoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZmxvb3IoeFswXVszXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZmxvb3IoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
Zmxvb3IoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZmxvb3IoeFsxXVsyXSk7CisgICAg
cmVzdWx0WzFdWzNdID0gZmxvb3IoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZmxvb3Io
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZmxvb3IoeFsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gZmxvb3IoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gZmxvb3IoeFsyXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIGZsb29yKGZsb2F0NHgyIHgpIHsK
KyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZmxvb3IoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gZmxvb3IoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
Zmxvb3IoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZmxvb3IoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gZmxvb3IoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZmxvb3Io
eFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZmxvb3IoeFszXVswXSk7CisgICAgcmVzdWx0
WzNdWzFdID0gZmxvb3IoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgz
IGZsb29yKGZsb2F0NHgzIHgpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gZmxvb3IoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZmxvb3IoeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gZmxvb3IoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
Zmxvb3IoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZmxvb3IoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzFdWzJdID0gZmxvb3IoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZmxvb3Io
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZmxvb3IoeFsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gZmxvb3IoeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZmxvb3IoeFszXVsw
XSk7CisgICAgcmVzdWx0WzNdWzFdID0gZmxvb3IoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJd
ID0gZmxvb3IoeFszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IGZsb29y
KGZsb2F0NHg0IHgpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
Zmxvb3IoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZmxvb3IoeFswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gZmxvb3IoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZmxvb3Io
eFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZmxvb3IoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gZmxvb3IoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZmxvb3IoeFsxXVsy
XSk7CisgICAgcmVzdWx0WzFdWzNdID0gZmxvb3IoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gZmxvb3IoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZmxvb3IoeFsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gZmxvb3IoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gZmxv
b3IoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZmxvb3IoeFszXVswXSk7CisgICAgcmVz
dWx0WzNdWzFdID0gZmxvb3IoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZmxvb3IoeFsz
XVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gZmxvb3IoeFszXVszXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MiBsb2coZmxvYXQyIHgpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGxvZyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBsb2coeFsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBsb2coZmxvYXQzIHgpIHsKKyAgICBmbG9hdDMgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGxvZyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBsb2coeFsx
XSk7CisgICAgcmVzdWx0WzJdID0gbG9nKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgbG9nKGZsb2F0NCB4KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBsb2coeFswXSk7CisgICAgcmVzdWx0WzFdID0gbG9nKHhbMV0pOworICAgIHJlc3VsdFsyXSA9
IGxvZyh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBsb2coeFszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngyIGxvZyhmbG9hdDJ4MiB4KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGxvZyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2co
eFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nKHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IGxvZyh4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgbG9n
KGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
bG9nKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxvZyh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBsb2coeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IGxvZyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBs
b2coeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGxvZyhmbG9hdDJ4
NCB4KSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxvZyh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2coeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJd
ID0gbG9nKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGxvZyh4WzBdWzNdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBsb2coeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9nKHhbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxvZyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10g
PSBsb2coeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGxvZyhmbG9h
dDN4MiB4KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxvZyh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2coeFswXVsxXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gbG9nKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxvZyh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBsb2coeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nKHhb
Ml1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBsb2coZmxvYXQzeDMgeCkg
eworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2coeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gbG9nKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGxv
Zyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2coeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gbG9nKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxvZyh4WzFdWzJdKTsK
KyAgICByZXN1bHRbMl1bMF0gPSBsb2coeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9n
KHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGxvZyh4WzJdWzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzeDQgbG9nKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbG9nKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGxvZyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2coeFswXVsyXSk7CisgICAgcmVz
dWx0WzBdWzNdID0gbG9nKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGxvZyh4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2coeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
bG9nKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGxvZyh4WzFdWzNdKTsKKyAgICByZXN1
bHRbMl1bMF0gPSBsb2coeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nKHhbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IGxvZyh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBs
b2coeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIGxvZyhmbG9hdDR4
MiB4KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxvZyh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2coeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gbG9nKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxvZyh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBsb2coeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nKHhbMl1b
MV0pOworICAgIHJlc3VsdFszXVswXSA9IGxvZyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0g
PSBsb2coeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIGxvZyhmbG9h
dDR4MyB4KSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxvZyh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2coeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gbG9nKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGxvZyh4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBsb2coeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbG9nKHhb
MV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGxvZyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1b
MV0gPSBsb2coeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbG9nKHhbMl1bMl0pOworICAg
IHJlc3VsdFszXVswXSA9IGxvZyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBsb2coeFsz
XVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gbG9nKHhbM11bMl0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDR4NCBsb2coZmxvYXQ0eDQgeCkgeworICAgIGZsb2F0NHg0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBsb2coeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbG9n
KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGxvZyh4WzBdWzJdKTsKKyAgICByZXN1bHRb
MF1bM10gPSBsb2coeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGxvZyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsb2co
eFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gbG9nKHhbMV1bM10pOworICAgIHJlc3VsdFsy
XVswXSA9IGxvZyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBsb2coeFsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gbG9nKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGxvZyh4
WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBsb2coeFszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gbG9nKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGxvZyh4WzNdWzJdKTsKKyAg
ICByZXN1bHRbM11bM10gPSBsb2coeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MiByb3VuZChmbG9hdDIgeCkgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gcm91bmQoeFswXSk7CisgICAgcmVzdWx0WzFdID0gcm91bmQoeFsxXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0MyByb3VuZChmbG9hdDMgeCkgeworICAgIGZsb2F0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gcm91bmQoeFswXSk7CisgICAgcmVzdWx0WzFdID0gcm91bmQoeFsx
XSk7CisgICAgcmVzdWx0WzJdID0gcm91bmQoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCByb3VuZChmbG9hdDQgeCkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gcm91bmQoeFswXSk7CisgICAgcmVzdWx0WzFdID0gcm91bmQoeFsxXSk7CisgICAgcmVz
dWx0WzJdID0gcm91bmQoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gcm91bmQoeFszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIHJvdW5kKGZsb2F0MngyIHgpIHsKKyAgICBmbG9h
dDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcm91bmQoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gcm91bmQoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcm91bmQoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcm91bmQoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MngzIHJvdW5kKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcm91bmQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gcm91bmQoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcm91bmQoeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gcm91bmQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcm91
bmQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcm91bmQoeFsxXVsyXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IHJvdW5kKGZsb2F0Mng0IHgpIHsKKyAgICBmbG9hdDJ4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcm91bmQoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gcm91bmQoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcm91bmQoeFswXVsy
XSk7CisgICAgcmVzdWx0WzBdWzNdID0gcm91bmQoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gcm91bmQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcm91bmQoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gcm91bmQoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gcm91
bmQoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIHJvdW5kKGZsb2F0
M3gyIHgpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcm91bmQo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcm91bmQoeFswXVsxXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gcm91bmQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcm91bmQoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzJdWzBdID0gcm91bmQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gcm91bmQoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIHJvdW5k
KGZsb2F0M3gzIHgpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
cm91bmQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcm91bmQoeFswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gcm91bmQoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcm91bmQo
eFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcm91bmQoeFsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gcm91bmQoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcm91bmQoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gcm91bmQoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJd
ID0gcm91bmQoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IHJvdW5k
KGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
cm91bmQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcm91bmQoeFswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gcm91bmQoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gcm91bmQo
eFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcm91bmQoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gcm91bmQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcm91bmQoeFsxXVsy
XSk7CisgICAgcmVzdWx0WzFdWzNdID0gcm91bmQoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gcm91bmQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcm91bmQoeFsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gcm91bmQoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gcm91
bmQoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIHJvdW5kKGZsb2F0
NHgyIHgpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcm91bmQo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcm91bmQoeFswXVsxXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gcm91bmQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcm91bmQoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzJdWzBdID0gcm91bmQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gcm91bmQoeFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gcm91bmQoeFszXVswXSk7Cisg
ICAgcmVzdWx0WzNdWzFdID0gcm91bmQoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NHgzIHJvdW5kKGZsb2F0NHgzIHgpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gcm91bmQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcm91bmQo
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcm91bmQoeFswXVsyXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gcm91bmQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcm91bmQoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzFdWzJdID0gcm91bmQoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gcm91bmQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcm91bmQoeFsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gcm91bmQoeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gcm91
bmQoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gcm91bmQoeFszXVsxXSk7CisgICAgcmVz
dWx0WzNdWzJdID0gcm91bmQoeFszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NHg0IHJvdW5kKGZsb2F0NHg0IHgpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gcm91bmQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcm91bmQoeFswXVsx
XSk7CisgICAgcmVzdWx0WzBdWzJdID0gcm91bmQoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNd
ID0gcm91bmQoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcm91bmQoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gcm91bmQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcm91
bmQoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gcm91bmQoeFsxXVszXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gcm91bmQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcm91bmQoeFsy
XVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gcm91bmQoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJd
WzNdID0gcm91bmQoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gcm91bmQoeFszXVswXSk7
CisgICAgcmVzdWx0WzNdWzFdID0gcm91bmQoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0g
cm91bmQoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gcm91bmQoeFszXVszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiB0cnVuYyhmbG9hdDIgeCkgeworICAgIGZsb2F0MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gdHJ1bmMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gdHJ1
bmMoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyB0cnVuYyhmbG9hdDMgeCkg
eworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gdHJ1bmMoeFswXSk7CisgICAg
cmVzdWx0WzFdID0gdHJ1bmMoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gdHJ1bmMoeFsyXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCB0cnVuYyhmbG9hdDQgeCkgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gdHJ1bmMoeFswXSk7CisgICAgcmVzdWx0WzFdID0g
dHJ1bmMoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gdHJ1bmMoeFsyXSk7CisgICAgcmVzdWx0WzNd
ID0gdHJ1bmMoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIHRydW5jKGZs
b2F0MngyIHgpIHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdHJ1
bmMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdHJ1bmMoeFswXVsxXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gdHJ1bmMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdHJ1bmMoeFsx
XVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngzIHRydW5jKGZsb2F0MngzIHgp
IHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdHJ1bmMoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gdHJ1bmMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJd
ID0gdHJ1bmMoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdHJ1bmMoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gdHJ1bmMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdHJ1
bmMoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IHRydW5jKGZsb2F0
Mng0IHgpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdHJ1bmMo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdHJ1bmMoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gdHJ1bmMoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gdHJ1bmMoeFswXVsz
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gdHJ1bmMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gdHJ1bmMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdHJ1bmMoeFsxXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzNdID0gdHJ1bmMoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0M3gyIHRydW5jKGZsb2F0M3gyIHgpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gdHJ1bmMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdHJ1bmMo
eFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdHJ1bmMoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gdHJ1bmMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gdHJ1bmMoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gdHJ1bmMoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0M3gzIHRydW5jKGZsb2F0M3gzIHgpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gdHJ1bmMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
dHJ1bmMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gdHJ1bmMoeFswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gdHJ1bmMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdHJ1bmMo
eFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdHJ1bmMoeFsxXVsyXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gdHJ1bmMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdHJ1bmMoeFsyXVsx
XSk7CisgICAgcmVzdWx0WzJdWzJdID0gdHJ1bmMoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0M3g0IHRydW5jKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gdHJ1bmMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
dHJ1bmMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gdHJ1bmMoeFswXVsyXSk7CisgICAg
cmVzdWx0WzBdWzNdID0gdHJ1bmMoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdHJ1bmMo
eFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdHJ1bmMoeFsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gdHJ1bmMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gdHJ1bmMoeFsxXVsz
XSk7CisgICAgcmVzdWx0WzJdWzBdID0gdHJ1bmMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gdHJ1bmMoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gdHJ1bmMoeFsyXVsyXSk7Cisg
ICAgcmVzdWx0WzJdWzNdID0gdHJ1bmMoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NHgyIHRydW5jKGZsb2F0NHgyIHgpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gdHJ1bmMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdHJ1bmMo
eFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdHJ1bmMoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gdHJ1bmMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gdHJ1bmMoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gdHJ1bmMoeFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBd
ID0gdHJ1bmMoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gdHJ1bmMoeFszXVsxXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIHRydW5jKGZsb2F0NHgzIHgpIHsKKyAgICBm
bG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdHJ1bmMoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gdHJ1bmMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gdHJ1bmMo
eFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdHJ1bmMoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gdHJ1bmMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdHJ1bmMoeFsxXVsy
XSk7CisgICAgcmVzdWx0WzJdWzBdID0gdHJ1bmMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gdHJ1bmMoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gdHJ1bmMoeFsyXVsyXSk7Cisg
ICAgcmVzdWx0WzNdWzBdID0gdHJ1bmMoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gdHJ1
bmMoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gdHJ1bmMoeFszXVsyXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IHRydW5jKGZsb2F0NHg0IHgpIHsKKyAgICBmbG9hdDR4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gdHJ1bmMoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gdHJ1bmMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gdHJ1bmMoeFswXVsy
XSk7CisgICAgcmVzdWx0WzBdWzNdID0gdHJ1bmMoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gdHJ1bmMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdHJ1bmMoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gdHJ1bmMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gdHJ1
bmMoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gdHJ1bmMoeFsyXVswXSk7CisgICAgcmVz
dWx0WzJdWzFdID0gdHJ1bmMoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gdHJ1bmMoeFsy
XVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gdHJ1bmMoeFsyXVszXSk7CisgICAgcmVzdWx0WzNd
WzBdID0gdHJ1bmMoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gdHJ1bmMoeFszXVsxXSk7
CisgICAgcmVzdWx0WzNdWzJdID0gdHJ1bmMoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0g
dHJ1bmMoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBkZHgoZmxvYXQy
IHgpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRkeCh4WzBdKTsKKyAg
ICByZXN1bHRbMV0gPSBkZHgoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBk
ZHgoZmxvYXQzIHgpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRkeCh4
WzBdKTsKKyAgICByZXN1bHRbMV0gPSBkZHgoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGR4KHhb
Ml0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgZGR4KGZsb2F0NCB4KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBkZHgoeFswXSk7CisgICAgcmVzdWx0WzFd
ID0gZGR4KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGRkeCh4WzJdKTsKKyAgICByZXN1bHRbM10g
PSBkZHgoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGRkeChmbG9hdDJ4
MiB4KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeCh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gZGR4KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeCh4WzFdWzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgZGR4KGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4KHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGRkeCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHgoeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gZGR4KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeCh4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHgoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0Mng0IGRkeChmbG9hdDJ4NCB4KSB7CisgICAgZmxvYXQyeDQgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGRkeCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBk
ZHgoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR4KHhbMF1bMl0pOworICAgIHJlc3Vs
dFswXVszXSA9IGRkeCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHgoeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gZGR4KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRk
eCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBkZHgoeFsxXVszXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0M3gyIGRkeChmbG9hdDN4MiB4KSB7CisgICAgZmxvYXQzeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBkZHgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4KHhbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IGRkeCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHgoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR4KHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDN4MyBkZHgoZmxvYXQzeDMgeCkgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBkZHgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4KHhb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBkZHgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4KHhbMV1bMV0pOworICAg
IHJlc3VsdFsxXVsyXSA9IGRkeCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHgoeFsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR4KHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsy
XSA9IGRkeCh4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgZGR4KGZs
b2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeCh4WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSBkZHgoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR4KHhbMF1bM10pOwor
ICAgIHJlc3VsdFsxXVswXSA9IGRkeCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHgo
eFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4KHhbMV1bMl0pOworICAgIHJlc3VsdFsx
XVszXSA9IGRkeCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHgoeFsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gZGR4KHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGRkeCh4
WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBkZHgoeFsyXVszXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NHgyIGRkeChmbG9hdDR4MiB4KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGRkeCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBk
ZHgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4KHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IGRkeCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHgoeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gZGR4KHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGRk
eCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBkZHgoeFszXVsxXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NHgzIGRkeChmbG9hdDR4MyB4KSB7CisgICAgZmxvYXQ0eDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBkZHgoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR4KHhbMF1bMl0pOworICAgIHJl
c3VsdFsxXVswXSA9IGRkeCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHgoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4KHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9
IGRkeCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHgoeFsyXVsxXSk7CisgICAgcmVz
dWx0WzJdWzJdID0gZGR4KHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGRkeCh4WzNdWzBd
KTsKKyAgICByZXN1bHRbM11bMV0gPSBkZHgoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0g
ZGR4KHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBkZHgoZmxvYXQ0
eDQgeCkgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHgoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IGRkeCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBkZHgoeFswXVszXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gZGR4KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeCh4WzFd
WzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNd
ID0gZGR4KHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeCh4WzJdWzBdKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBkZHgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR4KHhbMl1b
Ml0pOworICAgIHJlc3VsdFsyXVszXSA9IGRkeCh4WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0g
PSBkZHgoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGR4KHhbM11bMV0pOworICAgIHJl
c3VsdFszXVsyXSA9IGRkeCh4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBkZHgoeFszXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBkZHkoZmxvYXQyIHgpIHsKKyAgICBm
bG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRkeSh4WzBdKTsKKyAgICByZXN1bHRbMV0g
PSBkZHkoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBkZHkoZmxvYXQzIHgp
IHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRkeSh4WzBdKTsKKyAgICBy
ZXN1bHRbMV0gPSBkZHkoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGR5KHhbMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgZGR5KGZsb2F0NCB4KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBkZHkoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZGR5KHhbMV0p
OworICAgIHJlc3VsdFsyXSA9IGRkeSh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBkZHkoeFszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGRkeShmbG9hdDJ4MiB4KSB7CisgICAg
ZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeSh4WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBkZHkoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5KHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeSh4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQyeDMgZGR5KGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gZGR5KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeSh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHkoeFswXVsyXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gZGR5KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeSh4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBkZHkoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0Mng0IGRkeShmbG9hdDJ4NCB4KSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGRkeSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHkoeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gZGR5KHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGRk
eSh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHkoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gZGR5KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRkeSh4WzFdWzJdKTsK
KyAgICByZXN1bHRbMV1bM10gPSBkZHkoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0M3gyIGRkeShmbG9hdDN4MiB4KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGRkeSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHkoeFswXVsx
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IGRkeSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHkoeFsyXVswXSk7CisgICAgcmVz
dWx0WzJdWzFdID0gZGR5KHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4
MyBkZHkoZmxvYXQzeDMgeCkgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBkZHkoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR5KHhbMF1bMV0pOworICAg
IHJlc3VsdFswXVsyXSA9IGRkeSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHkoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IGRkeSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHkoeFsyXVswXSk7CisgICAg
cmVzdWx0WzJdWzFdID0gZGR5KHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGRkeSh4WzJd
WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgZGR5KGZsb2F0M3g0IHgpIHsK
KyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR5KHhbMF1bMF0pOwor
ICAgIHJlc3VsdFswXVsxXSA9IGRkeSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHko
eFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR5KHhbMF1bM10pOworICAgIHJlc3VsdFsx
XVswXSA9IGRkeSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHkoeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gZGR5KHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGRkeSh4
WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHkoeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gZGR5KHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGRkeSh4WzJdWzJdKTsKKyAg
ICByZXN1bHRbMl1bM10gPSBkZHkoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NHgyIGRkeShmbG9hdDR4MiB4KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGRkeSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHkoeFswXVsxXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZGR5KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRk
eSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHkoeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gZGR5KHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGRkeSh4WzNdWzBdKTsK
KyAgICByZXN1bHRbM11bMV0gPSBkZHkoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NHgzIGRkeShmbG9hdDR4MyB4KSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGRkeSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHkoeFswXVsx
XSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR5KHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9
IGRkeSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHkoeFsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gZGR5KHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeSh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBkZHkoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0g
ZGR5KHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGRkeSh4WzNdWzBdKTsKKyAgICByZXN1
bHRbM11bMV0gPSBkZHkoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZGR5KHhbM11bMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBkZHkoZmxvYXQ0eDQgeCkgeworICAg
IGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHkoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gZGR5KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeSh4WzBd
WzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBkZHkoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gZGR5KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeSh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBkZHkoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR5KHhbMV1b
M10pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeSh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBkZHkoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR5KHhbMl1bMl0pOworICAgIHJl
c3VsdFsyXVszXSA9IGRkeSh4WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBkZHkoeFszXVsw
XSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGR5KHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9
IGRkeSh4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBkZHkoeFszXVszXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBzcXJ0KGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBzcXJ0KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHNxcnQoeFsx
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBzcXJ0KGZsb2F0MyB4KSB7CisgICAg
ZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBzcXJ0KHhbMF0pOworICAgIHJlc3VsdFsx
XSA9IHNxcnQoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gc3FydCh4WzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IHNxcnQoZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IHNxcnQoeFswXSk7CisgICAgcmVzdWx0WzFdID0gc3FydCh4WzFdKTsK
KyAgICByZXN1bHRbMl0gPSBzcXJ0KHhbMl0pOworICAgIHJlc3VsdFszXSA9IHNxcnQoeFszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIHNxcnQoZmxvYXQyeDIgeCkgeworICAg
IGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzcXJ0KHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IHNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc3FydCh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzcXJ0KHhbMV1bMV0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDJ4MyBzcXJ0KGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc3FydCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBzcXJ0KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNxcnQoeFswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gc3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzcXJ0KHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNxcnQoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0Mng0IHNxcnQoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBzcXJ0KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IHNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc3FydCh4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBzcXJ0KHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHNxcnQoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3FydCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBzcXJ0KHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHNxcnQoeFsxXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIHNxcnQoZmxvYXQzeDIgeCkgeworICAgIGZs
b2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzcXJ0KHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IHNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc3FydCh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzcXJ0KHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVsw
XSA9IHNxcnQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc3FydCh4WzJdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgc3FydChmbG9hdDN4MyB4KSB7CisgICAgZmxv
YXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNxcnQoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gc3FydCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzcXJ0KHhbMF1b
Ml0pOworICAgIHJlc3VsdFsxXVswXSA9IHNxcnQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gc3FydCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzcXJ0KHhbMV1bMl0pOworICAg
IHJlc3VsdFsyXVswXSA9IHNxcnQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc3FydCh4
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzcXJ0KHhbMl1bMl0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDN4NCBzcXJ0KGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc3FydCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBzcXJ0KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNxcnQoeFswXVsyXSk7CisgICAg
cmVzdWx0WzBdWzNdID0gc3FydCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzcXJ0KHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gc3FydCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzcXJ0KHhbMV1bM10pOwor
ICAgIHJlc3VsdFsyXVswXSA9IHNxcnQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc3Fy
dCh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzcXJ0KHhbMl1bMl0pOworICAgIHJlc3Vs
dFsyXVszXSA9IHNxcnQoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgy
IHNxcnQoZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBzcXJ0KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNxcnQoeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gc3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzcXJ0
KHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHNxcnQoeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gc3FydCh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzcXJ0KHhbM11bMF0p
OworICAgIHJlc3VsdFszXVsxXSA9IHNxcnQoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NHgzIHNxcnQoZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBzcXJ0KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNxcnQo
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc3FydCh4WzBdWzJdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBzcXJ0KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNxcnQoeFsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gc3FydCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBz
cXJ0KHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHNxcnQoeFsyXVsxXSk7CisgICAgcmVz
dWx0WzJdWzJdID0gc3FydCh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzcXJ0KHhbM11b
MF0pOworICAgIHJlc3VsdFszXVsxXSA9IHNxcnQoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJd
ID0gc3FydCh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgc3FydChm
bG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNx
cnQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc3FydCh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBzcXJ0KHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHNxcnQoeFswXVsz
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gc3FydCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBzcXJ0KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNxcnQoeFsxXVsyXSk7CisgICAg
cmVzdWx0WzFdWzNdID0gc3FydCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzcXJ0KHhb
Ml1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHNxcnQoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJd
WzJdID0gc3FydCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBzcXJ0KHhbMl1bM10pOwor
ICAgIHJlc3VsdFszXVswXSA9IHNxcnQoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc3Fy
dCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBzcXJ0KHhbM11bMl0pOworICAgIHJlc3Vs
dFszXVszXSA9IHNxcnQoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBs
b2cyKGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBsb2cy
KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGxvZzIoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MyBsb2cyKGZsb2F0MyB4KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBsb2cyKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGxvZzIoeFsxXSk7CisgICAgcmVz
dWx0WzJdID0gbG9nMih4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGxvZzIo
ZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGxvZzIoeFsw
XSk7CisgICAgcmVzdWx0WzFdID0gbG9nMih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBsb2cyKHhb
Ml0pOworICAgIHJlc3VsdFszXSA9IGxvZzIoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MngyIGxvZzIoZmxvYXQyeDIgeCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBsb2cyKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxvZzIoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBsb2cyKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBsb2cy
KGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
bG9nMih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2cyKHhbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IGxvZzIoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMih4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2cyKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IGxvZzIoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGxvZzIo
ZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBs
b2cyKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxvZzIoeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gbG9nMih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBsb2cyKHhbMF1b
M10pOworICAgIHJlc3VsdFsxXVswXSA9IGxvZzIoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gbG9nMih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsb2cyKHhbMV1bMl0pOworICAg
IHJlc3VsdFsxXVszXSA9IGxvZzIoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0M3gyIGxvZzIoZmxvYXQzeDIgeCkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBsb2cyKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxvZzIoeFswXVsx
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBsb2cyKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGxvZzIoeFsyXVswXSk7CisgICAg
cmVzdWx0WzJdWzFdID0gbG9nMih4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQzeDMgbG9nMihmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGxvZzIoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbG9nMih4WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2cyKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9
IGxvZzIoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9nMih4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBsb2cyKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGxvZzIoeFsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nMih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBsb2cyKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBsb2cy
KGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
bG9nMih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsb2cyKHhbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IGxvZzIoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gbG9nMih4WzBd
WzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IGxvZzIoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbG9nMih4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSBsb2cyKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGxvZzIo
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nMih4WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBsb2cyKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGxvZzIoeFsyXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIGxvZzIoZmxvYXQ0eDIgeCkgeworICAg
IGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2cyKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IGxvZzIoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMih4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2cyKHhbMV1bMV0pOworICAgIHJlc3VsdFsy
XVswXSA9IGxvZzIoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nMih4WzJdWzFdKTsK
KyAgICByZXN1bHRbM11bMF0gPSBsb2cyKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGxv
ZzIoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIGxvZzIoZmxvYXQ0
eDMgeCkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsb2cyKHhb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxvZzIoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gbG9nMih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsb2cyKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGxvZzIoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbG9n
Mih4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsb2cyKHhbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IGxvZzIoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbG9nMih4WzJdWzJd
KTsKKyAgICByZXN1bHRbM11bMF0gPSBsb2cyKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9
IGxvZzIoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gbG9nMih4WzNdWzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgbG9nMihmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0
eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxvZzIoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gbG9nMih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsb2cyKHhbMF1bMl0p
OworICAgIHJlc3VsdFswXVszXSA9IGxvZzIoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
bG9nMih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsb2cyKHhbMV1bMV0pOworICAgIHJl
c3VsdFsxXVsyXSA9IGxvZzIoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gbG9nMih4WzFd
WzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsb2cyKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IGxvZzIoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbG9nMih4WzJdWzJdKTsKKyAg
ICByZXN1bHRbMl1bM10gPSBsb2cyKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGxvZzIo
eFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbG9nMih4WzNdWzFdKTsKKyAgICByZXN1bHRb
M11bMl0gPSBsb2cyKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGxvZzIoeFszXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBsb2cxMChmbG9hdDIgeCkgeworICAgIGZs
b2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbG9nMTAoeFswXSk7CisgICAgcmVzdWx0WzFd
ID0gbG9nMTAoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBsb2cxMChmbG9h
dDMgeCkgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbG9nMTAoeFswXSk7
CisgICAgcmVzdWx0WzFdID0gbG9nMTAoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gbG9nMTAoeFsy
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBsb2cxMChmbG9hdDQgeCkgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbG9nMTAoeFswXSk7CisgICAgcmVzdWx0
WzFdID0gbG9nMTAoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gbG9nMTAoeFsyXSk7CisgICAgcmVz
dWx0WzNdID0gbG9nMTAoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGxv
ZzEwKGZsb2F0MngyIHgpIHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gbG9nMTAoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbG9nMTAoeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gbG9nMTAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9n
MTAoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngzIGxvZzEwKGZsb2F0
MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbG9nMTAo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbG9nMTAoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gbG9nMTAoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMTAoeFsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9nMTAoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gbG9nMTAoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGxvZzEw
KGZsb2F0Mng0IHgpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
bG9nMTAoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbG9nMTAoeFswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gbG9nMTAoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gbG9nMTAo
eFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMTAoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gbG9nMTAoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbG9nMTAoeFsxXVsy
XSk7CisgICAgcmVzdWx0WzFdWzNdID0gbG9nMTAoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0M3gyIGxvZzEwKGZsb2F0M3gyIHgpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gbG9nMTAoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
bG9nMTAoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMTAoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gbG9nMTAoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbG9nMTAo
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nMTAoeFsyXVsxXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0M3gzIGxvZzEwKGZsb2F0M3gzIHgpIHsKKyAgICBmbG9hdDN4MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbG9nMTAoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gbG9nMTAoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbG9nMTAoeFswXVsyXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMTAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
bG9nMTAoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbG9nMTAoeFsxXVsyXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gbG9nMTAoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nMTAo
eFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbG9nMTAoeFsyXVsyXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0M3g0IGxvZzEwKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbG9nMTAoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gbG9nMTAoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbG9nMTAoeFswXVsyXSk7
CisgICAgcmVzdWx0WzBdWzNdID0gbG9nMTAoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
bG9nMTAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9nMTAoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzFdWzJdID0gbG9nMTAoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gbG9nMTAo
eFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbG9nMTAoeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gbG9nMTAoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbG9nMTAoeFsyXVsy
XSk7CisgICAgcmVzdWx0WzJdWzNdID0gbG9nMTAoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NHgyIGxvZzEwKGZsb2F0NHgyIHgpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gbG9nMTAoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
bG9nMTAoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMTAoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gbG9nMTAoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbG9nMTAo
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbG9nMTAoeFsyXVsxXSk7CisgICAgcmVzdWx0
WzNdWzBdID0gbG9nMTAoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbG9nMTAoeFszXVsx
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIGxvZzEwKGZsb2F0NHgzIHgpIHsK
KyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbG9nMTAoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gbG9nMTAoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0g
bG9nMTAoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbG9nMTAoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gbG9nMTAoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbG9nMTAo
eFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbG9nMTAoeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gbG9nMTAoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbG9nMTAoeFsyXVsy
XSk7CisgICAgcmVzdWx0WzNdWzBdID0gbG9nMTAoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFd
ID0gbG9nMTAoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gbG9nMTAoeFszXVsyXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IGxvZzEwKGZsb2F0NHg0IHgpIHsKKyAgICBm
bG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbG9nMTAoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gbG9nMTAoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbG9nMTAo
eFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gbG9nMTAoeFswXVszXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gbG9nMTAoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbG9nMTAoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzFdWzJdID0gbG9nMTAoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNd
ID0gbG9nMTAoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbG9nMTAoeFsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gbG9nMTAoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbG9n
MTAoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gbG9nMTAoeFsyXVszXSk7CisgICAgcmVz
dWx0WzNdWzBdID0gbG9nMTAoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbG9nMTAoeFsz
XVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gbG9nMTAoeFszXVsyXSk7CisgICAgcmVzdWx0WzNd
WzNdID0gbG9nMTAoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBmcmFj
KGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmcmFjKHhb
MF0pOworICAgIHJlc3VsdFsxXSA9IGZyYWMoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MyBmcmFjKGZsb2F0MyB4KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBmcmFjKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGZyYWMoeFsxXSk7CisgICAgcmVzdWx0
WzJdID0gZnJhYyh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGZyYWMoZmxv
YXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZyYWMoeFswXSk7
CisgICAgcmVzdWx0WzFdID0gZnJhYyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBmcmFjKHhbMl0p
OworICAgIHJlc3VsdFszXSA9IGZyYWMoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MngyIGZyYWMoZmxvYXQyeDIgeCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBmcmFjKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZyYWMoeFswXVsx
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gZnJhYyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBmcmFjKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBmcmFjKGZs
b2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZnJh
Yyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmcmFjKHhbMF1bMV0pOworICAgIHJlc3Vs
dFswXVsyXSA9IGZyYWMoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZnJhYyh4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBmcmFjKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9
IGZyYWMoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGZyYWMoZmxv
YXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmcmFj
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZyYWMoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gZnJhYyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBmcmFjKHhbMF1bM10p
OworICAgIHJlc3VsdFsxXVswXSA9IGZyYWMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
ZnJhYyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmcmFjKHhbMV1bMl0pOworICAgIHJl
c3VsdFsxXVszXSA9IGZyYWMoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
M3gyIGZyYWMoZmxvYXQzeDIgeCkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBmcmFjKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZyYWMoeFswXVsxXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZnJhYyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBm
cmFjKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGZyYWMoeFsyXVswXSk7CisgICAgcmVz
dWx0WzJdWzFdID0gZnJhYyh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
eDMgZnJhYyhmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGZyYWMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZnJhYyh4WzBdWzFdKTsK
KyAgICByZXN1bHRbMF1bMl0gPSBmcmFjKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGZy
YWMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZnJhYyh4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBmcmFjKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGZyYWMoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gZnJhYyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0g
PSBmcmFjKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBmcmFjKGZs
b2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZnJh
Yyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmcmFjKHhbMF1bMV0pOworICAgIHJlc3Vs
dFswXVsyXSA9IGZyYWMoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZnJhYyh4WzBdWzNd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBmcmFjKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IGZyYWMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZnJhYyh4WzFdWzJdKTsKKyAgICBy
ZXN1bHRbMV1bM10gPSBmcmFjKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGZyYWMoeFsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZnJhYyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBmcmFjKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGZyYWMoeFsyXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIGZyYWMoZmxvYXQ0eDIgeCkgeworICAgIGZs
b2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmcmFjKHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IGZyYWMoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZnJhYyh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmcmFjKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVsw
XSA9IGZyYWMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZnJhYyh4WzJdWzFdKTsKKyAg
ICByZXN1bHRbM11bMF0gPSBmcmFjKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGZyYWMo
eFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIGZyYWMoZmxvYXQ0eDMg
eCkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmcmFjKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZyYWMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJd
ID0gZnJhYyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmcmFjKHhbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IGZyYWMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZnJhYyh4
WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmcmFjKHhbMl1bMF0pOworICAgIHJlc3VsdFsy
XVsxXSA9IGZyYWMoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZnJhYyh4WzJdWzJdKTsK
KyAgICByZXN1bHRbM11bMF0gPSBmcmFjKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGZy
YWMoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZnJhYyh4WzNdWzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgZnJhYyhmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZyYWMoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gZnJhYyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmcmFjKHhbMF1bMl0pOwor
ICAgIHJlc3VsdFswXVszXSA9IGZyYWMoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZnJh
Yyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmcmFjKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IGZyYWMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZnJhYyh4WzFdWzNd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSBmcmFjKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IGZyYWMoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZnJhYyh4WzJdWzJdKTsKKyAgICBy
ZXN1bHRbMl1bM10gPSBmcmFjKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGZyYWMoeFsz
XVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZnJhYyh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11b
Ml0gPSBmcmFjKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGZyYWMoeFszXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBleHAyKGZsb2F0MiB4KSB7CisgICAgZmxvYXQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBleHAyKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGV4
cDIoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBleHAyKGZsb2F0MyB4KSB7
CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBleHAyKHhbMF0pOworICAgIHJl
c3VsdFsxXSA9IGV4cDIoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZXhwMih4WzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGV4cDIoZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGV4cDIoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZXhwMih4
WzFdKTsKKyAgICByZXN1bHRbMl0gPSBleHAyKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGV4cDIo
eFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGV4cDIoZmxvYXQyeDIgeCkg
eworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBleHAyKHhbMF1bMF0p
OworICAgIHJlc3VsdFswXVsxXSA9IGV4cDIoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
ZXhwMih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBleHAyKHhbMV1bMV0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBleHAyKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZXhwMih4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBleHAyKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGV4cDIoeFswXVsyXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZXhwMih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBl
eHAyKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGV4cDIoeFsxXVsyXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGV4cDIoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBleHAyKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGV4cDIoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZXhwMih4WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSBleHAyKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGV4
cDIoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZXhwMih4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBleHAyKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGV4cDIoeFsxXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGV4cDIoZmxvYXQzeDIgeCkgewor
ICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBleHAyKHhbMF1bMF0pOwor
ICAgIHJlc3VsdFswXVsxXSA9IGV4cDIoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZXhw
Mih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBleHAyKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsyXVswXSA9IGV4cDIoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZXhwMih4WzJdWzFd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgZXhwMihmbG9hdDN4MyB4KSB7Cisg
ICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGV4cDIoeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gZXhwMih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBleHAy
KHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGV4cDIoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gZXhwMih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBleHAyKHhbMV1bMl0p
OworICAgIHJlc3VsdFsyXVswXSA9IGV4cDIoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
ZXhwMih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBleHAyKHhbMl1bMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBleHAyKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZXhwMih4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBleHAyKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGV4cDIoeFswXVsyXSk7
CisgICAgcmVzdWx0WzBdWzNdID0gZXhwMih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBl
eHAyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cDIoeFsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gZXhwMih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBleHAyKHhbMV1b
M10pOworICAgIHJlc3VsdFsyXVswXSA9IGV4cDIoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gZXhwMih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBleHAyKHhbMl1bMl0pOworICAg
IHJlc3VsdFsyXVszXSA9IGV4cDIoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NHgyIGV4cDIoZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBleHAyKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGV4cDIoeFswXVsx
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gZXhwMih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBleHAyKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGV4cDIoeFsyXVswXSk7CisgICAg
cmVzdWx0WzJdWzFdID0gZXhwMih4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBleHAyKHhb
M11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGV4cDIoeFszXVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NHgzIGV4cDIoZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0NHgzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBleHAyKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGV4cDIoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZXhwMih4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBleHAyKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGV4cDIoeFsx
XVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZXhwMih4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1b
MF0gPSBleHAyKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGV4cDIoeFsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gZXhwMih4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBleHAy
KHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGV4cDIoeFszXVsxXSk7CisgICAgcmVzdWx0
WzNdWzJdID0gZXhwMih4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQg
ZXhwMihmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGV4cDIoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZXhwMih4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSBleHAyKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGV4cDIo
eFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZXhwMih4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBleHAyKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGV4cDIoeFsxXVsyXSk7
CisgICAgcmVzdWx0WzFdWzNdID0gZXhwMih4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBl
eHAyKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGV4cDIoeFsyXVsxXSk7CisgICAgcmVz
dWx0WzJdWzJdID0gZXhwMih4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBleHAyKHhbMl1b
M10pOworICAgIHJlc3VsdFszXVswXSA9IGV4cDIoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFd
ID0gZXhwMih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBleHAyKHhbM11bMl0pOworICAg
IHJlc3VsdFszXVszXSA9IGV4cDIoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MiBkZWdyZWVzKGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBkZWdyZWVzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGRlZ3JlZXMoeFsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBkZWdyZWVzKGZsb2F0MyB4KSB7CisgICAgZmxvYXQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBkZWdyZWVzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9
IGRlZ3JlZXMoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGVncmVlcyh4WzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IGRlZ3JlZXMoZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGRlZ3JlZXMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZGVn
cmVlcyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBkZWdyZWVzKHhbMl0pOworICAgIHJlc3VsdFsz
XSA9IGRlZ3JlZXMoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGRlZ3Jl
ZXMoZmxvYXQyeDIgeCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBkZWdyZWVzKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRlZ3JlZXMoeFswXVsxXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZGVncmVlcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBkZWdyZWVzKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBkZWdy
ZWVzKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gZGVncmVlcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZWdyZWVzKHhbMF1bMV0p
OworICAgIHJlc3VsdFswXVsyXSA9IGRlZ3JlZXMoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gZGVncmVlcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZWdyZWVzKHhbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IGRlZ3JlZXMoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0Mng0IGRlZ3JlZXMoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZWdyZWVzKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IGRlZ3JlZXMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGVncmVlcyh4WzBdWzJd
KTsKKyAgICByZXN1bHRbMF1bM10gPSBkZWdyZWVzKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVsw
XSA9IGRlZ3JlZXMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGVncmVlcyh4WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZWdyZWVzKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVsz
XSA9IGRlZ3JlZXMoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGRl
Z3JlZXMoZmxvYXQzeDIgeCkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBkZWdyZWVzKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRlZ3JlZXMoeFswXVsx
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGVncmVlcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBkZWdyZWVzKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGRlZ3JlZXMoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGVncmVlcyh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzeDMgZGVncmVlcyhmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGRlZ3JlZXMoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gZGVncmVlcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZWdyZWVzKHhbMF1b
Ml0pOworICAgIHJlc3VsdFsxXVswXSA9IGRlZ3JlZXMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gZGVncmVlcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZWdyZWVzKHhbMV1b
Ml0pOworICAgIHJlc3VsdFsyXVswXSA9IGRlZ3JlZXMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gZGVncmVlcyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZWdyZWVzKHhbMl1b
Ml0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBkZWdyZWVzKGZsb2F0M3g0IHgp
IHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGVncmVlcyh4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZWdyZWVzKHhbMF1bMV0pOworICAgIHJlc3VsdFsw
XVsyXSA9IGRlZ3JlZXMoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGVncmVlcyh4WzBd
WzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZWdyZWVzKHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IGRlZ3JlZXMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGVncmVlcyh4WzFd
WzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBkZWdyZWVzKHhbMV1bM10pOworICAgIHJlc3VsdFsy
XVswXSA9IGRlZ3JlZXMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGVncmVlcyh4WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZWdyZWVzKHhbMl1bMl0pOworICAgIHJlc3VsdFsy
XVszXSA9IGRlZ3JlZXMoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgy
IGRlZ3JlZXMoZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBkZWdyZWVzKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRlZ3JlZXMoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGVncmVlcyh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBkZWdyZWVzKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGRlZ3JlZXMoeFsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGVncmVlcyh4WzJdWzFdKTsKKyAgICByZXN1bHRb
M11bMF0gPSBkZWdyZWVzKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGRlZ3JlZXMoeFsz
XVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIGRlZ3JlZXMoZmxvYXQ0eDMg
eCkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZWdyZWVzKHhb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRlZ3JlZXMoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gZGVncmVlcyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZWdyZWVzKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRlZ3JlZXMoeFsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gZGVncmVlcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZWdyZWVzKHhb
Ml1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGRlZ3JlZXMoeFsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gZGVncmVlcyh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBkZWdyZWVzKHhb
M11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGRlZ3JlZXMoeFszXVsxXSk7CisgICAgcmVzdWx0
WzNdWzJdID0gZGVncmVlcyh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
eDQgZGVncmVlcyhmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGRlZ3JlZXMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGVncmVlcyh4
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZWdyZWVzKHhbMF1bMl0pOworICAgIHJlc3Vs
dFswXVszXSA9IGRlZ3JlZXMoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGVncmVlcyh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZWdyZWVzKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IGRlZ3JlZXMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGVncmVlcyh4
WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZWdyZWVzKHhbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IGRlZ3JlZXMoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGVncmVlcyh4
WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBkZWdyZWVzKHhbMl1bM10pOworICAgIHJlc3Vs
dFszXVswXSA9IGRlZ3JlZXMoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGVncmVlcyh4
WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBkZWdyZWVzKHhbM11bMl0pOworICAgIHJlc3Vs
dFszXVszXSA9IGRlZ3JlZXMoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
MiByYWRpYW5zKGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSByYWRpYW5zKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHJhZGlhbnMoeFsxXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyByYWRpYW5zKGZsb2F0MyB4KSB7CisgICAgZmxvYXQzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSByYWRpYW5zKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHJh
ZGlhbnMoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gcmFkaWFucyh4WzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IHJhZGlhbnMoZmxvYXQ0IHgpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IHJhZGlhbnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gcmFkaWFu
cyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSByYWRpYW5zKHhbMl0pOworICAgIHJlc3VsdFszXSA9
IHJhZGlhbnMoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIHJhZGlhbnMo
ZmxvYXQyeDIgeCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBy
YWRpYW5zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHJhZGlhbnMoeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gcmFkaWFucyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBy
YWRpYW5zKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyByYWRpYW5z
KGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
cmFkaWFucyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByYWRpYW5zKHhbMF1bMV0pOwor
ICAgIHJlc3VsdFswXVsyXSA9IHJhZGlhbnMoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
cmFkaWFucyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByYWRpYW5zKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IHJhZGlhbnMoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0Mng0IHJhZGlhbnMoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSByYWRpYW5zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IHJhZGlhbnMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcmFkaWFucyh4WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSByYWRpYW5zKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9
IHJhZGlhbnMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcmFkaWFucyh4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSByYWRpYW5zKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9
IHJhZGlhbnMoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIHJhZGlh
bnMoZmxvYXQzeDIgeCkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSByYWRpYW5zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHJhZGlhbnMoeFswXVsxXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gcmFkaWFucyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSByYWRpYW5zKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHJhZGlhbnMoeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gcmFkaWFucyh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzeDMgcmFkaWFucyhmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IHJhZGlhbnMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gcmFkaWFucyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByYWRpYW5zKHhbMF1bMl0p
OworICAgIHJlc3VsdFsxXVswXSA9IHJhZGlhbnMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gcmFkaWFucyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByYWRpYW5zKHhbMV1bMl0p
OworICAgIHJlc3VsdFsyXVswXSA9IHJhZGlhbnMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gcmFkaWFucyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSByYWRpYW5zKHhbMl1bMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCByYWRpYW5zKGZsb2F0M3g0IHgpIHsK
KyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcmFkaWFucyh4WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSByYWRpYW5zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IHJhZGlhbnMoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gcmFkaWFucyh4WzBdWzNd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSByYWRpYW5zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IHJhZGlhbnMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcmFkaWFucyh4WzFdWzJd
KTsKKyAgICByZXN1bHRbMV1bM10gPSByYWRpYW5zKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVsw
XSA9IHJhZGlhbnMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcmFkaWFucyh4WzJdWzFd
KTsKKyAgICByZXN1bHRbMl1bMl0gPSByYWRpYW5zKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVsz
XSA9IHJhZGlhbnMoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIHJh
ZGlhbnMoZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSByYWRpYW5zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHJhZGlhbnMoeFswXVsx
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gcmFkaWFucyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSByYWRpYW5zKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHJhZGlhbnMoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gcmFkaWFucyh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11b
MF0gPSByYWRpYW5zKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IHJhZGlhbnMoeFszXVsx
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIHJhZGlhbnMoZmxvYXQ0eDMgeCkg
eworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByYWRpYW5zKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IHJhZGlhbnMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gcmFkaWFucyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByYWRpYW5zKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHJhZGlhbnMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gcmFkaWFucyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByYWRpYW5zKHhbMl1b
MF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHJhZGlhbnMoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJd
WzJdID0gcmFkaWFucyh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSByYWRpYW5zKHhbM11b
MF0pOworICAgIHJlc3VsdFszXVsxXSA9IHJhZGlhbnMoeFszXVsxXSk7CisgICAgcmVzdWx0WzNd
WzJdID0gcmFkaWFucyh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQg
cmFkaWFucyhmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IHJhZGlhbnMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcmFkaWFucyh4WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByYWRpYW5zKHhbMF1bMl0pOworICAgIHJlc3VsdFsw
XVszXSA9IHJhZGlhbnMoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcmFkaWFucyh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSByYWRpYW5zKHhbMV1bMV0pOworICAgIHJlc3VsdFsx
XVsyXSA9IHJhZGlhbnMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gcmFkaWFucyh4WzFd
WzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByYWRpYW5zKHhbMl1bMF0pOworICAgIHJlc3VsdFsy
XVsxXSA9IHJhZGlhbnMoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gcmFkaWFucyh4WzJd
WzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSByYWRpYW5zKHhbMl1bM10pOworICAgIHJlc3VsdFsz
XVswXSA9IHJhZGlhbnMoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gcmFkaWFucyh4WzNd
WzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSByYWRpYW5zKHhbM11bMl0pOworICAgIHJlc3VsdFsz
XVszXSA9IHJhZGlhbnMoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBy
Y3AoZmxvYXQyIHgpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHJjcCh4
WzBdKTsKKyAgICByZXN1bHRbMV0gPSByY3AoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MyByY3AoZmxvYXQzIHgpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IHJjcCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSByY3AoeFsxXSk7CisgICAgcmVzdWx0WzJd
ID0gcmNwKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgcmNwKGZsb2F0NCB4
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSByY3AoeFswXSk7CisgICAg
cmVzdWx0WzFdID0gcmNwKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHJjcCh4WzJdKTsKKyAgICBy
ZXN1bHRbM10gPSByY3AoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIHJj
cChmbG9hdDJ4MiB4KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IHJjcCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSByY3AoeFswXVsxXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gcmNwKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHJjcCh4WzFdWzFd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgcmNwKGZsb2F0MngzIHgpIHsKKyAg
ICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcmNwKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IHJjcCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSByY3AoeFsw
XVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcmNwKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IHJjcCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByY3AoeFsxXVsyXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IHJjcChmbG9hdDJ4NCB4KSB7CisgICAgZmxvYXQy
eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHJjcCh4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSByY3AoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcmNwKHhbMF1bMl0pOwor
ICAgIHJlc3VsdFswXVszXSA9IHJjcCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSByY3Ao
eFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcmNwKHhbMV1bMV0pOworICAgIHJlc3VsdFsx
XVsyXSA9IHJjcCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSByY3AoeFsxXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIHJjcChmbG9hdDN4MiB4KSB7CisgICAgZmxv
YXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHJjcCh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSByY3AoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcmNwKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IHJjcCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBy
Y3AoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcmNwKHhbMl1bMV0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDN4MyByY3AoZmxvYXQzeDMgeCkgeworICAgIGZsb2F0M3gzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSByY3AoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gcmNwKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHJjcCh4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSByY3AoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcmNwKHhbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHJjcCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0g
PSByY3AoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcmNwKHhbMl1bMV0pOworICAgIHJl
c3VsdFsyXVsyXSA9IHJjcCh4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
eDQgcmNwKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gcmNwKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHJjcCh4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSByY3AoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gcmNwKHhb
MF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHJjcCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSByY3AoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcmNwKHhbMV1bMl0pOworICAg
IHJlc3VsdFsxXVszXSA9IHJjcCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByY3AoeFsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcmNwKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsy
XSA9IHJjcCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSByY3AoeFsyXVszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIHJjcChmbG9hdDR4MiB4KSB7CisgICAgZmxvYXQ0
eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHJjcCh4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSByY3AoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcmNwKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHJjcCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSByY3Ao
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcmNwKHhbMl1bMV0pOworICAgIHJlc3VsdFsz
XVswXSA9IHJjcCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSByY3AoeFszXVsxXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIHJjcChmbG9hdDR4MyB4KSB7CisgICAgZmxv
YXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHJjcCh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSByY3AoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcmNwKHhbMF1bMl0p
OworICAgIHJlc3VsdFsxXVswXSA9IHJjcCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBy
Y3AoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcmNwKHhbMV1bMl0pOworICAgIHJlc3Vs
dFsyXVswXSA9IHJjcCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSByY3AoeFsyXVsxXSk7
CisgICAgcmVzdWx0WzJdWzJdID0gcmNwKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IHJj
cCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSByY3AoeFszXVsxXSk7CisgICAgcmVzdWx0
WzNdWzJdID0gcmNwKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBy
Y3AoZmxvYXQ0eDQgeCkgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSByY3AoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcmNwKHhbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IHJjcCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSByY3AoeFswXVsz
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gcmNwKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IHJjcCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSByY3AoeFsxXVsyXSk7CisgICAgcmVz
dWx0WzFdWzNdID0gcmNwKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHJjcCh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSByY3AoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0g
cmNwKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHJjcCh4WzJdWzNdKTsKKyAgICByZXN1
bHRbM11bMF0gPSByY3AoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gcmNwKHhbM11bMV0p
OworICAgIHJlc3VsdFszXVsyXSA9IHJjcCh4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBy
Y3AoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiByc3FydChmbG9hdDIg
eCkgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gcnNxcnQoeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gcnNxcnQoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
MyByc3FydChmbG9hdDMgeCkgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
cnNxcnQoeFswXSk7CisgICAgcmVzdWx0WzFdID0gcnNxcnQoeFsxXSk7CisgICAgcmVzdWx0WzJd
ID0gcnNxcnQoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCByc3FydChmbG9h
dDQgeCkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gcnNxcnQoeFswXSk7
CisgICAgcmVzdWx0WzFdID0gcnNxcnQoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gcnNxcnQoeFsy
XSk7CisgICAgcmVzdWx0WzNdID0gcnNxcnQoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MngyIHJzcXJ0KGZsb2F0MngyIHgpIHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gcnNxcnQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcnNxcnQo
eFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcnNxcnQoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gcnNxcnQoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mngz
IHJzcXJ0KGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gcnNxcnQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcnNxcnQoeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gcnNxcnQoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
cnNxcnQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcnNxcnQoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzFdWzJdID0gcnNxcnQoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0Mng0IHJzcXJ0KGZsb2F0Mng0IHgpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gcnNxcnQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcnNxcnQoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcnNxcnQoeFswXVsyXSk7CisgICAgcmVzdWx0WzBd
WzNdID0gcnNxcnQoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcnNxcnQoeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gcnNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
cnNxcnQoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gcnNxcnQoeFsxXVszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIHJzcXJ0KGZsb2F0M3gyIHgpIHsKKyAgICBmbG9h
dDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcnNxcnQoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gcnNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcnNxcnQoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcnNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJd
WzBdID0gcnNxcnQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcnNxcnQoeFsyXVsxXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIHJzcXJ0KGZsb2F0M3gzIHgpIHsKKyAg
ICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcnNxcnQoeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gcnNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcnNx
cnQoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcnNxcnQoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gcnNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcnNxcnQoeFsx
XVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcnNxcnQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gcnNxcnQoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gcnNxcnQoeFsyXVsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IHJzcXJ0KGZsb2F0M3g0IHgpIHsKKyAg
ICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcnNxcnQoeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gcnNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcnNx
cnQoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gcnNxcnQoeFswXVszXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gcnNxcnQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcnNxcnQoeFsx
XVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcnNxcnQoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFd
WzNdID0gcnNxcnQoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcnNxcnQoeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gcnNxcnQoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0g
cnNxcnQoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gcnNxcnQoeFsyXVszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIHJzcXJ0KGZsb2F0NHgyIHgpIHsKKyAgICBmbG9h
dDR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcnNxcnQoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gcnNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcnNxcnQoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcnNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJd
WzBdID0gcnNxcnQoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcnNxcnQoeFsyXVsxXSk7
CisgICAgcmVzdWx0WzNdWzBdID0gcnNxcnQoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0g
cnNxcnQoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIHJzcXJ0KGZs
b2F0NHgzIHgpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcnNx
cnQoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcnNxcnQoeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gcnNxcnQoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcnNxcnQoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcnNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gcnNxcnQoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcnNxcnQoeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gcnNxcnQoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0g
cnNxcnQoeFsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gcnNxcnQoeFszXVswXSk7CisgICAg
cmVzdWx0WzNdWzFdID0gcnNxcnQoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gcnNxcnQo
eFszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IHJzcXJ0KGZsb2F0NHg0
IHgpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gcnNxcnQoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcnNxcnQoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gcnNxcnQoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gcnNxcnQoeFswXVszXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gcnNxcnQoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
cnNxcnQoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcnNxcnQoeFsxXVsyXSk7CisgICAg
cmVzdWx0WzFdWzNdID0gcnNxcnQoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcnNxcnQo
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcnNxcnQoeFsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gcnNxcnQoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gcnNxcnQoeFsyXVsz
XSk7CisgICAgcmVzdWx0WzNdWzBdID0gcnNxcnQoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFd
ID0gcnNxcnQoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gcnNxcnQoeFszXVsyXSk7Cisg
ICAgcmVzdWx0WzNdWzNdID0gcnNxcnQoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MiBzYXR1cmF0ZShmbG9hdDIgeCkgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gc2F0dXJhdGUoeFswXSk7CisgICAgcmVzdWx0WzFdID0gc2F0dXJhdGUoeFsxXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBzYXR1cmF0ZShmbG9hdDMgeCkgeworICAg
IGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc2F0dXJhdGUoeFswXSk7CisgICAgcmVz
dWx0WzFdID0gc2F0dXJhdGUoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gc2F0dXJhdGUoeFsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBzYXR1cmF0ZShmbG9hdDQgeCkgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc2F0dXJhdGUoeFswXSk7CisgICAgcmVz
dWx0WzFdID0gc2F0dXJhdGUoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gc2F0dXJhdGUoeFsyXSk7
CisgICAgcmVzdWx0WzNdID0gc2F0dXJhdGUoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MngyIHNhdHVyYXRlKGZsb2F0MngyIHgpIHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gc2F0dXJhdGUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
c2F0dXJhdGUoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2F0dXJhdGUoeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gc2F0dXJhdGUoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngzIHNhdHVyYXRlKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2F0dXJhdGUoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gc2F0dXJhdGUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2F0dXJhdGUoeFsw
XVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2F0dXJhdGUoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gc2F0dXJhdGUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2F0dXJhdGUo
eFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IHNhdHVyYXRlKGZsb2F0
Mng0IHgpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2F0dXJh
dGUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2F0dXJhdGUoeFswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gc2F0dXJhdGUoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gc2F0
dXJhdGUoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2F0dXJhdGUoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gc2F0dXJhdGUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
c2F0dXJhdGUoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc2F0dXJhdGUoeFsxXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIHNhdHVyYXRlKGZsb2F0M3gyIHgpIHsK
KyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2F0dXJhdGUoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2F0dXJhdGUoeFswXVsxXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gc2F0dXJhdGUoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2F0dXJhdGUoeFsx
XVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc2F0dXJhdGUoeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gc2F0dXJhdGUoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
M3gzIHNhdHVyYXRlKGZsb2F0M3gzIHgpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gc2F0dXJhdGUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2F0dXJh
dGUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2F0dXJhdGUoeFswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gc2F0dXJhdGUoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2F0
dXJhdGUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2F0dXJhdGUoeFsxXVsyXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gc2F0dXJhdGUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
c2F0dXJhdGUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2F0dXJhdGUoeFsyXVsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IHNhdHVyYXRlKGZsb2F0M3g0IHgpIHsK
KyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2F0dXJhdGUoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2F0dXJhdGUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gc2F0dXJhdGUoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gc2F0dXJhdGUoeFsw
XVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2F0dXJhdGUoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gc2F0dXJhdGUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2F0dXJhdGUo
eFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc2F0dXJhdGUoeFsxXVszXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gc2F0dXJhdGUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2F0dXJh
dGUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2F0dXJhdGUoeFsyXVsyXSk7CisgICAg
cmVzdWx0WzJdWzNdID0gc2F0dXJhdGUoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NHgyIHNhdHVyYXRlKGZsb2F0NHgyIHgpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gc2F0dXJhdGUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
c2F0dXJhdGUoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2F0dXJhdGUoeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gc2F0dXJhdGUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gc2F0dXJhdGUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2F0dXJhdGUoeFsyXVsx
XSk7CisgICAgcmVzdWx0WzNdWzBdID0gc2F0dXJhdGUoeFszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gc2F0dXJhdGUoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgz
IHNhdHVyYXRlKGZsb2F0NHgzIHgpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gc2F0dXJhdGUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2F0dXJhdGUo
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2F0dXJhdGUoeFswXVsyXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gc2F0dXJhdGUoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2F0dXJh
dGUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2F0dXJhdGUoeFsxXVsyXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gc2F0dXJhdGUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2F0
dXJhdGUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2F0dXJhdGUoeFsyXVsyXSk7Cisg
ICAgcmVzdWx0WzNdWzBdID0gc2F0dXJhdGUoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0g
c2F0dXJhdGUoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gc2F0dXJhdGUoeFszXVsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IHNhdHVyYXRlKGZsb2F0NHg0IHgpIHsK
KyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2F0dXJhdGUoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2F0dXJhdGUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gc2F0dXJhdGUoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gc2F0dXJhdGUoeFsw
XVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2F0dXJhdGUoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gc2F0dXJhdGUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2F0dXJhdGUo
eFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc2F0dXJhdGUoeFsxXVszXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gc2F0dXJhdGUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2F0dXJh
dGUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2F0dXJhdGUoeFsyXVsyXSk7CisgICAg
cmVzdWx0WzJdWzNdID0gc2F0dXJhdGUoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gc2F0
dXJhdGUoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc2F0dXJhdGUoeFszXVsxXSk7Cisg
ICAgcmVzdWx0WzNdWzJdID0gc2F0dXJhdGUoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0g
c2F0dXJhdGUoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBkZHhfY29h
cnNlKGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBkZHhf
Y29hcnNlKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGRkeF9jb2Fyc2UoeFsxXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBkZHhfY29hcnNlKGZsb2F0MyB4KSB7CisgICAgZmxvYXQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBkZHhfY29hcnNlKHhbMF0pOworICAgIHJlc3VsdFsx
XSA9IGRkeF9jb2Fyc2UoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGR4X2NvYXJzZSh4WzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGRkeF9jb2Fyc2UoZmxvYXQ0IHgpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRkeF9jb2Fyc2UoeFswXSk7CisgICAg
cmVzdWx0WzFdID0gZGR4X2NvYXJzZSh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBkZHhfY29hcnNl
KHhbMl0pOworICAgIHJlc3VsdFszXSA9IGRkeF9jb2Fyc2UoeFszXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MngyIGRkeF9jb2Fyc2UoZmxvYXQyeDIgeCkgeworICAgIGZsb2F0Mngy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhfY29hcnNlKHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IGRkeF9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4
X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHhfY29hcnNlKHhbMV1bMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBkZHhfY29hcnNlKGZsb2F0MngzIHgp
IHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4X2NvYXJzZSh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHhfY29hcnNlKHhbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IGRkeF9jb2Fyc2UoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4
X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHhfY29hcnNlKHhbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IGRkeF9jb2Fyc2UoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0Mng0IGRkeF9jb2Fyc2UoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhfY29hcnNlKHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IGRkeF9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR4
X2NvYXJzZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBkZHhfY29hcnNlKHhbMF1bM10p
OworICAgIHJlc3VsdFsxXVswXSA9IGRkeF9jb2Fyc2UoeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gZGR4X2NvYXJzZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHhfY29hcnNl
KHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGRkeF9jb2Fyc2UoeFsxXVszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGRkeF9jb2Fyc2UoZmxvYXQzeDIgeCkgeworICAg
IGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhfY29hcnNlKHhbMF1bMF0p
OworICAgIHJlc3VsdFswXVsxXSA9IGRkeF9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gZGR4X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHhfY29hcnNl
KHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeF9jb2Fyc2UoeFsyXVswXSk7CisgICAg
cmVzdWx0WzJdWzFdID0gZGR4X2NvYXJzZSh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQzeDMgZGR4X2NvYXJzZShmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGRkeF9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gZGR4X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHhfY29hcnNl
KHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGRkeF9jb2Fyc2UoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gZGR4X2NvYXJzZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBk
ZHhfY29hcnNlKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeF9jb2Fyc2UoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR4X2NvYXJzZSh4WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBkZHhfY29hcnNlKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDN4NCBkZHhfY29hcnNlKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gZGR4X2NvYXJzZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBk
ZHhfY29hcnNlKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeF9jb2Fyc2UoeFswXVsy
XSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR4X2NvYXJzZSh4WzBdWzNdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBkZHhfY29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeF9jb2Fy
c2UoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4X2NvYXJzZSh4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSBkZHhfY29hcnNlKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9
IGRkeF9jb2Fyc2UoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR4X2NvYXJzZSh4WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHhfY29hcnNlKHhbMl1bMl0pOworICAgIHJlc3Vs
dFsyXVszXSA9IGRkeF9jb2Fyc2UoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NHgyIGRkeF9jb2Fyc2UoZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBkZHhfY29hcnNlKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGRkeF9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2NvYXJzZSh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHhfY29hcnNlKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsyXVswXSA9IGRkeF9jb2Fyc2UoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR4X2Nv
YXJzZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBkZHhfY29hcnNlKHhbM11bMF0pOwor
ICAgIHJlc3VsdFszXVsxXSA9IGRkeF9jb2Fyc2UoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NHgzIGRkeF9jb2Fyc2UoZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0NHgzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHhfY29hcnNlKHhbMF1bMF0pOworICAgIHJlc3Vs
dFswXVsxXSA9IGRkeF9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR4X2Nv
YXJzZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHhfY29hcnNlKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGRkeF9jb2Fyc2UoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gZGR4X2NvYXJzZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHhfY29hcnNlKHhb
Ml1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGRkeF9jb2Fyc2UoeFsyXVsxXSk7CisgICAgcmVz
dWx0WzJdWzJdID0gZGR4X2NvYXJzZSh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBkZHhf
Y29hcnNlKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGRkeF9jb2Fyc2UoeFszXVsxXSk7
CisgICAgcmVzdWx0WzNdWzJdID0gZGR4X2NvYXJzZSh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0eDQgZGR4X2NvYXJzZShmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0eDQg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeF9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gZGR4X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHhf
Y29hcnNlKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGRkeF9jb2Fyc2UoeFswXVszXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBkZHhfY29hcnNlKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRkeF9jb2Fyc2Uo
eFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR4X2NvYXJzZSh4WzFdWzNdKTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBkZHhfY29hcnNlKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGRk
eF9jb2Fyc2UoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR4X2NvYXJzZSh4WzJdWzJd
KTsKKyAgICByZXN1bHRbMl1bM10gPSBkZHhfY29hcnNlKHhbMl1bM10pOworICAgIHJlc3VsdFsz
XVswXSA9IGRkeF9jb2Fyc2UoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGR4X2NvYXJz
ZSh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBkZHhfY29hcnNlKHhbM11bMl0pOworICAg
IHJlc3VsdFszXVszXSA9IGRkeF9jb2Fyc2UoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MiBkZHhfZmluZShmbG9hdDIgeCkgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gZGR4X2ZpbmUoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZGR4X2ZpbmUoeFsx
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBkZHhfZmluZShmbG9hdDMgeCkgewor
ICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR4X2ZpbmUoeFswXSk7CisgICAg
cmVzdWx0WzFdID0gZGR4X2ZpbmUoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGR4X2ZpbmUoeFsy
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBkZHhfZmluZShmbG9hdDQgeCkgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR4X2ZpbmUoeFswXSk7CisgICAg
cmVzdWx0WzFdID0gZGR4X2ZpbmUoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGR4X2ZpbmUoeFsy
XSk7CisgICAgcmVzdWx0WzNdID0gZGR4X2ZpbmUoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MngyIGRkeF9maW5lKGZsb2F0MngyIHgpIHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gZGR4X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gZGR4X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2ZpbmUoeFsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4X2ZpbmUoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MngzIGRkeF9maW5lKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gZGR4X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR4X2ZpbmUo
eFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2ZpbmUoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gZGR4X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4X2Zp
bmUoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGRkeF9maW5lKGZs
b2F0Mng0IHgpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4
X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4X2ZpbmUoeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzBdWzJdID0gZGR4X2ZpbmUoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0g
ZGR4X2ZpbmUoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2ZpbmUoeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gZGR4X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gZGR4X2ZpbmUoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR4X2ZpbmUoeFsxXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGRkeF9maW5lKGZsb2F0M3gyIHgp
IHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4X2ZpbmUoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gZGR4X2ZpbmUoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4X2ZpbmUo
eFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR4X2ZpbmUoeFsyXVswXSk7CisgICAgcmVz
dWx0WzJdWzFdID0gZGR4X2ZpbmUoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0M3gzIGRkeF9maW5lKGZsb2F0M3gzIHgpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gZGR4X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4
X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR4X2ZpbmUoeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gZGR4X2ZpbmUoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
ZGR4X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4X2ZpbmUoeFsxXVsyXSk7
CisgICAgcmVzdWx0WzJdWzBdID0gZGR4X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gZGR4X2ZpbmUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR4X2ZpbmUoeFsyXVsy
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IGRkeF9maW5lKGZsb2F0M3g0IHgp
IHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4X2ZpbmUoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gZGR4X2ZpbmUoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR4X2ZpbmUo
eFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2ZpbmUoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gZGR4X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4X2Zp
bmUoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR4X2ZpbmUoeFsxXVszXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gZGR4X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR4
X2ZpbmUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR4X2ZpbmUoeFsyXVsyXSk7Cisg
ICAgcmVzdWx0WzJdWzNdID0gZGR4X2ZpbmUoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NHgyIGRkeF9maW5lKGZsb2F0NHgyIHgpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gZGR4X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gZGR4X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2ZpbmUoeFsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJd
WzBdID0gZGR4X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR4X2ZpbmUoeFsy
XVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZGR4X2ZpbmUoeFszXVswXSk7CisgICAgcmVzdWx0
WzNdWzFdID0gZGR4X2ZpbmUoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NHgzIGRkeF9maW5lKGZsb2F0NHgzIHgpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gZGR4X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4X2Zp
bmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR4X2ZpbmUoeFswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gZGR4X2ZpbmUoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR4
X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4X2ZpbmUoeFsxXVsyXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gZGR4X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
ZGR4X2ZpbmUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR4X2ZpbmUoeFsyXVsyXSk7
CisgICAgcmVzdWx0WzNdWzBdID0gZGR4X2ZpbmUoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFd
ID0gZGR4X2ZpbmUoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZGR4X2ZpbmUoeFszXVsy
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IGRkeF9maW5lKGZsb2F0NHg0IHgp
IHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR4X2ZpbmUoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR4X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gZGR4X2ZpbmUoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR4X2ZpbmUo
eFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR4X2ZpbmUoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gZGR4X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR4X2Zp
bmUoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR4X2ZpbmUoeFsxXVszXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gZGR4X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR4
X2ZpbmUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR4X2ZpbmUoeFsyXVsyXSk7Cisg
ICAgcmVzdWx0WzJdWzNdID0gZGR4X2ZpbmUoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0g
ZGR4X2ZpbmUoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGR4X2ZpbmUoeFszXVsxXSk7
CisgICAgcmVzdWx0WzNdWzJdID0gZGR4X2ZpbmUoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNd
ID0gZGR4X2ZpbmUoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBkZHlf
Y29hcnNlKGZsb2F0MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBk
ZHlfY29hcnNlKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGRkeV9jb2Fyc2UoeFsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBkZHlfY29hcnNlKGZsb2F0MyB4KSB7CisgICAgZmxv
YXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBkZHlfY29hcnNlKHhbMF0pOworICAgIHJlc3Vs
dFsxXSA9IGRkeV9jb2Fyc2UoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGR5X2NvYXJzZSh4WzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGRkeV9jb2Fyc2UoZmxvYXQ0IHgpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGRkeV9jb2Fyc2UoeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gZGR5X2NvYXJzZSh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBkZHlfY29h
cnNlKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGRkeV9jb2Fyc2UoeFszXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0MngyIGRkeV9jb2Fyc2UoZmxvYXQyeDIgeCkgeworICAgIGZsb2F0
MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfY29hcnNlKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IGRkeV9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
ZGR5X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHlfY29hcnNlKHhbMV1b
MV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBkZHlfY29hcnNlKGZsb2F0Mngz
IHgpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR5X2NvYXJz
ZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBkZHlfY29hcnNlKHhbMF1bMV0pOworICAg
IHJlc3VsdFswXVsyXSA9IGRkeV9jb2Fyc2UoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
ZGR5X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHlfY29hcnNlKHhbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRkeV9jb2Fyc2UoeFsxXVsyXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0Mng0IGRkeV9jb2Fyc2UoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0
Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfY29hcnNlKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IGRkeV9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0g
ZGR5X2NvYXJzZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBkZHlfY29hcnNlKHhbMF1b
M10pOworICAgIHJlc3VsdFsxXVswXSA9IGRkeV9jb2Fyc2UoeFsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gZGR5X2NvYXJzZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBkZHlfY29h
cnNlKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGRkeV9jb2Fyc2UoeFsxXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGRkeV9jb2Fyc2UoZmxvYXQzeDIgeCkgewor
ICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfY29hcnNlKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGRkeV9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gZGR5X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHlfY29h
cnNlKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeV9jb2Fyc2UoeFsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gZGR5X2NvYXJzZSh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzeDMgZGR5X2NvYXJzZShmbG9hdDN4MyB4KSB7CisgICAgZmxvYXQzeDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeV9jb2Fyc2UoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gZGR5X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBkZHlfY29h
cnNlKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGRkeV9jb2Fyc2UoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gZGR5X2NvYXJzZSh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBkZHlfY29hcnNlKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGRkeV9jb2Fyc2UoeFsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR5X2NvYXJzZSh4WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSBkZHlfY29hcnNlKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDN4NCBkZHlfY29hcnNlKGZsb2F0M3g0IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gZGR5X2NvYXJzZSh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBkZHlfY29hcnNlKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGRkeV9jb2Fyc2UoeFsw
XVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR5X2NvYXJzZSh4WzBdWzNdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBkZHlfY29hcnNlKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGRkeV9j
b2Fyc2UoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR5X2NvYXJzZSh4WzFdWzJdKTsK
KyAgICByZXN1bHRbMV1bM10gPSBkZHlfY29hcnNlKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVsw
XSA9IGRkeV9jb2Fyc2UoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR5X2NvYXJzZSh4
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBkZHlfY29hcnNlKHhbMl1bMl0pOworICAgIHJl
c3VsdFsyXVszXSA9IGRkeV9jb2Fyc2UoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NHgyIGRkeV9jb2Fyc2UoZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBkZHlfY29hcnNlKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IGRkeV9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5X2NvYXJzZSh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBkZHlfY29hcnNlKHhbMV1bMV0pOworICAgIHJl
c3VsdFsyXVswXSA9IGRkeV9jb2Fyc2UoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR5
X2NvYXJzZSh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBkZHlfY29hcnNlKHhbM11bMF0p
OworICAgIHJlc3VsdFszXVsxXSA9IGRkeV9jb2Fyc2UoeFszXVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NHgzIGRkeV9jb2Fyc2UoZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0NHgz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBkZHlfY29hcnNlKHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IGRkeV9jb2Fyc2UoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR5
X2NvYXJzZSh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBkZHlfY29hcnNlKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IGRkeV9jb2Fyc2UoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gZGR5X2NvYXJzZSh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBkZHlfY29hcnNl
KHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGRkeV9jb2Fyc2UoeFsyXVsxXSk7CisgICAg
cmVzdWx0WzJdWzJdID0gZGR5X2NvYXJzZSh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBk
ZHlfY29hcnNlKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGRkeV9jb2Fyc2UoeFszXVsx
XSk7CisgICAgcmVzdWx0WzNdWzJdID0gZGR5X2NvYXJzZSh4WzNdWzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0eDQgZGR5X2NvYXJzZShmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQ0
eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGRkeV9jb2Fyc2UoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gZGR5X2NvYXJzZSh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBk
ZHlfY29hcnNlKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGRkeV9jb2Fyc2UoeFswXVsz
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5X2NvYXJzZSh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBkZHlfY29hcnNlKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGRkeV9jb2Fy
c2UoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR5X2NvYXJzZSh4WzFdWzNdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBkZHlfY29hcnNlKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IGRkeV9jb2Fyc2UoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR5X2NvYXJzZSh4WzJd
WzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBkZHlfY29hcnNlKHhbMl1bM10pOworICAgIHJlc3Vs
dFszXVswXSA9IGRkeV9jb2Fyc2UoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGR5X2Nv
YXJzZSh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBkZHlfY29hcnNlKHhbM11bMl0pOwor
ICAgIHJlc3VsdFszXVszXSA9IGRkeV9jb2Fyc2UoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MiBkZHlfZmluZShmbG9hdDIgeCkgeworICAgIGZsb2F0MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gZGR5X2ZpbmUoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZGR5X2ZpbmUo
eFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBkZHlfZmluZShmbG9hdDMgeCkg
eworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR5X2ZpbmUoeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gZGR5X2ZpbmUoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGR5X2ZpbmUo
eFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBkZHlfZmluZShmbG9hdDQgeCkg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZGR5X2ZpbmUoeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gZGR5X2ZpbmUoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZGR5X2ZpbmUo
eFsyXSk7CisgICAgcmVzdWx0WzNdID0gZGR5X2ZpbmUoeFszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngyIGRkeV9maW5lKGZsb2F0MngyIHgpIHsKKyAgICBmbG9hdDJ4MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR5X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gZGR5X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5X2ZpbmUoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5X2ZpbmUoeFsxXVsxXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0MngzIGRkeV9maW5lKGZsb2F0MngzIHgpIHsKKyAgICBmbG9hdDJ4
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR5X2ZpbmUoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gZGR5X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR5X2Zp
bmUoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5X2ZpbmUoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gZGR5X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR5
X2ZpbmUoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGRkeV9maW5l
KGZsb2F0Mng0IHgpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
ZGR5X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR5X2ZpbmUoeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gZGR5X2ZpbmUoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNd
ID0gZGR5X2ZpbmUoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5X2ZpbmUoeFsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gZGR5X2ZpbmUoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR5X2ZpbmUoeFsx
XVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIGRkeV9maW5lKGZsb2F0M3gy
IHgpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR5X2ZpbmUo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR5X2ZpbmUoeFswXVsxXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gZGR5X2ZpbmUoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5X2Zp
bmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR5X2ZpbmUoeFsyXVswXSk7CisgICAg
cmVzdWx0WzJdWzFdID0gZGR5X2ZpbmUoeFsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0M3gzIGRkeV9maW5lKGZsb2F0M3gzIHgpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gZGR5X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
ZGR5X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR5X2ZpbmUoeFswXVsyXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZGR5X2ZpbmUoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gZGR5X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR5X2ZpbmUoeFsxXVsy
XSk7CisgICAgcmVzdWx0WzJdWzBdID0gZGR5X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJd
WzFdID0gZGR5X2ZpbmUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR5X2ZpbmUoeFsy
XVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IGRkeV9maW5lKGZsb2F0M3g0
IHgpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR5X2ZpbmUo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR5X2ZpbmUoeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gZGR5X2ZpbmUoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR5X2Zp
bmUoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5X2ZpbmUoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gZGR5X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR5
X2ZpbmUoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR5X2ZpbmUoeFsxXVszXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gZGR5X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
ZGR5X2ZpbmUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR5X2ZpbmUoeFsyXVsyXSk7
CisgICAgcmVzdWx0WzJdWzNdID0gZGR5X2ZpbmUoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NHgyIGRkeV9maW5lKGZsb2F0NHgyIHgpIHsKKyAgICBmbG9hdDR4MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR5X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gZGR5X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5X2ZpbmUoeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZGR5X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gZGR5X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZGR5X2ZpbmUo
eFsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZGR5X2ZpbmUoeFszXVswXSk7CisgICAgcmVz
dWx0WzNdWzFdID0gZGR5X2ZpbmUoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NHgzIGRkeV9maW5lKGZsb2F0NHgzIHgpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gZGR5X2ZpbmUoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR5
X2ZpbmUoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZGR5X2ZpbmUoeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gZGR5X2ZpbmUoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
ZGR5X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR5X2ZpbmUoeFsxXVsyXSk7
CisgICAgcmVzdWx0WzJdWzBdID0gZGR5X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gZGR5X2ZpbmUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR5X2ZpbmUoeFsyXVsy
XSk7CisgICAgcmVzdWx0WzNdWzBdID0gZGR5X2ZpbmUoeFszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gZGR5X2ZpbmUoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZGR5X2ZpbmUoeFsz
XVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IGRkeV9maW5lKGZsb2F0NHg0
IHgpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZGR5X2ZpbmUo
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZGR5X2ZpbmUoeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gZGR5X2ZpbmUoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZGR5X2Zp
bmUoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZGR5X2ZpbmUoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gZGR5X2ZpbmUoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZGR5
X2ZpbmUoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZGR5X2ZpbmUoeFsxXVszXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gZGR5X2ZpbmUoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
ZGR5X2ZpbmUoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZGR5X2ZpbmUoeFsyXVsyXSk7
CisgICAgcmVzdWx0WzJdWzNdID0gZGR5X2ZpbmUoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBd
ID0gZGR5X2ZpbmUoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZGR5X2ZpbmUoeFszXVsx
XSk7CisgICAgcmVzdWx0WzNdWzJdID0gZGR5X2ZpbmUoeFszXVsyXSk7CisgICAgcmVzdWx0WzNd
WzNdID0gZGR5X2ZpbmUoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBm
d2lkdGgoZmxvYXQyIHgpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZ3
aWR0aCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmd2lkdGgoeFsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MyBmd2lkdGgoZmxvYXQzIHgpIHsKKyAgICBmbG9hdDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGZ3aWR0aCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmd2lkdGgoeFsx
XSk7CisgICAgcmVzdWx0WzJdID0gZndpZHRoKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgZndpZHRoKGZsb2F0NCB4KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBmd2lkdGgoeFswXSk7CisgICAgcmVzdWx0WzFdID0gZndpZHRoKHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IGZ3aWR0aCh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBmd2lkdGgoeFszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIGZ3aWR0aChmbG9hdDJ4MiB4KSB7Cisg
ICAgZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZ3aWR0aCh4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBmd2lkdGgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
ZndpZHRoKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZ3aWR0aCh4WzFdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgZndpZHRoKGZsb2F0MngzIHgpIHsKKyAgICBm
bG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZndpZHRoKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IGZ3aWR0aCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmd2lk
dGgoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZndpZHRoKHhbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IGZ3aWR0aCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmd2lkdGgo
eFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IGZ3aWR0aChmbG9hdDJ4
NCB4KSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZ3aWR0aCh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmd2lkdGgoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gZndpZHRoKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGZ3aWR0aCh4WzBd
WzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmd2lkdGgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gZndpZHRoKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGZ3aWR0aCh4WzFdWzJd
KTsKKyAgICByZXN1bHRbMV1bM10gPSBmd2lkdGgoeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0M3gyIGZ3aWR0aChmbG9hdDN4MiB4KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGZ3aWR0aCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBmd2lkdGgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZndpZHRoKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGZ3aWR0aCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBm
d2lkdGgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZndpZHRoKHhbMl1bMV0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBmd2lkdGgoZmxvYXQzeDMgeCkgeworICAgIGZs
b2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmd2lkdGgoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gZndpZHRoKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZ3aWR0
aCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmd2lkdGgoeFsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gZndpZHRoKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGZ3aWR0aCh4
WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmd2lkdGgoeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gZndpZHRoKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGZ3aWR0aCh4WzJd
WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgZndpZHRoKGZsb2F0M3g0IHgp
IHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZndpZHRoKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZ3aWR0aCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1b
Ml0gPSBmd2lkdGgoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZndpZHRoKHhbMF1bM10p
OworICAgIHJlc3VsdFsxXVswXSA9IGZ3aWR0aCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBmd2lkdGgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZndpZHRoKHhbMV1bMl0pOwor
ICAgIHJlc3VsdFsxXVszXSA9IGZ3aWR0aCh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBm
d2lkdGgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZndpZHRoKHhbMl1bMV0pOworICAg
IHJlc3VsdFsyXVsyXSA9IGZ3aWR0aCh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBmd2lk
dGgoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIGZ3aWR0aChmbG9h
dDR4MiB4KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZ3aWR0
aCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmd2lkdGgoeFswXVsxXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gZndpZHRoKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZ3aWR0aCh4
WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmd2lkdGgoeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gZndpZHRoKHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGZ3aWR0aCh4WzNd
WzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBmd2lkdGgoeFszXVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NHgzIGZ3aWR0aChmbG9hdDR4MyB4KSB7CisgICAgZmxvYXQ0eDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGZ3aWR0aCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBmd2lkdGgoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZndpZHRoKHhbMF1bMl0p
OworICAgIHJlc3VsdFsxXVswXSA9IGZ3aWR0aCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBmd2lkdGgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZndpZHRoKHhbMV1bMl0pOwor
ICAgIHJlc3VsdFsyXVswXSA9IGZ3aWR0aCh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBm
d2lkdGgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZndpZHRoKHhbMl1bMl0pOworICAg
IHJlc3VsdFszXVswXSA9IGZ3aWR0aCh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBmd2lk
dGgoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZndpZHRoKHhbM11bMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBmd2lkdGgoZmxvYXQ0eDQgeCkgeworICAgIGZsb2F0
NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmd2lkdGgoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gZndpZHRoKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZ3aWR0aCh4
WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBmd2lkdGgoeFswXVszXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gZndpZHRoKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZ3aWR0aCh4WzFd
WzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmd2lkdGgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFd
WzNdID0gZndpZHRoKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGZ3aWR0aCh4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBmd2lkdGgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJd
ID0gZndpZHRoKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGZ3aWR0aCh4WzJdWzNdKTsK
KyAgICByZXN1bHRbM11bMF0gPSBmd2lkdGgoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0g
ZndpZHRoKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGZ3aWR0aCh4WzNdWzJdKTsKKyAg
ICByZXN1bHRbM11bM10gPSBmd2lkdGgoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
KworbmF0aXZlIGZsb2F0IHBvdyhmbG9hdCwgZmxvYXQpOworaGFsZiBwb3coaGFsZiB4LCBoYWxm
IHkpIHsKKyAgICByZXR1cm4gaGFsZihwb3coZmxvYXQoeCksIGZsb2F0KHkpKSk7Cit9CitoYWxm
IHN0ZXAoaGFsZiB5LCBoYWxmIHgpIHsKKyAgICByZXR1cm4geCA+PSB5ID8gMSA6IDA7Cit9Cito
YWxmIGxkZXhwKGhhbGYgeCwgaGFsZiBlKSB7CisgICAgcmV0dXJuIHggKiBwb3coMiwgZSk7Cit9
CitoYWxmIGZtb2QoaGFsZiB4LCBoYWxmIHkpIHsKKyAgICB1aW50IHdob2xlID0gdWludCh4IC8g
eSk7CisgICAgaGFsZiBtdWx0aXBsZSA9IGhhbGYod2hvbGUpICogeTsKKyAgICByZXR1cm4geCAt
IG11bHRpcGxlOworfQoraGFsZjIgcG93KGhhbGYyIHgsIGhhbGYyIHkpIHsKKyAgICBoYWxmMiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gcG93KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9
IHBvdyh4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgcG93KGhhbGYz
IHgsIGhhbGYzIHkpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gcG93KHhb
MF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IHBvdyh4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRb
Ml0gPSBwb3coeFsyXSwgeVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IHBvdyho
YWxmNCB4LCBoYWxmNCB5KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHBv
dyh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBwb3coeFsxXSwgeVsxXSk7CisgICAgcmVz
dWx0WzJdID0gcG93KHhbMl0sIHlbMl0pOworICAgIHJlc3VsdFszXSA9IHBvdyh4WzNdLCB5WzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBwb3coaGFsZjJ4MiB4LCBoYWxmMngy
IHkpIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBwb3coeFswXVsw
XSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcG93KHhbMF1bMV0sIHlbMF1bMV0pOwor
ICAgIHJlc3VsdFsxXVswXSA9IHBvdyh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBwb3coeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYy
eDMgcG93KGhhbGYyeDMgeCwgaGFsZjJ4MyB5KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gcG93KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IHBvdyh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBwb3coeFswXVsyXSwg
eVswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcG93KHhbMV1bMF0sIHlbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IHBvdyh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBwb3coeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQg
cG93KGhhbGYyeDQgeCwgaGFsZjJ4NCB5KSB7CisgICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gcG93KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHBv
dyh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBwb3coeFswXVsyXSwgeVsw
XVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gcG93KHhbMF1bM10sIHlbMF1bM10pOworICAgIHJl
c3VsdFsxXVswXSA9IHBvdyh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBw
b3coeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcG93KHhbMV1bMl0sIHlb
MV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHBvdyh4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBwb3coaGFsZjN4MiB4LCBoYWxmM3gyIHkpIHsKKyAg
ICBoYWxmM3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBwb3coeFswXVswXSwgeVswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gcG93KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3Vs
dFsxXVswXSA9IHBvdyh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBwb3co
eFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcG93KHhbMl1bMF0sIHlbMl1b
MF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHBvdyh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjN4MyBwb3coaGFsZjN4MyB4LCBoYWxmM3gzIHkpIHsKKyAgICBo
YWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBwb3coeFswXVswXSwgeVswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gcG93KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsw
XVsyXSA9IHBvdyh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBwb3coeFsx
XVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcG93KHhbMV1bMV0sIHlbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IHBvdyh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBwb3coeFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcG93KHhb
Ml1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHBvdyh4WzJdWzJdLCB5WzJdWzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCBwb3coaGFsZjN4NCB4LCBoYWxmM3g0
IHkpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBwb3coeFswXVsw
XSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcG93KHhbMF1bMV0sIHlbMF1bMV0pOwor
ICAgIHJlc3VsdFswXVsyXSA9IHBvdyh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1b
M10gPSBwb3coeFswXVszXSwgeVswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcG93KHhbMV1b
MF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHBvdyh4WzFdWzFdLCB5WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBwb3coeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzFd
WzNdID0gcG93KHhbMV1bM10sIHlbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHBvdyh4WzJd
WzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBwb3coeFsyXVsxXSwgeVsyXVsxXSk7
CisgICAgcmVzdWx0WzJdWzJdID0gcG93KHhbMl1bMl0sIHlbMl1bMl0pOworICAgIHJlc3VsdFsy
XVszXSA9IHBvdyh4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjR4MiBwb3coaGFsZjR4MiB4LCBoYWxmNHgyIHkpIHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBwb3coeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gcG93KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHBvdyh4WzFdWzBd
LCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBwb3coeFsxXVsxXSwgeVsxXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gcG93KHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IHBvdyh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBwb3coeFszXVsw
XSwgeVszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gcG93KHhbM11bMV0sIHlbM11bMV0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIHBvdyhoYWxmNHgzIHgsIGhhbGY0eDMgeSkg
eworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHBvdyh4WzBdWzBdLCB5
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBwb3coeFswXVsxXSwgeVswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gcG93KHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9
IHBvdyh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBwb3coeFsxXVsxXSwg
eVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcG93KHhbMV1bMl0sIHlbMV1bMl0pOworICAg
IHJlc3VsdFsyXVswXSA9IHBvdyh4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0g
PSBwb3coeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gcG93KHhbMl1bMl0s
IHlbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IHBvdyh4WzNdWzBdLCB5WzNdWzBdKTsKKyAg
ICByZXN1bHRbM11bMV0gPSBwb3coeFszXVsxXSwgeVszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJd
ID0gcG93KHhbM11bMl0sIHlbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0
IHBvdyhoYWxmNHg0IHgsIGhhbGY0eDQgeSkgeworICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IHBvdyh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBw
b3coeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gcG93KHhbMF1bMl0sIHlb
MF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHBvdyh4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBwb3coeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
cG93KHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHBvdyh4WzFdWzJdLCB5
WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBwb3coeFsxXVszXSwgeVsxXVszXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gcG93KHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IHBvdyh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBwb3coeFsyXVsyXSwg
eVsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gcG93KHhbMl1bM10sIHlbMl1bM10pOworICAg
IHJlc3VsdFszXVswXSA9IHBvdyh4WzNdWzBdLCB5WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0g
PSBwb3coeFszXVsxXSwgeVszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gcG93KHhbM11bMl0s
IHlbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IHBvdyh4WzNdWzNdLCB5WzNdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgc3RlcChoYWxmMiB4LCBoYWxmMiB5KSB7CisgICAg
aGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHN0ZXAoeFswXSwgeVswXSk7CisgICAgcmVz
dWx0WzFdID0gc3RlcCh4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMg
c3RlcChoYWxmMyB4LCBoYWxmMyB5KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IHN0ZXAoeFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gc3RlcCh4WzFdLCB5WzFdKTsK
KyAgICByZXN1bHRbMl0gPSBzdGVwKHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBzdGVwKGhhbGY0IHgsIGhhbGY0IHkpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gc3RlcCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzdGVwKHhbMV0s
IHlbMV0pOworICAgIHJlc3VsdFsyXSA9IHN0ZXAoeFsyXSwgeVsyXSk7CisgICAgcmVzdWx0WzNd
ID0gc3RlcCh4WzNdLCB5WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBzdGVw
KGhhbGYyeDIgeCwgaGFsZjJ4MiB5KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gc3RlcCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzdGVw
KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHN0ZXAoeFsxXVswXSwgeVsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3RlcCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBzdGVwKGhhbGYyeDMgeCwgaGFsZjJ4MyB5KSB7Cisg
ICAgaGFsZjJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc3RlcCh4WzBdWzBdLCB5WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzdGVwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IHN0ZXAoeFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
c3RlcCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzdGVwKHhbMV1bMV0s
IHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHN0ZXAoeFsxXVsyXSwgeVsxXVsyXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgc3RlcChoYWxmMng0IHgsIGhhbGYyeDQgeSkg
eworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHN0ZXAoeFswXVswXSwg
eVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc3RlcCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSBzdGVwKHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFswXVsz
XSA9IHN0ZXAoeFswXVszXSwgeVswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc3RlcCh4WzFd
WzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzdGVwKHhbMV1bMV0sIHlbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IHN0ZXAoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0
WzFdWzNdID0gc3RlcCh4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjN4MiBzdGVwKGhhbGYzeDIgeCwgaGFsZjN4MiB5KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gc3RlcCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBzdGVwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHN0ZXAo
eFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3RlcCh4WzFdWzFdLCB5WzFd
WzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzdGVwKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJl
c3VsdFsyXVsxXSA9IHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzeDMgc3RlcChoYWxmM3gzIHgsIGhhbGYzeDMgeSkgeworICAgIGhhbGYzeDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IHN0ZXAoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gc3RlcCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBz
dGVwKHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IHN0ZXAoeFsxXVswXSwg
eVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3RlcCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBzdGVwKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3VsdFsyXVsw
XSA9IHN0ZXAoeFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc3RlcCh4WzJd
WzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzdGVwKHhbMl1bMl0sIHlbMl1bMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IHN0ZXAoaGFsZjN4NCB4LCBoYWxmM3g0
IHkpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzdGVwKHhbMF1b
MF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHN0ZXAoeFswXVsxXSwgeVswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gc3RlcCh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRb
MF1bM10gPSBzdGVwKHhbMF1bM10sIHlbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHN0ZXAo
eFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3RlcCh4WzFdWzFdLCB5WzFd
WzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzdGVwKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJl
c3VsdFsxXVszXSA9IHN0ZXAoeFsxXVszXSwgeVsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
c3RlcCh4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzdGVwKHhbMl1bMV0s
IHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHN0ZXAoeFsyXVsyXSwgeVsyXVsyXSk7Cisg
ICAgcmVzdWx0WzJdWzNdID0gc3RlcCh4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MiBzdGVwKGhhbGY0eDIgeCwgaGFsZjR4MiB5KSB7CisgICAgaGFsZjR4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc3RlcCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBzdGVwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVsw
XSA9IHN0ZXAoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3RlcCh4WzFd
WzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzdGVwKHhbMl1bMF0sIHlbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmVzdWx0
WzNdWzBdID0gc3RlcCh4WzNdWzBdLCB5WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzdGVw
KHhbM11bMV0sIHlbM11bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIHN0ZXAo
aGFsZjR4MyB4LCBoYWxmNHgzIHkpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBzdGVwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHN0ZXAo
eFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc3RlcCh4WzBdWzJdLCB5WzBd
WzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzdGVwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IHN0ZXAoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
c3RlcCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzdGVwKHhbMl1bMF0s
IHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gc3RlcCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbM11b
MF0gPSBzdGVwKHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IHN0ZXAoeFsz
XVsxXSwgeVszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gc3RlcCh4WzNdWzJdLCB5WzNdWzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBzdGVwKGhhbGY0eDQgeCwgaGFsZjR4
NCB5KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc3RlcCh4WzBd
WzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzdGVwKHhbMF1bMV0sIHlbMF1bMV0p
OworICAgIHJlc3VsdFswXVsyXSA9IHN0ZXAoeFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVzdWx0
WzBdWzNdID0gc3RlcCh4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzdGVw
KHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHN0ZXAoeFsxXVsxXSwgeVsx
XVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc3RlcCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICBy
ZXN1bHRbMV1bM10gPSBzdGVwKHhbMV1bM10sIHlbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9
IHN0ZXAoeFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc3RlcCh4WzJdWzFd
LCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzdGVwKHhbMl1bMl0sIHlbMl1bMl0pOwor
ICAgIHJlc3VsdFsyXVszXSA9IHN0ZXAoeFsyXVszXSwgeVsyXVszXSk7CisgICAgcmVzdWx0WzNd
WzBdID0gc3RlcCh4WzNdWzBdLCB5WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzdGVwKHhb
M11bMV0sIHlbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IHN0ZXAoeFszXVsyXSwgeVszXVsy
XSk7CisgICAgcmVzdWx0WzNdWzNdID0gc3RlcCh4WzNdWzNdLCB5WzNdWzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjIgbGRleHAoaGFsZjIgeCwgaGFsZjIgeSkgeworICAgIGhhbGYy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBsZGV4cCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRb
MV0gPSBsZGV4cCh4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgbGRl
eHAoaGFsZjMgeCwgaGFsZjMgeSkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBsZGV4cCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBsZGV4cCh4WzFdLCB5WzFdKTsK
KyAgICByZXN1bHRbMl0gPSBsZGV4cCh4WzJdLCB5WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgbGRleHAoaGFsZjQgeCwgaGFsZjQgeSkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBsZGV4cCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBsZGV4cCh4
WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBsZGV4cCh4WzJdLCB5WzJdKTsKKyAgICByZXN1
bHRbM10gPSBsZGV4cCh4WzNdLCB5WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4
MiBsZGV4cChoYWxmMngyIHgsIGhhbGYyeDIgeSkgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGxkZXhwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IGxkZXhwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGxkZXhwKHhb
MV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxkZXhwKHhbMV1bMV0sIHlbMV1b
MV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIGxkZXhwKGhhbGYyeDMgeCwgaGFs
ZjJ4MyB5KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbGRleHAo
eFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbGRleHAoeFswXVsxXSwgeVsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbGRleHAoeFswXVsyXSwgeVswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gbGRleHAoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gbGRleHAoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbGRleHAoeFsx
XVsyXSwgeVsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgbGRleHAoaGFs
ZjJ4NCB4LCBoYWxmMng0IHkpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBsZGV4cCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsZGV4cCh4
WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsZGV4cCh4WzBdWzJdLCB5WzBd
WzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBsZGV4cCh4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBsZGV4cCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBsZGV4cCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsZGV4cCh4WzFd
WzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBsZGV4cCh4WzFdWzNdLCB5WzFdWzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBsZGV4cChoYWxmM3gyIHgsIGhhbGYz
eDIgeSkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxkZXhwKHhb
MF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxkZXhwKHhbMF1bMV0sIHlbMF1b
MV0pOworICAgIHJlc3VsdFsxXVswXSA9IGxkZXhwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IGxkZXhwKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9
IGxkZXhwKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGxkZXhwKHhbMl1b
MV0sIHlbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIGxkZXhwKGhhbGYz
eDMgeCwgaGFsZjN4MyB5KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gbGRleHAoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbGRleHAoeFsw
XVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbGRleHAoeFswXVsyXSwgeVswXVsy
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gbGRleHAoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gbGRleHAoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
bGRleHAoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbGRleHAoeFsyXVsw
XSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbGRleHAoeFsyXVsxXSwgeVsyXVsxXSk7
CisgICAgcmVzdWx0WzJdWzJdID0gbGRleHAoeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYzeDQgbGRleHAoaGFsZjN4NCB4LCBoYWxmM3g0IHkpIHsKKyAgICBo
YWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsZGV4cCh4WzBdWzBdLCB5WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSBsZGV4cCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBsZGV4cCh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBs
ZGV4cCh4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsZGV4cCh4WzFdWzBd
LCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsZGV4cCh4WzFdWzFdLCB5WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBsZGV4cCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRb
MV1bM10gPSBsZGV4cCh4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsZGV4
cCh4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBsZGV4cCh4WzJdWzFdLCB5
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBsZGV4cCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAg
ICByZXN1bHRbMl1bM10gPSBsZGV4cCh4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MiBsZGV4cChoYWxmNHgyIHgsIGhhbGY0eDIgeSkgeworICAgIGhhbGY0
eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxkZXhwKHhbMF1bMF0sIHlbMF1bMF0pOwor
ICAgIHJlc3VsdFswXVsxXSA9IGxkZXhwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsx
XVswXSA9IGxkZXhwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxkZXhw
KHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGxkZXhwKHhbMl1bMF0sIHlb
Ml1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGxkZXhwKHhbMl1bMV0sIHlbMl1bMV0pOworICAg
IHJlc3VsdFszXVswXSA9IGxkZXhwKHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsx
XSA9IGxkZXhwKHhbM11bMV0sIHlbM11bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NHgzIGxkZXhwKGhhbGY0eDMgeCwgaGFsZjR4MyB5KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gbGRleHAoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gbGRleHAoeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbGRleHAo
eFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbGRleHAoeFsxXVswXSwgeVsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbGRleHAoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAg
cmVzdWx0WzFdWzJdID0gbGRleHAoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gbGRleHAoeFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbGRleHAoeFsy
XVsxXSwgeVsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbGRleHAoeFsyXVsyXSwgeVsyXVsy
XSk7CisgICAgcmVzdWx0WzNdWzBdID0gbGRleHAoeFszXVswXSwgeVszXVswXSk7CisgICAgcmVz
dWx0WzNdWzFdID0gbGRleHAoeFszXVsxXSwgeVszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0g
bGRleHAoeFszXVsyXSwgeVszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQg
bGRleHAoaGFsZjR4NCB4LCBoYWxmNHg0IHkpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBsZGV4cCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBsZGV4cCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsZGV4cCh4WzBd
WzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBsZGV4cCh4WzBdWzNdLCB5WzBdWzNd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBsZGV4cCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBsZGV4cCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBs
ZGV4cCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBsZGV4cCh4WzFdWzNd
LCB5WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsZGV4cCh4WzJdWzBdLCB5WzJdWzBdKTsK
KyAgICByZXN1bHRbMl1bMV0gPSBsZGV4cCh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBsZGV4cCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBsZGV4
cCh4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBsZGV4cCh4WzNdWzBdLCB5
WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBsZGV4cCh4WzNdWzFdLCB5WzNdWzFdKTsKKyAg
ICByZXN1bHRbM11bMl0gPSBsZGV4cCh4WzNdWzJdLCB5WzNdWzJdKTsKKyAgICByZXN1bHRbM11b
M10gPSBsZGV4cCh4WzNdWzNdLCB5WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjIgZm1vZChoYWxmMiB4LCBoYWxmMiB5KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGZtb2QoeFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gZm1vZCh4WzFdLCB5WzFd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgZm1vZChoYWxmMyB4LCBoYWxmMyB5KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZtb2QoeFswXSwgeVswXSk7Cisg
ICAgcmVzdWx0WzFdID0gZm1vZCh4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBmbW9kKHhb
Ml0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBmbW9kKGhhbGY0IHgsIGhh
bGY0IHkpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZm1vZCh4WzBdLCB5
WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmbW9kKHhbMV0sIHlbMV0pOworICAgIHJlc3VsdFsyXSA9
IGZtb2QoeFsyXSwgeVsyXSk7CisgICAgcmVzdWx0WzNdID0gZm1vZCh4WzNdLCB5WzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBmbW9kKGhhbGYyeDIgeCwgaGFsZjJ4MiB5KSB7
CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZm1vZCh4WzBdWzBdLCB5
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbW9kKHhbMF1bMV0sIHlbMF1bMV0pOworICAg
IHJlc3VsdFsxXVswXSA9IGZtb2QoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gZm1vZCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4
MyBmbW9kKGhhbGYyeDMgeCwgaGFsZjJ4MyB5KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gZm1vZCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBmbW9kKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZtb2QoeFswXVsy
XSwgeVswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZm1vZCh4WzFdWzBdLCB5WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBmbW9kKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsx
XVsyXSA9IGZtb2QoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYyeDQgZm1vZChoYWxmMng0IHgsIGhhbGYyeDQgeSkgeworICAgIGhhbGYyeDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGZtb2QoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gZm1vZCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmbW9kKHhb
MF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGZtb2QoeFswXVszXSwgeVswXVsz
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gZm1vZCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBmbW9kKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGZt
b2QoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZm1vZCh4WzFdWzNdLCB5
WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBmbW9kKGhhbGYzeDIgeCwg
aGFsZjN4MiB5KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZm1v
ZCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbW9kKHhbMF1bMV0sIHlb
MF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGZtb2QoeFsxXVswXSwgeVsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gZm1vZCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0g
PSBmbW9kKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGZtb2QoeFsyXVsx
XSwgeVsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgZm1vZChoYWxmM3gz
IHgsIGhhbGYzeDMgeSkgeworICAgIGhhbGYzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IGZtb2QoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZm1vZCh4WzBdWzFd
LCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmbW9kKHhbMF1bMl0sIHlbMF1bMl0pOwor
ICAgIHJlc3VsdFsxXVswXSA9IGZtb2QoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gZm1vZCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmbW9kKHhb
MV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGZtb2QoeFsyXVswXSwgeVsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gZm1vZCh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSBmbW9kKHhbMl1bMl0sIHlbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmM3g0IGZtb2QoaGFsZjN4NCB4LCBoYWxmM3g0IHkpIHsKKyAgICBoYWxmM3g0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbW9kKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3Vs
dFswXVsxXSA9IGZtb2QoeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZm1v
ZCh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBmbW9kKHhbMF1bM10sIHlb
MF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGZtb2QoeFsxXVswXSwgeVsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gZm1vZCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBmbW9kKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGZtb2QoeFsxXVsz
XSwgeVsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZm1vZCh4WzJdWzBdLCB5WzJdWzBdKTsK
KyAgICByZXN1bHRbMl1bMV0gPSBmbW9kKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsy
XVsyXSA9IGZtb2QoeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gZm1vZCh4
WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBmbW9kKGhh
bGY0eDIgeCwgaGFsZjR4MiB5KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gZm1vZCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbW9kKHhb
MF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGZtb2QoeFsxXVswXSwgeVsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gZm1vZCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1
bHRbMl1bMF0gPSBmbW9kKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGZt
b2QoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZm1vZCh4WzNdWzBdLCB5
WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBmbW9kKHhbM11bMV0sIHlbM11bMV0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIGZtb2QoaGFsZjR4MyB4LCBoYWxmNHgzIHkpIHsK
KyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbW9kKHhbMF1bMF0sIHlb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZtb2QoeFswXVsxXSwgeVswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gZm1vZCh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBmbW9kKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZtb2QoeFsxXVsx
XSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZm1vZCh4WzFdWzJdLCB5WzFdWzJdKTsK
KyAgICByZXN1bHRbMl1bMF0gPSBmbW9kKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsy
XVsxXSA9IGZtb2QoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZm1vZCh4
WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBmbW9kKHhbM11bMF0sIHlbM11b
MF0pOworICAgIHJlc3VsdFszXVsxXSA9IGZtb2QoeFszXVsxXSwgeVszXVsxXSk7CisgICAgcmVz
dWx0WzNdWzJdID0gZm1vZCh4WzNdWzJdLCB5WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjR4NCBmbW9kKGhhbGY0eDQgeCwgaGFsZjR4NCB5KSB7CisgICAgaGFsZjR4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZm1vZCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBmbW9kKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZt
b2QoeFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZm1vZCh4WzBdWzNdLCB5
WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmbW9kKHhbMV1bMF0sIHlbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IGZtb2QoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gZm1vZCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBmbW9kKHhbMV1b
M10sIHlbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGZtb2QoeFsyXVswXSwgeVsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gZm1vZCh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBmbW9kKHhbMl1bMl0sIHlbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGZtb2Qo
eFsyXVszXSwgeVsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZm1vZCh4WzNdWzBdLCB5WzNd
WzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBmbW9kKHhbM11bMV0sIHlbM11bMV0pOworICAgIHJl
c3VsdFszXVsyXSA9IGZtb2QoeFszXVsyXSwgeVszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0g
Zm1vZCh4WzNdWzNdLCB5WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitmbG9hdCBz
dGVwKGZsb2F0IHksIGZsb2F0IHgpIHsKKyAgICByZXR1cm4geCA+PSB5ID8gMSA6IDA7Cit9Citm
bG9hdCBsZGV4cChmbG9hdCB4LCBmbG9hdCBlKSB7CisgICAgcmV0dXJuIHggKiBwb3coMiwgZSk7
Cit9CitmbG9hdCBmbW9kKGZsb2F0IHgsIGZsb2F0IHkpIHsKKyAgICB1aW50IHdob2xlID0gdWlu
dCh4IC8geSk7CisgICAgZmxvYXQgbXVsdGlwbGUgPSBmbG9hdCh3aG9sZSkgKiB5OworICAgIHJl
dHVybiB4IC0gbXVsdGlwbGU7Cit9CitmbG9hdDIgcG93KGZsb2F0MiB4LCBmbG9hdDIgeSkgewor
ICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gcG93KHhbMF0sIHlbMF0pOworICAg
IHJlc3VsdFsxXSA9IHBvdyh4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQzIHBvdyhmbG9hdDMgeCwgZmxvYXQzIHkpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IHBvdyh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBwb3coeFsxXSwgeVsx
XSk7CisgICAgcmVzdWx0WzJdID0gcG93KHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgcG93KGZsb2F0NCB4LCBmbG9hdDQgeSkgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gcG93KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IHBvdyh4
WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBwb3coeFsyXSwgeVsyXSk7CisgICAgcmVzdWx0
WzNdID0gcG93KHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBw
b3coZmxvYXQyeDIgeCwgZmxvYXQyeDIgeSkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBwb3coeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
cG93KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHBvdyh4WzFdWzBdLCB5
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBwb3coeFsxXVsxXSwgeVsxXVsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngzIHBvdyhmbG9hdDJ4MyB4LCBmbG9hdDJ4MyB5KSB7
CisgICAgZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHBvdyh4WzBdWzBdLCB5
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBwb3coeFswXVsxXSwgeVswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gcG93KHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9
IHBvdyh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBwb3coeFsxXVsxXSwg
eVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcG93KHhbMV1bMl0sIHlbMV1bMl0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBwb3coZmxvYXQyeDQgeCwgZmxvYXQyeDQgeSkg
eworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBwb3coeFswXVswXSwg
eVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcG93KHhbMF1bMV0sIHlbMF1bMV0pOworICAg
IHJlc3VsdFswXVsyXSA9IHBvdyh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10g
PSBwb3coeFswXVszXSwgeVswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcG93KHhbMV1bMF0s
IHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHBvdyh4WzFdWzFdLCB5WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBwb3coeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNd
ID0gcG93KHhbMV1bM10sIHlbMV1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4
MiBwb3coZmxvYXQzeDIgeCwgZmxvYXQzeDIgeSkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBwb3coeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gcG93KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHBvdyh4WzFdWzBd
LCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBwb3coeFsxXVsxXSwgeVsxXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gcG93KHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IHBvdyh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
eDMgcG93KGZsb2F0M3gzIHgsIGZsb2F0M3gzIHkpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gcG93KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IHBvdyh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBwb3coeFswXVsy
XSwgeVswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gcG93KHhbMV1bMF0sIHlbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHBvdyh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBwb3coeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcG93KHhbMl1b
MF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHBvdyh4WzJdWzFdLCB5WzJdWzFdKTsK
KyAgICByZXN1bHRbMl1bMl0gPSBwb3coeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0M3g0IHBvdyhmbG9hdDN4NCB4LCBmbG9hdDN4NCB5KSB7CisgICAgZmxv
YXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHBvdyh4WzBdWzBdLCB5WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBwb3coeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gcG93KHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHBvdyh4WzBd
WzNdLCB5WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBwb3coeFsxXVswXSwgeVsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gcG93KHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsx
XVsyXSA9IHBvdyh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBwb3coeFsx
XVszXSwgeVsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gcG93KHhbMl1bMF0sIHlbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IHBvdyh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBwb3coeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gcG93KHhb
Ml1bM10sIHlbMl1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiBwb3coZmxv
YXQ0eDIgeCwgZmxvYXQ0eDIgeSkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBwb3coeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gcG93KHhb
MF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHBvdyh4WzFdWzBdLCB5WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBwb3coeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gcG93KHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHBvdyh4
WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBwb3coeFszXVswXSwgeVszXVsw
XSk7CisgICAgcmVzdWx0WzNdWzFdID0gcG93KHhbM11bMV0sIHlbM11bMV0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDR4MyBwb3coZmxvYXQ0eDMgeCwgZmxvYXQ0eDMgeSkgeworICAg
IGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBwb3coeFswXVswXSwgeVswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gcG93KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3Vs
dFswXVsyXSA9IHBvdyh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBwb3co
eFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gcG93KHhbMV1bMV0sIHlbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHBvdyh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1
bHRbMl1bMF0gPSBwb3coeFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gcG93
KHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHBvdyh4WzJdWzJdLCB5WzJd
WzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBwb3coeFszXVswXSwgeVszXVswXSk7CisgICAgcmVz
dWx0WzNdWzFdID0gcG93KHhbM11bMV0sIHlbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IHBv
dyh4WzNdWzJdLCB5WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgcG93
KGZsb2F0NHg0IHgsIGZsb2F0NHg0IHkpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gcG93KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHBv
dyh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBwb3coeFswXVsyXSwgeVsw
XVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gcG93KHhbMF1bM10sIHlbMF1bM10pOworICAgIHJl
c3VsdFsxXVswXSA9IHBvdyh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBw
b3coeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gcG93KHhbMV1bMl0sIHlb
MV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHBvdyh4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBwb3coeFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
cG93KHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHBvdyh4WzJdWzJdLCB5
WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBwb3coeFsyXVszXSwgeVsyXVszXSk7CisgICAg
cmVzdWx0WzNdWzBdID0gcG93KHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9
IHBvdyh4WzNdWzFdLCB5WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBwb3coeFszXVsyXSwg
eVszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gcG93KHhbM11bM10sIHlbM11bM10pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgc3RlcChmbG9hdDIgeCwgZmxvYXQyIHkpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHN0ZXAoeFswXSwgeVswXSk7CisgICAg
cmVzdWx0WzFdID0gc3RlcCh4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQzIHN0ZXAoZmxvYXQzIHgsIGZsb2F0MyB5KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBzdGVwKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IHN0ZXAoeFsxXSwg
eVsxXSk7CisgICAgcmVzdWx0WzJdID0gc3RlcCh4WzJdLCB5WzJdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IHN0ZXAoZmxvYXQ0IHgsIGZsb2F0NCB5KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBzdGVwKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9
IHN0ZXAoeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJdID0gc3RlcCh4WzJdLCB5WzJdKTsKKyAg
ICByZXN1bHRbM10gPSBzdGVwKHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDJ4MiBzdGVwKGZsb2F0MngyIHgsIGZsb2F0MngyIHkpIHsKKyAgICBmbG9hdDJ4MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc3RlcCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBzdGVwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHN0
ZXAoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3RlcCh4WzFdWzFdLCB5
WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgc3RlcChmbG9hdDJ4MyB4
LCBmbG9hdDJ4MyB5KSB7CisgICAgZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IHN0ZXAoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc3RlcCh4WzBdWzFd
LCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzdGVwKHhbMF1bMl0sIHlbMF1bMl0pOwor
ICAgIHJlc3VsdFsxXVswXSA9IHN0ZXAoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gc3RlcCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzdGVwKHhb
MV1bMl0sIHlbMV1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBzdGVwKGZs
b2F0Mng0IHgsIGZsb2F0Mng0IHkpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gc3RlcCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzdGVw
KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHN0ZXAoeFswXVsyXSwgeVsw
XVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gc3RlcCh4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBzdGVwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IHN0ZXAoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc3RlcCh4WzFdWzJd
LCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzdGVwKHhbMV1bM10sIHlbMV1bM10pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBzdGVwKGZsb2F0M3gyIHgsIGZsb2F0M3gy
IHkpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc3RlcCh4WzBd
WzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzdGVwKHhbMF1bMV0sIHlbMF1bMV0p
OworICAgIHJlc3VsdFsxXVswXSA9IHN0ZXAoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gc3RlcCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzdGVw
KHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHN0ZXAoeFsyXVsxXSwgeVsy
XVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIHN0ZXAoZmxvYXQzeDMgeCwg
ZmxvYXQzeDMgeSkgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBz
dGVwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHN0ZXAoeFswXVsxXSwg
eVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc3RlcCh4WzBdWzJdLCB5WzBdWzJdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBzdGVwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IHN0ZXAoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc3RlcCh4WzFd
WzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzdGVwKHhbMl1bMF0sIHlbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gc3RlcCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzeDQgc3RlcChmbG9hdDN4NCB4LCBmbG9hdDN4NCB5KSB7CisgICAgZmxvYXQzeDQgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IHN0ZXAoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gc3RlcCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBz
dGVwKHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHN0ZXAoeFswXVszXSwg
eVswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc3RlcCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBzdGVwKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IHN0ZXAoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc3RlcCh4WzFd
WzNdLCB5WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzdGVwKHhbMl1bMF0sIHlbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gc3RlcCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBzdGVw
KHhbMl1bM10sIHlbMl1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiBzdGVw
KGZsb2F0NHgyIHgsIGZsb2F0NHgyIHkpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gc3RlcCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBz
dGVwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHN0ZXAoeFsxXVswXSwg
eVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3RlcCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBzdGVwKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gc3RlcCh4WzNd
WzBdLCB5WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzdGVwKHhbM11bMV0sIHlbM11bMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MyBzdGVwKGZsb2F0NHgzIHgsIGZsb2F0
NHgzIHkpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc3RlcCh4
WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzdGVwKHhbMF1bMV0sIHlbMF1b
MV0pOworICAgIHJlc3VsdFswXVsyXSA9IHN0ZXAoeFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gc3RlcCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBz
dGVwKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHN0ZXAoeFsxXVsyXSwg
eVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc3RlcCh4WzJdWzBdLCB5WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSBzdGVwKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsy
XSA9IHN0ZXAoeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gc3RlcCh4WzNd
WzBdLCB5WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzdGVwKHhbM11bMV0sIHlbM11bMV0p
OworICAgIHJlc3VsdFszXVsyXSA9IHN0ZXAoeFszXVsyXSwgeVszXVsyXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NHg0IHN0ZXAoZmxvYXQ0eDQgeCwgZmxvYXQ0eDQgeSkgeworICAg
IGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzdGVwKHhbMF1bMF0sIHlbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IHN0ZXAoeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gc3RlcCh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBz
dGVwKHhbMF1bM10sIHlbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHN0ZXAoeFsxXVswXSwg
eVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc3RlcCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBzdGVwKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3VsdFsxXVsz
XSA9IHN0ZXAoeFsxXVszXSwgeVsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc3RlcCh4WzJd
WzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzdGVwKHhbMl1bMV0sIHlbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IHN0ZXAoeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmVzdWx0
WzJdWzNdID0gc3RlcCh4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzdGVw
KHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IHN0ZXAoeFszXVsxXSwgeVsz
XVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gc3RlcCh4WzNdWzJdLCB5WzNdWzJdKTsKKyAgICBy
ZXN1bHRbM11bM10gPSBzdGVwKHhbM11bM10sIHlbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDIgbGRleHAoZmxvYXQyIHgsIGZsb2F0MiB5KSB7CisgICAgZmxvYXQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBsZGV4cCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBs
ZGV4cCh4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIGxkZXhwKGZs
b2F0MyB4LCBmbG9hdDMgeSkgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
bGRleHAoeFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gbGRleHAoeFsxXSwgeVsxXSk7Cisg
ICAgcmVzdWx0WzJdID0gbGRleHAoeFsyXSwgeVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBsZGV4cChmbG9hdDQgeCwgZmxvYXQ0IHkpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGxkZXhwKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IGxkZXhw
KHhbMV0sIHlbMV0pOworICAgIHJlc3VsdFsyXSA9IGxkZXhwKHhbMl0sIHlbMl0pOworICAgIHJl
c3VsdFszXSA9IGxkZXhwKHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDJ4MiBsZGV4cChmbG9hdDJ4MiB4LCBmbG9hdDJ4MiB5KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGxkZXhwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3Vs
dFswXVsxXSA9IGxkZXhwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGxk
ZXhwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxkZXhwKHhbMV1bMV0s
IHlbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBsZGV4cChmbG9hdDJ4
MyB4LCBmbG9hdDJ4MyB5KSB7CisgICAgZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGxkZXhwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxkZXhwKHhb
MF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGxkZXhwKHhbMF1bMl0sIHlbMF1b
Ml0pOworICAgIHJlc3VsdFsxXVswXSA9IGxkZXhwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IGxkZXhwKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9
IGxkZXhwKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4
NCBsZGV4cChmbG9hdDJ4NCB4LCBmbG9hdDJ4NCB5KSB7CisgICAgZmxvYXQyeDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGxkZXhwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGxkZXhwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGxkZXhw
KHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGxkZXhwKHhbMF1bM10sIHlb
MF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGxkZXhwKHhbMV1bMF0sIHlbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IGxkZXhwKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IGxkZXhwKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGxkZXhwKHhb
MV1bM10sIHlbMV1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBsZGV4cChm
bG9hdDN4MiB4LCBmbG9hdDN4MiB5KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGxkZXhwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxk
ZXhwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGxkZXhwKHhbMV1bMF0s
IHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxkZXhwKHhbMV1bMV0sIHlbMV1bMV0pOwor
ICAgIHJlc3VsdFsyXVswXSA9IGxkZXhwKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsy
XVsxXSA9IGxkZXhwKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDN4MyBsZGV4cChmbG9hdDN4MyB4LCBmbG9hdDN4MyB5KSB7CisgICAgZmxvYXQzeDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGxkZXhwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IGxkZXhwKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9
IGxkZXhwKHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGxkZXhwKHhbMV1b
MF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxkZXhwKHhbMV1bMV0sIHlbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IGxkZXhwKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3Vs
dFsyXVswXSA9IGxkZXhwKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGxk
ZXhwKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGxkZXhwKHhbMl1bMl0s
IHlbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBsZGV4cChmbG9hdDN4
NCB4LCBmbG9hdDN4NCB5KSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGxkZXhwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxkZXhwKHhb
MF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGxkZXhwKHhbMF1bMl0sIHlbMF1b
Ml0pOworICAgIHJlc3VsdFswXVszXSA9IGxkZXhwKHhbMF1bM10sIHlbMF1bM10pOworICAgIHJl
c3VsdFsxXVswXSA9IGxkZXhwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IGxkZXhwKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxkZXhwKHhbMV1b
Ml0sIHlbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGxkZXhwKHhbMV1bM10sIHlbMV1bM10p
OworICAgIHJlc3VsdFsyXVswXSA9IGxkZXhwKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IGxkZXhwKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGxk
ZXhwKHhbMl1bMl0sIHlbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGxkZXhwKHhbMl1bM10s
IHlbMl1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiBsZGV4cChmbG9hdDR4
MiB4LCBmbG9hdDR4MiB5KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGxkZXhwKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxkZXhwKHhb
MF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGxkZXhwKHhbMV1bMF0sIHlbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxkZXhwKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJl
c3VsdFsyXVswXSA9IGxkZXhwKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IGxkZXhwKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGxkZXhwKHhbM11b
MF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGxkZXhwKHhbM11bMV0sIHlbM11bMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MyBsZGV4cChmbG9hdDR4MyB4LCBmbG9h
dDR4MyB5KSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxkZXhw
KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxkZXhwKHhbMF1bMV0sIHlb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGxkZXhwKHhbMF1bMl0sIHlbMF1bMl0pOworICAg
IHJlc3VsdFsxXVswXSA9IGxkZXhwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IGxkZXhwKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxkZXhwKHhb
MV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGxkZXhwKHhbMl1bMF0sIHlbMl1b
MF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGxkZXhwKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJl
c3VsdFsyXVsyXSA9IGxkZXhwKHhbMl1bMl0sIHlbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9
IGxkZXhwKHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGxkZXhwKHhbM11b
MV0sIHlbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGxkZXhwKHhbM11bMl0sIHlbM11bMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBsZGV4cChmbG9hdDR4NCB4LCBmbG9h
dDR4NCB5KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxkZXhw
KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxkZXhwKHhbMF1bMV0sIHlb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGxkZXhwKHhbMF1bMl0sIHlbMF1bMl0pOworICAg
IHJlc3VsdFswXVszXSA9IGxkZXhwKHhbMF1bM10sIHlbMF1bM10pOworICAgIHJlc3VsdFsxXVsw
XSA9IGxkZXhwKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxkZXhwKHhb
MV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxkZXhwKHhbMV1bMl0sIHlbMV1b
Ml0pOworICAgIHJlc3VsdFsxXVszXSA9IGxkZXhwKHhbMV1bM10sIHlbMV1bM10pOworICAgIHJl
c3VsdFsyXVswXSA9IGxkZXhwKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IGxkZXhwKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGxkZXhwKHhbMl1b
Ml0sIHlbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGxkZXhwKHhbMl1bM10sIHlbMl1bM10p
OworICAgIHJlc3VsdFszXVswXSA9IGxkZXhwKHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3Vs
dFszXVsxXSA9IGxkZXhwKHhbM11bMV0sIHlbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGxk
ZXhwKHhbM11bMl0sIHlbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGxkZXhwKHhbM11bM10s
IHlbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgZm1vZChmbG9hdDIgeCwg
ZmxvYXQyIHkpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZtb2QoeFsw
XSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gZm1vZCh4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzIGZtb2QoZmxvYXQzIHgsIGZsb2F0MyB5KSB7CisgICAgZmxvYXQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmbW9kKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsx
XSA9IGZtb2QoeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJdID0gZm1vZCh4WzJdLCB5WzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGZtb2QoZmxvYXQ0IHgsIGZsb2F0NCB5KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmbW9kKHhbMF0sIHlbMF0pOwor
ICAgIHJlc3VsdFsxXSA9IGZtb2QoeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJdID0gZm1vZCh4
WzJdLCB5WzJdKTsKKyAgICByZXN1bHRbM10gPSBmbW9kKHhbM10sIHlbM10pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDJ4MiBmbW9kKGZsb2F0MngyIHgsIGZsb2F0MngyIHkpIHsKKyAg
ICBmbG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZm1vZCh4WzBdWzBdLCB5WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbW9kKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJl
c3VsdFsxXVswXSA9IGZtb2QoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
Zm1vZCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMg
Zm1vZChmbG9hdDJ4MyB4LCBmbG9hdDJ4MyB5KSB7CisgICAgZmxvYXQyeDMgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGZtb2QoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gZm1vZCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmbW9kKHhbMF1b
Ml0sIHlbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGZtb2QoeFsxXVswXSwgeVsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gZm1vZCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRb
MV1bMl0gPSBmbW9kKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDJ4NCBmbW9kKGZsb2F0Mng0IHgsIGZsb2F0Mng0IHkpIHsKKyAgICBmbG9hdDJ4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZm1vZCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBmbW9kKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZt
b2QoeFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZm1vZCh4WzBdWzNdLCB5
WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmbW9kKHhbMV1bMF0sIHlbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IGZtb2QoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gZm1vZCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBmbW9kKHhbMV1b
M10sIHlbMV1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBmbW9kKGZsb2F0
M3gyIHgsIGZsb2F0M3gyIHkpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gZm1vZCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbW9kKHhb
MF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGZtb2QoeFsxXVswXSwgeVsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gZm1vZCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1
bHRbMl1bMF0gPSBmbW9kKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGZt
b2QoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIGZt
b2QoZmxvYXQzeDMgeCwgZmxvYXQzeDMgeSkgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBmbW9kKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGZtb2QoeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZm1vZCh4WzBdWzJd
LCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmbW9kKHhbMV1bMF0sIHlbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGZtb2QoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gZm1vZCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbW9kKHhb
Ml1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGZtb2QoeFsyXVsxXSwgeVsyXVsx
XSk7CisgICAgcmVzdWx0WzJdWzJdID0gZm1vZCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzeDQgZm1vZChmbG9hdDN4NCB4LCBmbG9hdDN4NCB5KSB7Cisg
ICAgZmxvYXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZtb2QoeFswXVswXSwgeVsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZm1vZCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBmbW9kKHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9
IGZtb2QoeFswXVszXSwgeVswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZm1vZCh4WzFdWzBd
LCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbW9kKHhbMV1bMV0sIHlbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IGZtb2QoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzFd
WzNdID0gZm1vZCh4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbW9kKHhb
Ml1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGZtb2QoeFsyXVsxXSwgeVsyXVsx
XSk7CisgICAgcmVzdWx0WzJdWzJdID0gZm1vZCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1
bHRbMl1bM10gPSBmbW9kKHhbMl1bM10sIHlbMl1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDR4MiBmbW9kKGZsb2F0NHgyIHgsIGZsb2F0NHgyIHkpIHsKKyAgICBmbG9hdDR4MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZm1vZCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBmbW9kKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9
IGZtb2QoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZm1vZCh4WzFdWzFd
LCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbW9kKHhbMl1bMF0sIHlbMl1bMF0pOwor
ICAgIHJlc3VsdFsyXVsxXSA9IGZtb2QoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmVzdWx0WzNd
WzBdID0gZm1vZCh4WzNdWzBdLCB5WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBmbW9kKHhb
M11bMV0sIHlbM11bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MyBmbW9kKGZs
b2F0NHgzIHgsIGZsb2F0NHgzIHkpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gZm1vZCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbW9k
KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZtb2QoeFswXVsyXSwgeVsw
XVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZm1vZCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBmbW9kKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9
IGZtb2QoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZm1vZCh4WzJdWzBd
LCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmbW9kKHhbMl1bMV0sIHlbMl1bMV0pOwor
ICAgIHJlc3VsdFsyXVsyXSA9IGZtb2QoeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmVzdWx0WzNd
WzBdID0gZm1vZCh4WzNdWzBdLCB5WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBmbW9kKHhb
M11bMV0sIHlbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGZtb2QoeFszXVsyXSwgeVszXVsy
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IGZtb2QoZmxvYXQ0eDQgeCwgZmxv
YXQ0eDQgeSkgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbW9k
KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZtb2QoeFswXVsxXSwgeVsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZm1vZCh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBmbW9kKHhbMF1bM10sIHlbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9
IGZtb2QoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZm1vZCh4WzFdWzFd
LCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmbW9kKHhbMV1bMl0sIHlbMV1bMl0pOwor
ICAgIHJlc3VsdFsxXVszXSA9IGZtb2QoeFsxXVszXSwgeVsxXVszXSk7CisgICAgcmVzdWx0WzJd
WzBdID0gZm1vZCh4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmbW9kKHhb
Ml1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGZtb2QoeFsyXVsyXSwgeVsyXVsy
XSk7CisgICAgcmVzdWx0WzJdWzNdID0gZm1vZCh4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXN1
bHRbM11bMF0gPSBmbW9kKHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGZt
b2QoeFszXVsxXSwgeVszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gZm1vZCh4WzNdWzJdLCB5
WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBmbW9kKHhbM11bM10sIHlbM11bM10pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CisKK2hhbGYgc21vb3Roc3RlcChoYWxmIGVkZ2UwLCBoYWxmIGVk
Z2UxLCBoYWxmIHgpIHsKKyAgICBoYWxmIHQgPSBjbGFtcCgoeCAtIGVkZ2UwKSAvIChlZGdlMSAt
IGVkZ2UwKSwgMCwgMSk7CisgICAgcmV0dXJuIHQgKiB0ICogKDMgLSAyICogdCk7Cit9CitoYWxm
IGxlcnAoaGFsZiB4LCBoYWxmIHksIGhhbGYgcykgeworICAgIHJldHVybiB4ICogKDEgLSBzKSAr
IHkgKiBzOworfQoraGFsZiBmbWEoaGFsZiB4LCBoYWxmIHksIGhhbGYgeikgeworICAgIHJldHVy
biB4ICogeSArIHo7Cit9CitoYWxmIG1hZChoYWxmIHgsIGhhbGYgeSwgaGFsZiB6KSB7CisgICAg
cmV0dXJuIHggKiB5ICsgejsKK30KK2hhbGYyIHNtb290aHN0ZXAoaGFsZjIgeCwgaGFsZjIgeSwg
aGFsZjIgeikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBzbW9vdGhzdGVw
KHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IHNtb290aHN0ZXAoeFsxXSwgeVsx
XSwgelsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIHNtb290aHN0ZXAoaGFsZjMg
eCwgaGFsZjMgeSwgaGFsZjMgeikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBzbW9vdGhzdGVwKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IHNtb290aHN0
ZXAoeFsxXSwgeVsxXSwgelsxXSk7CisgICAgcmVzdWx0WzJdID0gc21vb3Roc3RlcCh4WzJdLCB5
WzJdLCB6WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgc21vb3Roc3RlcChoYWxm
NCB4LCBoYWxmNCB5LCBoYWxmNCB6KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IHNtb290aHN0ZXAoeFswXSwgeVswXSwgelswXSk7CisgICAgcmVzdWx0WzFdID0gc21vb3Ro
c3RlcCh4WzFdLCB5WzFdLCB6WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzbW9vdGhzdGVwKHhbMl0s
IHlbMl0sIHpbMl0pOworICAgIHJlc3VsdFszXSA9IHNtb290aHN0ZXAoeFszXSwgeVszXSwgelsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgc21vb3Roc3RlcChoYWxmMngyIHgs
IGhhbGYyeDIgeSwgaGFsZjJ4MiB6KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gc21vb3Roc3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBzbW9vdGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJl
c3VsdFsxXVswXSA9IHNtb290aHN0ZXAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gc21vb3Roc3RlcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBzbW9vdGhzdGVwKGhhbGYyeDMgeCwgaGFsZjJ4
MyB5LCBoYWxmMngzIHopIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBzbW9vdGhzdGVwKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IHNtb290aHN0ZXAoeFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gc21vb3Roc3RlcCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBzbW9vdGhzdGVwKHhbMV1bMF0sIHlbMV1bMF0sIHpbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IHNtb290aHN0ZXAoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gc21vb3Roc3RlcCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBzbW9vdGhzdGVwKGhhbGYyeDQgeCwgaGFsZjJ4NCB5
LCBoYWxmMng0IHopIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBz
bW9vdGhzdGVwKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IHNtb290aHN0ZXAoeFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJd
ID0gc21vb3Roc3RlcCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMF1b
M10gPSBzbW9vdGhzdGVwKHhbMF1bM10sIHlbMF1bM10sIHpbMF1bM10pOworICAgIHJlc3VsdFsx
XVswXSA9IHNtb290aHN0ZXAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gc21vb3Roc3RlcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBzbW9vdGhzdGVwKHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0pOworICAgIHJl
c3VsdFsxXVszXSA9IHNtb290aHN0ZXAoeFsxXVszXSwgeVsxXVszXSwgelsxXVszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgc21vb3Roc3RlcChoYWxmM3gyIHgsIGhhbGYzeDIg
eSwgaGFsZjN4MiB6KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
c21vb3Roc3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBzbW9vdGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVsw
XSA9IHNtb290aHN0ZXAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gc21vb3Roc3RlcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBzbW9vdGhzdGVwKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IHNtb290aHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgc21vb3Roc3RlcChoYWxmM3gzIHgsIGhhbGYzeDMgeSwg
aGFsZjN4MyB6KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc21v
b3Roc3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBz
bW9vdGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9
IHNtb290aHN0ZXAoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gc21vb3Roc3RlcCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBzbW9vdGhzdGVwKHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3VsdFsx
XVsyXSA9IHNtb290aHN0ZXAoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gc21vb3Roc3RlcCh4WzJdWzBdLCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBzbW9vdGhzdGVwKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOworICAgIHJl
c3VsdFsyXVsyXSA9IHNtb290aHN0ZXAoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgc21vb3Roc3RlcChoYWxmM3g0IHgsIGhhbGYzeDQg
eSwgaGFsZjN4NCB6KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
c21vb3Roc3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBzbW9vdGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IHNtb290aHN0ZXAoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzBd
WzNdID0gc21vb3Roc3RlcCh4WzBdWzNdLCB5WzBdWzNdLCB6WzBdWzNdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBzbW9vdGhzdGVwKHhbMV1bMF0sIHlbMV1bMF0sIHpbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IHNtb290aHN0ZXAoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gc21vb3Roc3RlcCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICBy
ZXN1bHRbMV1bM10gPSBzbW9vdGhzdGVwKHhbMV1bM10sIHlbMV1bM10sIHpbMV1bM10pOworICAg
IHJlc3VsdFsyXVswXSA9IHNtb290aHN0ZXAoeFsyXVswXSwgeVsyXVswXSwgelsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gc21vb3Roc3RlcCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsK
KyAgICByZXN1bHRbMl1bMl0gPSBzbW9vdGhzdGVwKHhbMl1bMl0sIHlbMl1bMl0sIHpbMl1bMl0p
OworICAgIHJlc3VsdFsyXVszXSA9IHNtb290aHN0ZXAoeFsyXVszXSwgeVsyXVszXSwgelsyXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgc21vb3Roc3RlcChoYWxmNHgyIHgs
IGhhbGY0eDIgeSwgaGFsZjR4MiB6KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gc21vb3Roc3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBzbW9vdGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJl
c3VsdFsxXVswXSA9IHNtb290aHN0ZXAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gc21vb3Roc3RlcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBzbW9vdGhzdGVwKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOwor
ICAgIHJlc3VsdFsyXVsxXSA9IHNtb290aHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7
CisgICAgcmVzdWx0WzNdWzBdID0gc21vb3Roc3RlcCh4WzNdWzBdLCB5WzNdWzBdLCB6WzNdWzBd
KTsKKyAgICByZXN1bHRbM11bMV0gPSBzbW9vdGhzdGVwKHhbM11bMV0sIHlbM11bMV0sIHpbM11b
MV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIHNtb290aHN0ZXAoaGFsZjR4MyB4
LCBoYWxmNHgzIHksIGhhbGY0eDMgeikgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IHNtb290aHN0ZXAoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gc21vb3Roc3RlcCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBzbW9vdGhzdGVwKHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1bMl0pOworICAg
IHJlc3VsdFsxXVswXSA9IHNtb290aHN0ZXAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gc21vb3Roc3RlcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBzbW9vdGhzdGVwKHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0p
OworICAgIHJlc3VsdFsyXVswXSA9IHNtb290aHN0ZXAoeFsyXVswXSwgeVsyXVswXSwgelsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gc21vb3Roc3RlcCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzbW9vdGhzdGVwKHhbMl1bMl0sIHlbMl1bMl0sIHpb
Ml1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IHNtb290aHN0ZXAoeFszXVswXSwgeVszXVswXSwg
elszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc21vb3Roc3RlcCh4WzNdWzFdLCB5WzNdWzFd
LCB6WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBzbW9vdGhzdGVwKHhbM11bMl0sIHlbM11b
Ml0sIHpbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IHNtb290aHN0ZXAo
aGFsZjR4NCB4LCBoYWxmNHg0IHksIGhhbGY0eDQgeikgeworICAgIGhhbGY0eDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IHNtb290aHN0ZXAoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gc21vb3Roc3RlcCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBzbW9vdGhzdGVwKHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1b
Ml0pOworICAgIHJlc3VsdFswXVszXSA9IHNtb290aHN0ZXAoeFswXVszXSwgeVswXVszXSwgelsw
XVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc21vb3Roc3RlcCh4WzFdWzBdLCB5WzFdWzBdLCB6
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzbW9vdGhzdGVwKHhbMV1bMV0sIHlbMV1bMV0s
IHpbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNtb290aHN0ZXAoeFsxXVsyXSwgeVsxXVsy
XSwgelsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc21vb3Roc3RlcCh4WzFdWzNdLCB5WzFd
WzNdLCB6WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzbW9vdGhzdGVwKHhbMl1bMF0sIHlb
Ml1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHNtb290aHN0ZXAoeFsyXVsxXSwg
eVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc21vb3Roc3RlcCh4WzJdWzJd
LCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBzbW9vdGhzdGVwKHhbMl1b
M10sIHlbMl1bM10sIHpbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IHNtb290aHN0ZXAoeFsz
XVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc21vb3Roc3RlcCh4
WzNdWzFdLCB5WzNdWzFdLCB6WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBzbW9vdGhzdGVw
KHhbM11bMl0sIHlbM11bMl0sIHpbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IHNtb290aHN0
ZXAoeFszXVszXSwgeVszXVszXSwgelszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYyIGxlcnAoaGFsZjIgeCwgaGFsZjIgeSwgaGFsZjIgeikgeworICAgIGhhbGYyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBsZXJwKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9
IGxlcnAoeFsxXSwgeVsxXSwgelsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIGxl
cnAoaGFsZjMgeCwgaGFsZjMgeSwgaGFsZjMgeikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBsZXJwKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGxlcnAo
eFsxXSwgeVsxXSwgelsxXSk7CisgICAgcmVzdWx0WzJdID0gbGVycCh4WzJdLCB5WzJdLCB6WzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgbGVycChoYWxmNCB4LCBoYWxmNCB5LCBo
YWxmNCB6KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGxlcnAoeFswXSwg
eVswXSwgelswXSk7CisgICAgcmVzdWx0WzFdID0gbGVycCh4WzFdLCB5WzFdLCB6WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSBsZXJwKHhbMl0sIHlbMl0sIHpbMl0pOworICAgIHJlc3VsdFszXSA9IGxl
cnAoeFszXSwgeVszXSwgelszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgbGVy
cChoYWxmMngyIHgsIGhhbGYyeDIgeSwgaGFsZjJ4MiB6KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gbGVycCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBsZXJwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJl
c3VsdFsxXVswXSA9IGxlcnAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0
WzFdWzFdID0gbGVycCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjJ4MyBsZXJwKGhhbGYyeDMgeCwgaGFsZjJ4MyB5LCBoYWxmMngzIHopIHsK
KyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsZXJwKHhbMF1bMF0sIHlb
MF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxlcnAoeFswXVsxXSwgeVswXVsx
XSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbGVycCh4WzBdWzJdLCB5WzBdWzJdLCB6
WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsZXJwKHhbMV1bMF0sIHlbMV1bMF0sIHpbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxlcnAoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gbGVycCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBsZXJwKGhhbGYyeDQgeCwgaGFsZjJ4NCB5LCBo
YWxmMng0IHopIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsZXJw
KHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxlcnAoeFsw
XVsxXSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbGVycCh4WzBdWzJd
LCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBsZXJwKHhbMF1bM10sIHlb
MF1bM10sIHpbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGxlcnAoeFsxXVswXSwgeVsxXVsw
XSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbGVycCh4WzFdWzFdLCB5WzFdWzFdLCB6
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsZXJwKHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1b
Ml0pOworICAgIHJlc3VsdFsxXVszXSA9IGxlcnAoeFsxXVszXSwgeVsxXVszXSwgelsxXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgbGVycChoYWxmM3gyIHgsIGhhbGYzeDIg
eSwgaGFsZjN4MiB6KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
bGVycCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsZXJw
KHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGxlcnAoeFsx
XVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbGVycCh4WzFdWzFd
LCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsZXJwKHhbMl1bMF0sIHlb
Ml1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGxlcnAoeFsyXVsxXSwgeVsyXVsx
XSwgelsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgbGVycChoYWxmM3gz
IHgsIGhhbGYzeDMgeSwgaGFsZjN4MyB6KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gbGVycCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBsZXJwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IGxlcnAoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
bGVycCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsZXJw
KHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxlcnAoeFsx
XVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbGVycCh4WzJdWzBd
LCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBsZXJwKHhbMl1bMV0sIHlb
Ml1bMV0sIHpbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGxlcnAoeFsyXVsyXSwgeVsyXVsy
XSwgelsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgbGVycChoYWxmM3g0
IHgsIGhhbGYzeDQgeSwgaGFsZjN4NCB6KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gbGVycCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBsZXJwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IGxlcnAoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0g
bGVycCh4WzBdWzNdLCB5WzBdWzNdLCB6WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsZXJw
KHhbMV1bMF0sIHlbMV1bMF0sIHpbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxlcnAoeFsx
XVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbGVycCh4WzFdWzJd
LCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBsZXJwKHhbMV1bM10sIHlb
MV1bM10sIHpbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGxlcnAoeFsyXVswXSwgeVsyXVsw
XSwgelsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbGVycCh4WzJdWzFdLCB5WzJdWzFdLCB6
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBsZXJwKHhbMl1bMl0sIHlbMl1bMl0sIHpbMl1b
Ml0pOworICAgIHJlc3VsdFsyXVszXSA9IGxlcnAoeFsyXVszXSwgeVsyXVszXSwgelsyXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgbGVycChoYWxmNHgyIHgsIGhhbGY0eDIg
eSwgaGFsZjR4MiB6KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
bGVycCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsZXJw
KHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGxlcnAoeFsx
XVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbGVycCh4WzFdWzFd
LCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsZXJwKHhbMl1bMF0sIHlb
Ml1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGxlcnAoeFsyXVsxXSwgeVsyXVsx
XSwgelsyXVsxXSk7CisgICAgcmVzdWx0WzNdWzBdID0gbGVycCh4WzNdWzBdLCB5WzNdWzBdLCB6
WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBsZXJwKHhbM11bMV0sIHlbM11bMV0sIHpbM11b
MV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIGxlcnAoaGFsZjR4MyB4LCBoYWxm
NHgzIHksIGhhbGY0eDMgeikgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGxlcnAoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
bGVycCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsZXJw
KHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGxlcnAoeFsx
XVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbGVycCh4WzFdWzFd
LCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsZXJwKHhbMV1bMl0sIHlb
MV1bMl0sIHpbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGxlcnAoeFsyXVswXSwgeVsyXVsw
XSwgelsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbGVycCh4WzJdWzFdLCB5WzJdWzFdLCB6
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBsZXJwKHhbMl1bMl0sIHlbMl1bMl0sIHpbMl1b
Ml0pOworICAgIHJlc3VsdFszXVswXSA9IGxlcnAoeFszXVswXSwgeVszXVswXSwgelszXVswXSk7
CisgICAgcmVzdWx0WzNdWzFdID0gbGVycCh4WzNdWzFdLCB5WzNdWzFdLCB6WzNdWzFdKTsKKyAg
ICByZXN1bHRbM11bMl0gPSBsZXJwKHhbM11bMl0sIHlbM11bMl0sIHpbM11bMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IGxlcnAoaGFsZjR4NCB4LCBoYWxmNHg0IHksIGhhbGY0
eDQgeikgeworICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxlcnAoeFsw
XVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbGVycCh4WzBdWzFd
LCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsZXJwKHhbMF1bMl0sIHlb
MF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGxlcnAoeFswXVszXSwgeVswXVsz
XSwgelswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbGVycCh4WzFdWzBdLCB5WzFdWzBdLCB6
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsZXJwKHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxlcnAoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7
CisgICAgcmVzdWx0WzFdWzNdID0gbGVycCh4WzFdWzNdLCB5WzFdWzNdLCB6WzFdWzNdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBsZXJwKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJl
c3VsdFsyXVsxXSA9IGxlcnAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gbGVycCh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXN1bHRbMl1b
M10gPSBsZXJwKHhbMl1bM10sIHlbMl1bM10sIHpbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9
IGxlcnAoeFszXVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbGVy
cCh4WzNdWzFdLCB5WzNdWzFdLCB6WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBsZXJwKHhb
M11bMl0sIHlbM11bMl0sIHpbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGxlcnAoeFszXVsz
XSwgeVszXVszXSwgelszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIGZtYSho
YWxmMiB4LCBoYWxmMiB5LCBoYWxmMiB6KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGZtYSh4WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmbWEoeFsxXSwg
eVsxXSwgelsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIGZtYShoYWxmMyB4LCBo
YWxmMyB5LCBoYWxmMyB6KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZt
YSh4WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmbWEoeFsxXSwgeVsxXSwgelsx
XSk7CisgICAgcmVzdWx0WzJdID0gZm1hKHhbMl0sIHlbMl0sIHpbMl0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBmbWEoaGFsZjQgeCwgaGFsZjQgeSwgaGFsZjQgeikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmbWEoeFswXSwgeVswXSwgelswXSk7CisgICAg
cmVzdWx0WzFdID0gZm1hKHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJlc3VsdFsyXSA9IGZtYSh4
WzJdLCB5WzJdLCB6WzJdKTsKKyAgICByZXN1bHRbM10gPSBmbWEoeFszXSwgeVszXSwgelszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgZm1hKGhhbGYyeDIgeCwgaGFsZjJ4MiB5
LCBoYWxmMngyIHopIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBm
bWEoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZm1hKHhb
MF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGZtYSh4WzFdWzBd
LCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbWEoeFsxXVsxXSwgeVsx
XVsxXSwgelsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgZm1hKGhhbGYy
eDMgeCwgaGFsZjJ4MyB5LCBoYWxmMngzIHopIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBmbWEoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gZm1hKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IGZtYSh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBm
bWEoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZm1hKHhb
MV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGZtYSh4WzFdWzJd
LCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBmbWEo
aGFsZjJ4NCB4LCBoYWxmMng0IHksIGhhbGYyeDQgeikgeworICAgIGhhbGYyeDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGZtYSh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBmbWEoeFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gZm1hKHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFswXVsz
XSA9IGZtYSh4WzBdWzNdLCB5WzBdWzNdLCB6WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBm
bWEoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZm1hKHhb
MV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGZtYSh4WzFdWzJd
LCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBmbWEoeFsxXVszXSwgeVsx
XVszXSwgelsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgZm1hKGhhbGYz
eDIgeCwgaGFsZjN4MiB5LCBoYWxmM3gyIHopIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBmbWEoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gZm1hKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVsw
XSA9IGZtYSh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBm
bWEoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZm1hKHhb
Ml1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGZtYSh4WzJdWzFd
LCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBmbWEo
aGFsZjN4MyB4LCBoYWxmM3gzIHksIGhhbGYzeDMgeikgeworICAgIGhhbGYzeDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGZtYSh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBmbWEoeFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gZm1hKHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFsxXVsw
XSA9IGZtYSh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBm
bWEoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZm1hKHhb
MV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGZtYSh4WzJdWzBd
LCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBmbWEoeFsyXVsxXSwgeVsy
XVsxXSwgelsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gZm1hKHhbMl1bMl0sIHlbMl1bMl0s
IHpbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IGZtYShoYWxmM3g0IHgs
IGhhbGYzeDQgeSwgaGFsZjN4NCB6KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gZm1hKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IGZtYSh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBm
bWEoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZm1hKHhb
MF1bM10sIHlbMF1bM10sIHpbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGZtYSh4WzFdWzBd
LCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbWEoeFsxXVsxXSwgeVsx
XVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZm1hKHhbMV1bMl0sIHlbMV1bMl0s
IHpbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGZtYSh4WzFdWzNdLCB5WzFdWzNdLCB6WzFd
WzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbWEoeFsyXVswXSwgeVsyXVswXSwgelsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gZm1hKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOworICAg
IHJlc3VsdFsyXVsyXSA9IGZtYSh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXN1
bHRbMl1bM10gPSBmbWEoeFsyXVszXSwgeVsyXVszXSwgelsyXVszXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0eDIgZm1hKGhhbGY0eDIgeCwgaGFsZjR4MiB5LCBoYWxmNHgyIHopIHsK
KyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbWEoeFswXVswXSwgeVsw
XVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZm1hKHhbMF1bMV0sIHlbMF1bMV0s
IHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGZtYSh4WzFdWzBdLCB5WzFdWzBdLCB6WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbWEoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7
CisgICAgcmVzdWx0WzJdWzBdID0gZm1hKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IGZtYSh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1
bHRbM11bMF0gPSBmbWEoeFszXVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gZm1hKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNHgzIGZtYShoYWxmNHgzIHgsIGhhbGY0eDMgeSwgaGFsZjR4MyB6KSB7CisgICAg
aGFsZjR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gZm1hKHhbMF1bMF0sIHlbMF1bMF0s
IHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZtYSh4WzBdWzFdLCB5WzBdWzFdLCB6WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmbWEoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gZm1hKHhbMV1bMF0sIHlbMV1bMF0sIHpbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IGZtYSh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBmbWEoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7CisgICAgcmVzdWx0WzJd
WzBdID0gZm1hKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IGZtYSh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBmbWEo
eFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gZm1hKHhbM11b
MF0sIHlbM11bMF0sIHpbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGZtYSh4WzNdWzFdLCB5
WzNdWzFdLCB6WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBmbWEoeFszXVsyXSwgeVszXVsy
XSwgelszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgZm1hKGhhbGY0eDQg
eCwgaGFsZjR4NCB5LCBoYWxmNHg0IHopIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBmbWEoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gZm1hKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9
IGZtYSh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBmbWEo
eFswXVszXSwgeVswXVszXSwgelswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZm1hKHhbMV1b
MF0sIHlbMV1bMF0sIHpbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZtYSh4WzFdWzFdLCB5
WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmbWEoeFsxXVsyXSwgeVsxXVsy
XSwgelsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gZm1hKHhbMV1bM10sIHlbMV1bM10sIHpb
MV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGZtYSh4WzJdWzBdLCB5WzJdWzBdLCB6WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBmbWEoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gZm1hKHhbMl1bMl0sIHlbMl1bMl0sIHpbMl1bMl0pOworICAgIHJl
c3VsdFsyXVszXSA9IGZtYSh4WzJdWzNdLCB5WzJdWzNdLCB6WzJdWzNdKTsKKyAgICByZXN1bHRb
M11bMF0gPSBmbWEoeFszXVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0WzNdWzFd
ID0gZm1hKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGZt
YSh4WzNdWzJdLCB5WzNdWzJdLCB6WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBmbWEoeFsz
XVszXSwgeVszXVszXSwgelszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG1h
ZChoYWxmMiB4LCBoYWxmMiB5LCBoYWxmMiB6KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IG1hZCh4WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtYWQoeFsx
XSwgeVsxXSwgelsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG1hZChoYWxmMyB4
LCBoYWxmMyB5LCBoYWxmMyB6KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IG1hZCh4WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtYWQoeFsxXSwgeVsxXSwg
elsxXSk7CisgICAgcmVzdWx0WzJdID0gbWFkKHhbMl0sIHlbMl0sIHpbMl0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBtYWQoaGFsZjQgeCwgaGFsZjQgeSwgaGFsZjQgeikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtYWQoeFswXSwgeVswXSwgelswXSk7Cisg
ICAgcmVzdWx0WzFdID0gbWFkKHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJlc3VsdFsyXSA9IG1h
ZCh4WzJdLCB5WzJdLCB6WzJdKTsKKyAgICByZXN1bHRbM10gPSBtYWQoeFszXSwgeVszXSwgelsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgbWFkKGhhbGYyeDIgeCwgaGFsZjJ4
MiB5LCBoYWxmMngyIHopIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBtYWQoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWFk
KHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IG1hZCh4WzFd
WzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYWQoeFsxXVsxXSwg
eVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgbWFkKGhh
bGYyeDMgeCwgaGFsZjJ4MyB5LCBoYWxmMngzIHopIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBtYWQoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gbWFkKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsw
XVsyXSA9IG1hZCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBtYWQoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbWFk
KHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IG1hZCh4WzFd
WzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBt
YWQoaGFsZjJ4NCB4LCBoYWxmMng0IHksIGhhbGYyeDQgeikgeworICAgIGhhbGYyeDQgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IG1hZCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBtYWQoeFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gbWFkKHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFsw
XVszXSA9IG1hZCh4WzBdWzNdLCB5WzBdWzNdLCB6WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBtYWQoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbWFk
KHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IG1hZCh4WzFd
WzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBtYWQoeFsxXVszXSwg
eVsxXVszXSwgelsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgbWFkKGhh
bGYzeDIgeCwgaGFsZjN4MiB5LCBoYWxmM3gyIHopIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBtYWQoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gbWFkKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsx
XVswXSA9IG1hZCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBtYWQoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWFk
KHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IG1hZCh4WzJd
WzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBt
YWQoaGFsZjN4MyB4LCBoYWxmM3gzIHksIGhhbGYzeDMgeikgeworICAgIGhhbGYzeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IG1hZCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBtYWQoeFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gbWFkKHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFsx
XVswXSA9IG1hZCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBtYWQoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbWFk
KHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IG1hZCh4WzJd
WzBdLCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtYWQoeFsyXVsxXSwg
eVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gbWFkKHhbMl1bMl0sIHlbMl1b
Ml0sIHpbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3g0IG1hZChoYWxmM3g0
IHgsIGhhbGYzeDQgeSwgaGFsZjN4NCB6KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gbWFkKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IG1hZCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBtYWQoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gbWFk
KHhbMF1bM10sIHlbMF1bM10sIHpbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IG1hZCh4WzFd
WzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYWQoeFsxXVsxXSwg
eVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbWFkKHhbMV1bMl0sIHlbMV1b
Ml0sIHpbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IG1hZCh4WzFdWzNdLCB5WzFdWzNdLCB6
WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtYWQoeFsyXVswXSwgeVsyXVswXSwgelsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gbWFkKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOwor
ICAgIHJlc3VsdFsyXVsyXSA9IG1hZCh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICBy
ZXN1bHRbMl1bM10gPSBtYWQoeFsyXVszXSwgeVsyXVszXSwgelsyXVszXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0eDIgbWFkKGhhbGY0eDIgeCwgaGFsZjR4MiB5LCBoYWxmNHgyIHop
IHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYWQoeFswXVswXSwg
eVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWFkKHhbMF1bMV0sIHlbMF1b
MV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IG1hZCh4WzFdWzBdLCB5WzFdWzBdLCB6
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYWQoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsx
XSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWFkKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOwor
ICAgIHJlc3VsdFsyXVsxXSA9IG1hZCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICBy
ZXN1bHRbM11bMF0gPSBtYWQoeFszXVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0
WzNdWzFdID0gbWFkKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNHgzIG1hZChoYWxmNHgzIHgsIGhhbGY0eDMgeSwgaGFsZjR4MyB6KSB7Cisg
ICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbWFkKHhbMF1bMF0sIHlbMF1b
MF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1hZCh4WzBdWzFdLCB5WzBdWzFdLCB6
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtYWQoeFswXVsyXSwgeVswXVsyXSwgelswXVsy
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gbWFkKHhbMV1bMF0sIHlbMV1bMF0sIHpbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IG1hZCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBtYWQoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gbWFkKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IG1hZCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBt
YWQoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7CisgICAgcmVzdWx0WzNdWzBdID0gbWFkKHhb
M11bMF0sIHlbM11bMF0sIHpbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IG1hZCh4WzNdWzFd
LCB5WzNdWzFdLCB6WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBtYWQoeFszXVsyXSwgeVsz
XVsyXSwgelszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgbWFkKGhhbGY0
eDQgeCwgaGFsZjR4NCB5LCBoYWxmNHg0IHopIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBtYWQoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gbWFkKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IG1hZCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBt
YWQoeFswXVszXSwgeVswXVszXSwgelswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbWFkKHhb
MV1bMF0sIHlbMV1bMF0sIHpbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IG1hZCh4WzFdWzFd
LCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtYWQoeFsxXVsyXSwgeVsx
XVsyXSwgelsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gbWFkKHhbMV1bM10sIHlbMV1bM10s
IHpbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IG1hZCh4WzJdWzBdLCB5WzJdWzBdLCB6WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtYWQoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7
CisgICAgcmVzdWx0WzJdWzJdID0gbWFkKHhbMl1bMl0sIHlbMl1bMl0sIHpbMl1bMl0pOworICAg
IHJlc3VsdFsyXVszXSA9IG1hZCh4WzJdWzNdLCB5WzJdWzNdLCB6WzJdWzNdKTsKKyAgICByZXN1
bHRbM11bMF0gPSBtYWQoeFszXVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gbWFkKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9
IG1hZCh4WzNdWzJdLCB5WzNdWzJdLCB6WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBtYWQo
eFszXVszXSwgeVszXVszXSwgelszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworZmxv
YXQgc21vb3Roc3RlcChmbG9hdCBlZGdlMCwgZmxvYXQgZWRnZTEsIGZsb2F0IHgpIHsKKyAgICBm
bG9hdCB0ID0gY2xhbXAoKHggLSBlZGdlMCkgLyAoZWRnZTEgLSBlZGdlMCksIDAsIDEpOworICAg
IHJldHVybiB0ICogdCAqICgzIC0gMiAqIHQpOworfQorZmxvYXQgbGVycChmbG9hdCB4LCBmbG9h
dCB5LCBmbG9hdCBzKSB7CisgICAgcmV0dXJuIHggKiAoMSAtIHMpICsgeSAqIHM7Cit9CitmbG9h
dCBmbWEoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeikgeworICAgIHJldHVybiB4ICogeSArIHo7
Cit9CitmbG9hdCBtYWQoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeikgeworICAgIHJldHVybiB4
ICogeSArIHo7Cit9CitmbG9hdDIgc21vb3Roc3RlcChmbG9hdDIgeCwgZmxvYXQyIHksIGZsb2F0
MiB6KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBzbW9vdGhzdGVwKHhb
MF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IHNtb290aHN0ZXAoeFsxXSwgeVsxXSwg
elsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBzbW9vdGhzdGVwKGZsb2F0MyB4
LCBmbG9hdDMgeSwgZmxvYXQzIHopIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IHNtb290aHN0ZXAoeFswXSwgeVswXSwgelswXSk7CisgICAgcmVzdWx0WzFdID0gc21vb3Ro
c3RlcCh4WzFdLCB5WzFdLCB6WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzbW9vdGhzdGVwKHhbMl0s
IHlbMl0sIHpbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgc21vb3Roc3RlcChm
bG9hdDQgeCwgZmxvYXQ0IHksIGZsb2F0NCB6KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBzbW9vdGhzdGVwKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9
IHNtb290aHN0ZXAoeFsxXSwgeVsxXSwgelsxXSk7CisgICAgcmVzdWx0WzJdID0gc21vb3Roc3Rl
cCh4WzJdLCB5WzJdLCB6WzJdKTsKKyAgICByZXN1bHRbM10gPSBzbW9vdGhzdGVwKHhbM10sIHlb
M10sIHpbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBzbW9vdGhzdGVwKGZs
b2F0MngyIHgsIGZsb2F0MngyIHksIGZsb2F0MngyIHopIHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gc21vb3Roc3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSBzbW9vdGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1b
MV0pOworICAgIHJlc3VsdFsxXVswXSA9IHNtb290aHN0ZXAoeFsxXVswXSwgeVsxXVswXSwgelsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc21vb3Roc3RlcCh4WzFdWzFdLCB5WzFdWzFdLCB6
WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgc21vb3Roc3RlcChmbG9h
dDJ4MyB4LCBmbG9hdDJ4MyB5LCBmbG9hdDJ4MyB6KSB7CisgICAgZmxvYXQyeDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IHNtb290aHN0ZXAoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gc21vb3Roc3RlcCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBzbW9vdGhzdGVwKHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1b
Ml0pOworICAgIHJlc3VsdFsxXVswXSA9IHNtb290aHN0ZXAoeFsxXVswXSwgeVsxXVswXSwgelsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc21vb3Roc3RlcCh4WzFdWzFdLCB5WzFdWzFdLCB6
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzbW9vdGhzdGVwKHhbMV1bMl0sIHlbMV1bMl0s
IHpbMV1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBzbW9vdGhzdGVwKGZs
b2F0Mng0IHgsIGZsb2F0Mng0IHksIGZsb2F0Mng0IHopIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gc21vb3Roc3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSBzbW9vdGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1b
MV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNtb290aHN0ZXAoeFswXVsyXSwgeVswXVsyXSwgelsw
XVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gc21vb3Roc3RlcCh4WzBdWzNdLCB5WzBdWzNdLCB6
WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzbW9vdGhzdGVwKHhbMV1bMF0sIHlbMV1bMF0s
IHpbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNtb290aHN0ZXAoeFsxXVsxXSwgeVsxXVsx
XSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc21vb3Roc3RlcCh4WzFdWzJdLCB5WzFd
WzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzbW9vdGhzdGVwKHhbMV1bM10sIHlb
MV1bM10sIHpbMV1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBzbW9vdGhz
dGVwKGZsb2F0M3gyIHgsIGZsb2F0M3gyIHksIGZsb2F0M3gyIHopIHsKKyAgICBmbG9hdDN4MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc21vb3Roc3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzbW9vdGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0s
IHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHNtb290aHN0ZXAoeFsxXVswXSwgeVsxXVsw
XSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc21vb3Roc3RlcCh4WzFdWzFdLCB5WzFd
WzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzbW9vdGhzdGVwKHhbMl1bMF0sIHlb
Ml1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHNtb290aHN0ZXAoeFsyXVsxXSwg
eVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIHNtb290
aHN0ZXAoZmxvYXQzeDMgeCwgZmxvYXQzeDMgeSwgZmxvYXQzeDMgeikgeworICAgIGZsb2F0M3gz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzbW9vdGhzdGVwKHhbMF1bMF0sIHlbMF1bMF0s
IHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNtb290aHN0ZXAoeFswXVsxXSwgeVswXVsx
XSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc21vb3Roc3RlcCh4WzBdWzJdLCB5WzBd
WzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzbW9vdGhzdGVwKHhbMV1bMF0sIHlb
MV1bMF0sIHpbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNtb290aHN0ZXAoeFsxXVsxXSwg
eVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc21vb3Roc3RlcCh4WzFdWzJd
LCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzbW9vdGhzdGVwKHhbMl1b
MF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHNtb290aHN0ZXAoeFsy
XVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc21vb3Roc3RlcCh4
WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
eDQgc21vb3Roc3RlcChmbG9hdDN4NCB4LCBmbG9hdDN4NCB5LCBmbG9hdDN4NCB6KSB7CisgICAg
ZmxvYXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNtb290aHN0ZXAoeFswXVswXSwg
eVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc21vb3Roc3RlcCh4WzBdWzFd
LCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzbW9vdGhzdGVwKHhbMF1b
Ml0sIHlbMF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHNtb290aHN0ZXAoeFsw
XVszXSwgeVswXVszXSwgelswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc21vb3Roc3RlcCh4
WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzbW9vdGhzdGVw
KHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNtb290aHN0
ZXAoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc21vb3Ro
c3RlcCh4WzFdWzNdLCB5WzFdWzNdLCB6WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzbW9v
dGhzdGVwKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IHNt
b290aHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0g
c21vb3Roc3RlcCh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10g
PSBzbW9vdGhzdGVwKHhbMl1bM10sIHlbMl1bM10sIHpbMl1bM10pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDR4MiBzbW9vdGhzdGVwKGZsb2F0NHgyIHgsIGZsb2F0NHgyIHksIGZsb2F0
NHgyIHopIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc21vb3Ro
c3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzbW9v
dGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IHNt
b290aHN0ZXAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
c21vb3Roc3RlcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0g
PSBzbW9vdGhzdGVwKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IHNtb290aHN0ZXAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmVzdWx0WzNd
WzBdID0gc21vb3Roc3RlcCh4WzNdWzBdLCB5WzNdWzBdLCB6WzNdWzBdKTsKKyAgICByZXN1bHRb
M11bMV0gPSBzbW9vdGhzdGVwKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDR4MyBzbW9vdGhzdGVwKGZsb2F0NHgzIHgsIGZsb2F0NHgzIHks
IGZsb2F0NHgzIHopIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
c21vb3Roc3RlcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBzbW9vdGhzdGVwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IHNtb290aHN0ZXAoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gc21vb3Roc3RlcCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBzbW9vdGhzdGVwKHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IHNtb290aHN0ZXAoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gc21vb3Roc3RlcCh4WzJdWzBdLCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBzbW9vdGhzdGVwKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOworICAg
IHJlc3VsdFsyXVsyXSA9IHNtb290aHN0ZXAoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7Cisg
ICAgcmVzdWx0WzNdWzBdID0gc21vb3Roc3RlcCh4WzNdWzBdLCB5WzNdWzBdLCB6WzNdWzBdKTsK
KyAgICByZXN1bHRbM11bMV0gPSBzbW9vdGhzdGVwKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0p
OworICAgIHJlc3VsdFszXVsyXSA9IHNtb290aHN0ZXAoeFszXVsyXSwgeVszXVsyXSwgelszXVsy
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IHNtb290aHN0ZXAoZmxvYXQ0eDQg
eCwgZmxvYXQ0eDQgeSwgZmxvYXQ0eDQgeikgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBzbW9vdGhzdGVwKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IHNtb290aHN0ZXAoeFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7Cisg
ICAgcmVzdWx0WzBdWzJdID0gc21vb3Roc3RlcCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSBzbW9vdGhzdGVwKHhbMF1bM10sIHlbMF1bM10sIHpbMF1bM10p
OworICAgIHJlc3VsdFsxXVswXSA9IHNtb290aHN0ZXAoeFsxXVswXSwgeVsxXVswXSwgelsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gc21vb3Roc3RlcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFd
WzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzbW9vdGhzdGVwKHhbMV1bMl0sIHlbMV1bMl0sIHpb
MV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHNtb290aHN0ZXAoeFsxXVszXSwgeVsxXVszXSwg
elsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc21vb3Roc3RlcCh4WzJdWzBdLCB5WzJdWzBd
LCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzbW9vdGhzdGVwKHhbMl1bMV0sIHlbMl1b
MV0sIHpbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHNtb290aHN0ZXAoeFsyXVsyXSwgeVsy
XVsyXSwgelsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gc21vb3Roc3RlcCh4WzJdWzNdLCB5
WzJdWzNdLCB6WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzbW9vdGhzdGVwKHhbM11bMF0s
IHlbM11bMF0sIHpbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IHNtb290aHN0ZXAoeFszXVsx
XSwgeVszXVsxXSwgelszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gc21vb3Roc3RlcCh4WzNd
WzJdLCB5WzNdWzJdLCB6WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBzbW9vdGhzdGVwKHhb
M11bM10sIHlbM11bM10sIHpbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIg
bGVycChmbG9hdDIgeCwgZmxvYXQyIHksIGZsb2F0MiB6KSB7CisgICAgZmxvYXQyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBsZXJwKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9
IGxlcnAoeFsxXSwgeVsxXSwgelsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBs
ZXJwKGZsb2F0MyB4LCBmbG9hdDMgeSwgZmxvYXQzIHopIHsKKyAgICBmbG9hdDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGxlcnAoeFswXSwgeVswXSwgelswXSk7CisgICAgcmVzdWx0WzFdID0g
bGVycCh4WzFdLCB5WzFdLCB6WzFdKTsKKyAgICByZXN1bHRbMl0gPSBsZXJwKHhbMl0sIHlbMl0s
IHpbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgbGVycChmbG9hdDQgeCwgZmxv
YXQ0IHksIGZsb2F0NCB6KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBs
ZXJwKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGxlcnAoeFsxXSwgeVsxXSwg
elsxXSk7CisgICAgcmVzdWx0WzJdID0gbGVycCh4WzJdLCB5WzJdLCB6WzJdKTsKKyAgICByZXN1
bHRbM10gPSBsZXJwKHhbM10sIHlbM10sIHpbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDJ4MiBsZXJwKGZsb2F0MngyIHgsIGZsb2F0MngyIHksIGZsb2F0MngyIHopIHsKKyAgICBm
bG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbGVycCh4WzBdWzBdLCB5WzBdWzBd
LCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsZXJwKHhbMF1bMV0sIHlbMF1bMV0sIHpb
MF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGxlcnAoeFsxXVswXSwgeVsxXVswXSwgelsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gbGVycCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgbGVycChmbG9hdDJ4MyB4LCBmbG9hdDJ4
MyB5LCBmbG9hdDJ4MyB6KSB7CisgICAgZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGxlcnAoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
bGVycCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsZXJw
KHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGxlcnAoeFsx
XVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbGVycCh4WzFdWzFd
LCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBsZXJwKHhbMV1bMl0sIHlb
MV1bMl0sIHpbMV1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBsZXJwKGZs
b2F0Mng0IHgsIGZsb2F0Mng0IHksIGZsb2F0Mng0IHopIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gbGVycCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBsZXJwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJl
c3VsdFswXVsyXSA9IGxlcnAoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0
WzBdWzNdID0gbGVycCh4WzBdWzNdLCB5WzBdWzNdLCB6WzBdWzNdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBsZXJwKHhbMV1bMF0sIHlbMV1bMF0sIHpbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IGxlcnAoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbGVy
cCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBsZXJwKHhb
MV1bM10sIHlbMV1bM10sIHpbMV1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4
MiBsZXJwKGZsb2F0M3gyIHgsIGZsb2F0M3gyIHksIGZsb2F0M3gyIHopIHsKKyAgICBmbG9hdDN4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbGVycCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsZXJwKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0p
OworICAgIHJlc3VsdFsxXVswXSA9IGxlcnAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gbGVycCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBsZXJwKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IGxlcnAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0M3gzIGxlcnAoZmxvYXQzeDMgeCwgZmxvYXQzeDMgeSwgZmxvYXQzeDMg
eikgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsZXJwKHhbMF1b
MF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxlcnAoeFswXVsxXSwg
eVswXVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbGVycCh4WzBdWzJdLCB5WzBd
WzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBsZXJwKHhbMV1bMF0sIHlbMV1bMF0s
IHpbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGxlcnAoeFsxXVsxXSwgeVsxXVsxXSwgelsx
XVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbGVycCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSBsZXJwKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOwor
ICAgIHJlc3VsdFsyXVsxXSA9IGxlcnAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7CisgICAg
cmVzdWx0WzJdWzJdID0gbGVycCh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzeDQgbGVycChmbG9hdDN4NCB4LCBmbG9hdDN4NCB5LCBmbG9h
dDN4NCB6KSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGxlcnAo
eFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbGVycCh4WzBd
WzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBsZXJwKHhbMF1bMl0s
IHlbMF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGxlcnAoeFswXVszXSwgeVsw
XVszXSwgelswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbGVycCh4WzFdWzBdLCB5WzFdWzBd
LCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsZXJwKHhbMV1bMV0sIHlbMV1bMV0sIHpb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxlcnAoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsy
XSk7CisgICAgcmVzdWx0WzFdWzNdID0gbGVycCh4WzFdWzNdLCB5WzFdWzNdLCB6WzFdWzNdKTsK
KyAgICByZXN1bHRbMl1bMF0gPSBsZXJwKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IGxlcnAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmVz
dWx0WzJdWzJdID0gbGVycCh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXN1bHRb
Ml1bM10gPSBsZXJwKHhbMl1bM10sIHlbMl1bM10sIHpbMl1bM10pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDR4MiBsZXJwKGZsb2F0NHgyIHgsIGZsb2F0NHgyIHksIGZsb2F0NHgyIHop
IHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbGVycCh4WzBdWzBd
LCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsZXJwKHhbMF1bMV0sIHlb
MF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGxlcnAoeFsxXVswXSwgeVsxXVsw
XSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbGVycCh4WzFdWzFdLCB5WzFdWzFdLCB6
WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBsZXJwKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1b
MF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGxlcnAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7
CisgICAgcmVzdWx0WzNdWzBdID0gbGVycCh4WzNdWzBdLCB5WzNdWzBdLCB6WzNdWzBdKTsKKyAg
ICByZXN1bHRbM11bMV0gPSBsZXJwKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MyBsZXJwKGZsb2F0NHgzIHgsIGZsb2F0NHgzIHksIGZs
b2F0NHgzIHopIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbGVy
cCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBsZXJwKHhb
MF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGxlcnAoeFswXVsy
XSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbGVycCh4WzFdWzBdLCB5
WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBsZXJwKHhbMV1bMV0sIHlbMV1b
MV0sIHpbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGxlcnAoeFsxXVsyXSwgeVsxXVsyXSwg
elsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbGVycCh4WzJdWzBdLCB5WzJdWzBdLCB6WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBsZXJwKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IGxlcnAoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7Cisg
ICAgcmVzdWx0WzNdWzBdID0gbGVycCh4WzNdWzBdLCB5WzNdWzBdLCB6WzNdWzBdKTsKKyAgICBy
ZXN1bHRbM11bMV0gPSBsZXJwKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJlc3Vs
dFszXVsyXSA9IGxlcnAoeFszXVsyXSwgeVszXVsyXSwgelszXVsyXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NHg0IGxlcnAoZmxvYXQ0eDQgeCwgZmxvYXQ0eDQgeSwgZmxvYXQ0eDQg
eikgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBsZXJwKHhbMF1b
MF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGxlcnAoeFswXVsxXSwg
eVswXVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbGVycCh4WzBdWzJdLCB5WzBd
WzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBsZXJwKHhbMF1bM10sIHlbMF1bM10s
IHpbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGxlcnAoeFsxXVswXSwgeVsxXVswXSwgelsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbGVycCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSBsZXJwKHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0pOwor
ICAgIHJlc3VsdFsxXVszXSA9IGxlcnAoeFsxXVszXSwgeVsxXVszXSwgelsxXVszXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gbGVycCh4WzJdWzBdLCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBsZXJwKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOworICAgIHJlc3VsdFsy
XVsyXSA9IGxlcnAoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNd
ID0gbGVycCh4WzJdWzNdLCB5WzJdWzNdLCB6WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBs
ZXJwKHhbM11bMF0sIHlbM11bMF0sIHpbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGxlcnAo
eFszXVsxXSwgeVszXVsxXSwgelszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gbGVycCh4WzNd
WzJdLCB5WzNdWzJdLCB6WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBsZXJwKHhbM11bM10s
IHlbM11bM10sIHpbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgZm1hKGZs
b2F0MiB4LCBmbG9hdDIgeSwgZmxvYXQyIHopIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGZtYSh4WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmbWEoeFsx
XSwgeVsxXSwgelsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBmbWEoZmxvYXQz
IHgsIGZsb2F0MyB5LCBmbG9hdDMgeikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gZm1hKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGZtYSh4WzFdLCB5
WzFdLCB6WzFdKTsKKyAgICByZXN1bHRbMl0gPSBmbWEoeFsyXSwgeVsyXSwgelsyXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBmbWEoZmxvYXQ0IHgsIGZsb2F0NCB5LCBmbG9hdDQg
eikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZm1hKHhbMF0sIHlbMF0s
IHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGZtYSh4WzFdLCB5WzFdLCB6WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBmbWEoeFsyXSwgeVsyXSwgelsyXSk7CisgICAgcmVzdWx0WzNdID0gZm1hKHhbM10s
IHlbM10sIHpbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBmbWEoZmxvYXQy
eDIgeCwgZmxvYXQyeDIgeSwgZmxvYXQyeDIgeikgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBmbWEoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gZm1hKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsx
XVswXSA9IGZtYSh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBmbWEoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MngzIGZtYShmbG9hdDJ4MyB4LCBmbG9hdDJ4MyB5LCBmbG9hdDJ4MyB6KSB7CisgICAg
ZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZtYSh4WzBdWzBdLCB5WzBdWzBd
LCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbWEoeFswXVsxXSwgeVswXVsxXSwgelsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZm1hKHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1bMl0p
OworICAgIHJlc3VsdFsxXVswXSA9IGZtYSh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBmbWEoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gZm1hKHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDJ4NCBmbWEoZmxvYXQyeDQgeCwgZmxvYXQyeDQgeSwgZmxvYXQyeDQg
eikgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbWEoeFswXVsw
XSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZm1hKHhbMF1bMV0sIHlb
MF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGZtYSh4WzBdWzJdLCB5WzBdWzJd
LCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBmbWEoeFswXVszXSwgeVswXVszXSwgelsw
XVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZm1hKHhbMV1bMF0sIHlbMV1bMF0sIHpbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IGZtYSh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBmbWEoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7CisgICAgcmVz
dWx0WzFdWzNdID0gZm1hKHhbMV1bM10sIHlbMV1bM10sIHpbMV1bM10pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDN4MiBmbWEoZmxvYXQzeDIgeCwgZmxvYXQzeDIgeSwgZmxvYXQzeDIg
eikgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbWEoeFswXVsw
XSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZm1hKHhbMF1bMV0sIHlb
MF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGZtYSh4WzFdWzBdLCB5WzFdWzBd
LCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbWEoeFsxXVsxXSwgeVsxXVsxXSwgelsx
XVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZm1hKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IGZtYSh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgZm1hKGZsb2F0M3gzIHgsIGZsb2F0M3gzIHks
IGZsb2F0M3gzIHopIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
Zm1hKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGZtYSh4
WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBmbWEoeFswXVsy
XSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gZm1hKHhbMV1bMF0sIHlb
MV1bMF0sIHpbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGZtYSh4WzFdWzFdLCB5WzFdWzFd
LCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBmbWEoeFsxXVsyXSwgeVsxXVsyXSwgelsx
XVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gZm1hKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IGZtYSh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMl0gPSBmbWEoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IGZtYShmbG9hdDN4NCB4LCBmbG9hdDN4NCB5LCBmbG9h
dDN4NCB6KSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGZtYSh4
WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBmbWEoeFswXVsx
XSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gZm1hKHhbMF1bMl0sIHlb
MF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGZtYSh4WzBdWzNdLCB5WzBdWzNd
LCB6WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBmbWEoeFsxXVswXSwgeVsxXVswXSwgelsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gZm1hKHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IGZtYSh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAg
ICByZXN1bHRbMV1bM10gPSBmbWEoeFsxXVszXSwgeVsxXVszXSwgelsxXVszXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gZm1hKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsy
XVsxXSA9IGZtYSh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0g
PSBmbWEoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gZm1h
KHhbMl1bM10sIHlbMl1bM10sIHpbMl1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDR4MiBmbWEoZmxvYXQ0eDIgeCwgZmxvYXQ0eDIgeSwgZmxvYXQ0eDIgeikgeworICAgIGZsb2F0
NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbWEoeFswXVswXSwgeVswXVswXSwgelsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZm1hKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0p
OworICAgIHJlc3VsdFsxXVswXSA9IGZtYSh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBmbWEoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVz
dWx0WzJdWzBdID0gZm1hKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsy
XVsxXSA9IGZtYSh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0g
PSBmbWEoeFszXVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZm1h
KHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDR4MyBmbWEoZmxvYXQ0eDMgeCwgZmxvYXQ0eDMgeSwgZmxvYXQ0eDMgeikgeworICAgIGZsb2F0
NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBmbWEoeFswXVswXSwgeVswXVswXSwgelsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gZm1hKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0p
OworICAgIHJlc3VsdFswXVsyXSA9IGZtYSh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBmbWEoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gZm1hKHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3VsdFsx
XVsyXSA9IGZtYSh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0g
PSBmbWEoeFsyXVswXSwgeVsyXVswXSwgelsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gZm1h
KHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGZtYSh4WzJd
WzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBmbWEoeFszXVswXSwg
eVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gZm1hKHhbM11bMV0sIHlbM11b
MV0sIHpbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGZtYSh4WzNdWzJdLCB5WzNdWzJdLCB6
WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgZm1hKGZsb2F0NHg0IHgs
IGZsb2F0NHg0IHksIGZsb2F0NHg0IHopIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gZm1hKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGZtYSh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBmbWEoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gZm1h
KHhbMF1bM10sIHlbMF1bM10sIHpbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGZtYSh4WzFd
WzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBmbWEoeFsxXVsxXSwg
eVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gZm1hKHhbMV1bMl0sIHlbMV1b
Ml0sIHpbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGZtYSh4WzFdWzNdLCB5WzFdWzNdLCB6
WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBmbWEoeFsyXVswXSwgeVsyXVswXSwgelsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gZm1hKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOwor
ICAgIHJlc3VsdFsyXVsyXSA9IGZtYSh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICBy
ZXN1bHRbMl1bM10gPSBmbWEoeFsyXVszXSwgeVsyXVszXSwgelsyXVszXSk7CisgICAgcmVzdWx0
WzNdWzBdID0gZm1hKHhbM11bMF0sIHlbM11bMF0sIHpbM11bMF0pOworICAgIHJlc3VsdFszXVsx
XSA9IGZtYSh4WzNdWzFdLCB5WzNdWzFdLCB6WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBm
bWEoeFszXVsyXSwgeVszXVsyXSwgelszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gZm1hKHhb
M11bM10sIHlbM11bM10sIHpbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIg
bWFkKGZsb2F0MiB4LCBmbG9hdDIgeSwgZmxvYXQyIHopIHsKKyAgICBmbG9hdDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IG1hZCh4WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBt
YWQoeFsxXSwgeVsxXSwgelsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBtYWQo
ZmxvYXQzIHgsIGZsb2F0MyB5LCBmbG9hdDMgeikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gbWFkKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IG1hZCh4
WzFdLCB5WzFdLCB6WzFdKTsKKyAgICByZXN1bHRbMl0gPSBtYWQoeFsyXSwgeVsyXSwgelsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBtYWQoZmxvYXQ0IHgsIGZsb2F0NCB5LCBm
bG9hdDQgeikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbWFkKHhbMF0s
IHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IG1hZCh4WzFdLCB5WzFdLCB6WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSBtYWQoeFsyXSwgeVsyXSwgelsyXSk7CisgICAgcmVzdWx0WzNdID0gbWFk
KHhbM10sIHlbM10sIHpbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBtYWQo
ZmxvYXQyeDIgeCwgZmxvYXQyeDIgeSwgZmxvYXQyeDIgeikgeworICAgIGZsb2F0MngyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYWQoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gbWFkKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJl
c3VsdFsxXVswXSA9IG1hZCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBtYWQoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngzIG1hZChmbG9hdDJ4MyB4LCBmbG9hdDJ4MyB5LCBmbG9hdDJ4MyB6KSB7
CisgICAgZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IG1hZCh4WzBdWzBdLCB5
WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBtYWQoeFswXVsxXSwgeVswXVsx
XSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbWFkKHhbMF1bMl0sIHlbMF1bMl0sIHpb
MF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IG1hZCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYWQoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gbWFkKHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBtYWQoZmxvYXQyeDQgeCwgZmxvYXQyeDQgeSwgZmxv
YXQyeDQgeikgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYWQo
eFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWFkKHhbMF1b
MV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IG1hZCh4WzBdWzJdLCB5
WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBtYWQoeFswXVszXSwgeVswXVsz
XSwgelswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbWFkKHhbMV1bMF0sIHlbMV1bMF0sIHpb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IG1hZCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSBtYWQoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzNdID0gbWFkKHhbMV1bM10sIHlbMV1bM10sIHpbMV1bM10pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBtYWQoZmxvYXQzeDIgeCwgZmxvYXQzeDIgeSwgZmxv
YXQzeDIgeikgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYWQo
eFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWFkKHhbMF1b
MV0sIHlbMF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IG1hZCh4WzFdWzBdLCB5
WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYWQoeFsxXVsxXSwgeVsxXVsx
XSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWFkKHhbMl1bMF0sIHlbMl1bMF0sIHpb
Ml1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IG1hZCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgbWFkKGZsb2F0M3gzIHgsIGZsb2F0
M3gzIHksIGZsb2F0M3gzIHopIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gbWFkKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IG1hZCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtYWQo
eFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbWFkKHhbMV1b
MF0sIHlbMV1bMF0sIHpbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IG1hZCh4WzFdWzFdLCB5
WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtYWQoeFsxXVsyXSwgeVsxXVsy
XSwgelsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWFkKHhbMl1bMF0sIHlbMl1bMF0sIHpb
Ml1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IG1hZCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFd
KTsKKyAgICByZXN1bHRbMl1bMl0gPSBtYWQoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IG1hZChmbG9hdDN4NCB4LCBmbG9hdDN4NCB5
LCBmbG9hdDN4NCB6KSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IG1hZCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBtYWQo
eFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbWFkKHhbMF1b
Ml0sIHlbMF1bMl0sIHpbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IG1hZCh4WzBdWzNdLCB5
WzBdWzNdLCB6WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtYWQoeFsxXVswXSwgeVsxXVsw
XSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbWFkKHhbMV1bMV0sIHlbMV1bMV0sIHpb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IG1hZCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJd
KTsKKyAgICByZXN1bHRbMV1bM10gPSBtYWQoeFsxXVszXSwgeVsxXVszXSwgelsxXVszXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gbWFkKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJl
c3VsdFsyXVsxXSA9IG1hZCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBtYWQoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNd
ID0gbWFkKHhbMl1bM10sIHlbMl1bM10sIHpbMl1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDR4MiBtYWQoZmxvYXQ0eDIgeCwgZmxvYXQ0eDIgeSwgZmxvYXQ0eDIgeikgeworICAg
IGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYWQoeFswXVswXSwgeVswXVsw
XSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWFkKHhbMF1bMV0sIHlbMF1bMV0sIHpb
MF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IG1hZCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYWQoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gbWFkKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJl
c3VsdFsyXVsxXSA9IG1hZCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1bHRb
M11bMF0gPSBtYWQoeFszXVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0WzNdWzFd
ID0gbWFkKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDR4MyBtYWQoZmxvYXQ0eDMgeCwgZmxvYXQ0eDMgeSwgZmxvYXQ0eDMgeikgeworICAg
IGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYWQoeFswXVswXSwgeVswXVsw
XSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWFkKHhbMF1bMV0sIHlbMF1bMV0sIHpb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IG1hZCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBtYWQoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gbWFkKHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJl
c3VsdFsxXVsyXSA9IG1hZCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBtYWQoeFsyXVswXSwgeVsyXVswXSwgelsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gbWFkKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IG1h
ZCh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBtYWQoeFsz
XVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbWFkKHhbM11bMV0s
IHlbM11bMV0sIHpbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IG1hZCh4WzNdWzJdLCB5WzNd
WzJdLCB6WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgbWFkKGZsb2F0
NHg0IHgsIGZsb2F0NHg0IHksIGZsb2F0NHg0IHopIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gbWFkKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IG1hZCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSBtYWQoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNd
ID0gbWFkKHhbMF1bM10sIHlbMF1bM10sIHpbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IG1h
ZCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYWQoeFsx
XVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbWFkKHhbMV1bMl0s
IHlbMV1bMl0sIHpbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IG1hZCh4WzFdWzNdLCB5WzFd
WzNdLCB6WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtYWQoeFsyXVswXSwgeVsyXVswXSwg
elsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbWFkKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1b
MV0pOworICAgIHJlc3VsdFsyXVsyXSA9IG1hZCh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsK
KyAgICByZXN1bHRbMl1bM10gPSBtYWQoeFsyXVszXSwgeVsyXVszXSwgelsyXVszXSk7CisgICAg
cmVzdWx0WzNdWzBdID0gbWFkKHhbM11bMF0sIHlbM11bMF0sIHpbM11bMF0pOworICAgIHJlc3Vs
dFszXVsxXSA9IG1hZCh4WzNdWzFdLCB5WzNdWzFdLCB6WzNdWzFdKTsKKyAgICByZXN1bHRbM11b
Ml0gPSBtYWQoeFszXVsyXSwgeVszXVsyXSwgelszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0g
bWFkKHhbM11bM10sIHlbM11bM10sIHpbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisK
K25hdGl2ZSBib29sIGlzbm9ybWFsKGhhbGYpOworbmF0aXZlIGJvb2wgaXNub3JtYWwoZmxvYXQp
OworYm9vbDIgaXNub3JtYWwoaGFsZjIgeCkgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBpc25vcm1hbCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBpc25vcm1hbCh4WzFdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgaXNub3JtYWwoaGFsZjMgeCkgeworICAgIGJv
b2wzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBpc25vcm1hbCh4WzBdKTsKKyAgICByZXN1bHRb
MV0gPSBpc25vcm1hbCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBpc25vcm1hbCh4WzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgaXNub3JtYWwoaGFsZjQgeCkgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBpc25vcm1hbCh4WzBdKTsKKyAgICByZXN1bHRbMV0g
PSBpc25vcm1hbCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBpc25vcm1hbCh4WzJdKTsKKyAgICBy
ZXN1bHRbM10gPSBpc25vcm1hbCh4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitib29s
MiBpc25vcm1hbChmbG9hdDIgeCkgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBpc25vcm1hbCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBpc25vcm1hbCh4WzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDMgaXNub3JtYWwoZmxvYXQzIHgpIHsKKyAgICBib29sMyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gaXNub3JtYWwoeFswXSk7CisgICAgcmVzdWx0WzFdID0g
aXNub3JtYWwoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gaXNub3JtYWwoeFsyXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IGlzbm9ybWFsKGZsb2F0NCB4KSB7CisgICAgYm9vbDQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGlzbm9ybWFsKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGlz
bm9ybWFsKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGlzbm9ybWFsKHhbMl0pOworICAgIHJlc3Vs
dFszXSA9IGlzbm9ybWFsKHhbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK25hdGl2ZSBi
b29sIGlzZmluaXRlKGZsb2F0KTsKK2Jvb2wgaXNmaW5pdGUoaGFsZiB4KSB7CisgICAgcmV0dXJu
IGlzZmluaXRlKGZsb2F0KHgpKTsKK30KK25hdGl2ZSBib29sIGlzaW5mKGZsb2F0KTsKK2Jvb2wg
aXNpbmYoaGFsZiB4KSB7CisgICAgcmV0dXJuIGlzaW5mKGZsb2F0KHgpKTsKK30KK25hdGl2ZSBi
b29sIGlzbmFuKGZsb2F0KTsKK2Jvb2wgaXNuYW4oaGFsZiB4KSB7CisgICAgcmV0dXJuIGlzbmFu
KGZsb2F0KHgpKTsKK30KK2Jvb2wyIGlzZmluaXRlKGhhbGYyIHgpIHsKKyAgICBib29sMiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gaXNmaW5pdGUoeFswXSk7CisgICAgcmVzdWx0WzFdID0gaXNm
aW5pdGUoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIGlzZmluaXRlKGhhbGYz
IHgpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gaXNmaW5pdGUoeFswXSk7
CisgICAgcmVzdWx0WzFdID0gaXNmaW5pdGUoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gaXNmaW5p
dGUoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IGlzZmluaXRlKGhhbGY0IHgp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gaXNmaW5pdGUoeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gaXNmaW5pdGUoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gaXNmaW5pdGUo
eFsyXSk7CisgICAgcmVzdWx0WzNdID0gaXNmaW5pdGUoeFszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2wyIGlzaW5mKGhhbGYyIHgpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gaXNpbmYoeFswXSk7CisgICAgcmVzdWx0WzFdID0gaXNpbmYoeFsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIGlzaW5mKGhhbGYzIHgpIHsKKyAgICBib29sMyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gaXNpbmYoeFswXSk7CisgICAgcmVzdWx0WzFdID0gaXNpbmYo
eFsxXSk7CisgICAgcmVzdWx0WzJdID0gaXNpbmYoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IGlzaW5mKGhhbGY0IHgpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gaXNpbmYoeFswXSk7CisgICAgcmVzdWx0WzFdID0gaXNpbmYoeFsxXSk7CisgICAgcmVz
dWx0WzJdID0gaXNpbmYoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gaXNpbmYoeFszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wyIGlzbmFuKGhhbGYyIHgpIHsKKyAgICBib29sMiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gaXNuYW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0gaXNuYW4o
eFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIGlzbmFuKGhhbGYzIHgpIHsKKyAg
ICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gaXNuYW4oeFswXSk7CisgICAgcmVzdWx0
WzFdID0gaXNuYW4oeFsxXSk7CisgICAgcmVzdWx0WzJdID0gaXNuYW4oeFsyXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IGlzbmFuKGhhbGY0IHgpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gaXNuYW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0gaXNuYW4oeFsx
XSk7CisgICAgcmVzdWx0WzJdID0gaXNuYW4oeFsyXSk7CisgICAgcmVzdWx0WzNdID0gaXNuYW4o
eFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworYm9vbDIgaXNmaW5pdGUoZmxvYXQyIHgp
IHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gaXNmaW5pdGUoeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gaXNmaW5pdGUoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2wzIGlzZmluaXRlKGZsb2F0MyB4KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGlzZmluaXRlKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGlzZmluaXRlKHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IGlzZmluaXRlKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBpc2Zpbml0ZShmbG9hdDQgeCkgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBpc2Zpbml0ZSh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBpc2Zpbml0ZSh4WzFdKTsKKyAgICBy
ZXN1bHRbMl0gPSBpc2Zpbml0ZSh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBpc2Zpbml0ZSh4WzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgaXNpbmYoZmxvYXQyIHgpIHsKKyAgICBi
b29sMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gaXNpbmYoeFswXSk7CisgICAgcmVzdWx0WzFd
ID0gaXNpbmYoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIGlzaW5mKGZsb2F0
MyB4KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGlzaW5mKHhbMF0pOwor
ICAgIHJlc3VsdFsxXSA9IGlzaW5mKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGlzaW5mKHhbMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBpc2luZihmbG9hdDQgeCkgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBpc2luZih4WzBdKTsKKyAgICByZXN1bHRbMV0g
PSBpc2luZih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBpc2luZih4WzJdKTsKKyAgICByZXN1bHRb
M10gPSBpc2luZih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgaXNuYW4oZmxv
YXQyIHgpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gaXNuYW4oeFswXSk7
CisgICAgcmVzdWx0WzFdID0gaXNuYW4oeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2wzIGlzbmFuKGZsb2F0MyB4KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGlzbmFuKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGlzbmFuKHhbMV0pOworICAgIHJlc3VsdFsy
XSA9IGlzbmFuKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBpc25hbihmbG9h
dDQgeCkgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBpc25hbih4WzBdKTsK
KyAgICByZXN1bHRbMV0gPSBpc25hbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBpc25hbih4WzJd
KTsKKyAgICByZXN1bHRbM10gPSBpc25hbih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Citib29sIGlzb3JkZXJlZChoYWxmIHgsIGhhbGYgeSkgeworICAgIHJldHVybiAoeCA9PSB4KSAm
JiAoeSA9PSB5KTsKK30KK2Jvb2wgaXN1bm9yZGVyZWQoaGFsZiB4LCBoYWxmIHkpIHsKKyAgICBy
ZXR1cm4gaXNuYW4oeCkgfHwgaXNuYW4oeSk7Cit9Citib29sMiBpc29yZGVyZWQoaGFsZjIgeCwg
aGFsZjIgeSkgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBpc29yZGVyZWQo
eFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gaXNvcmRlcmVkKHhbMV0sIHlbMV0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sMyBpc29yZGVyZWQoaGFsZjMgeCwgaGFsZjMgeSkgewor
ICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBpc29yZGVyZWQoeFswXSwgeVswXSk7
CisgICAgcmVzdWx0WzFdID0gaXNvcmRlcmVkKHhbMV0sIHlbMV0pOworICAgIHJlc3VsdFsyXSA9
IGlzb3JkZXJlZCh4WzJdLCB5WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgaXNv
cmRlcmVkKGhhbGY0IHgsIGhhbGY0IHkpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gaXNvcmRlcmVkKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IGlzb3JkZXJlZCh4
WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBpc29yZGVyZWQoeFsyXSwgeVsyXSk7CisgICAg
cmVzdWx0WzNdID0gaXNvcmRlcmVkKHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sMiBpc3Vub3JkZXJlZChoYWxmMiB4LCBoYWxmMiB5KSB7CisgICAgYm9vbDIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGlzdW5vcmRlcmVkKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsx
XSA9IGlzdW5vcmRlcmVkKHhbMV0sIHlbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
MyBpc3Vub3JkZXJlZChoYWxmMyB4LCBoYWxmMyB5KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGlzdW5vcmRlcmVkKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IGlz
dW5vcmRlcmVkKHhbMV0sIHlbMV0pOworICAgIHJlc3VsdFsyXSA9IGlzdW5vcmRlcmVkKHhbMl0s
IHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBpc3Vub3JkZXJlZChoYWxmNCB4
LCBoYWxmNCB5KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGlzdW5vcmRl
cmVkKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IGlzdW5vcmRlcmVkKHhbMV0sIHlbMV0p
OworICAgIHJlc3VsdFsyXSA9IGlzdW5vcmRlcmVkKHhbMl0sIHlbMl0pOworICAgIHJlc3VsdFsz
XSA9IGlzdW5vcmRlcmVkKHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2Jv
b2wgaXNvcmRlcmVkKGZsb2F0IHgsIGZsb2F0IHkpIHsKKyAgICByZXR1cm4gKHggPT0geCkgJiYg
KHkgPT0geSk7Cit9Citib29sIGlzdW5vcmRlcmVkKGZsb2F0IHgsIGZsb2F0IHkpIHsKKyAgICBy
ZXR1cm4gaXNuYW4oeCkgfHwgaXNuYW4oeSk7Cit9Citib29sMiBpc29yZGVyZWQoZmxvYXQyIHgs
IGZsb2F0MiB5KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGlzb3JkZXJl
ZCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBpc29yZGVyZWQoeFsxXSwgeVsxXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIGlzb3JkZXJlZChmbG9hdDMgeCwgZmxvYXQzIHkp
IHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gaXNvcmRlcmVkKHhbMF0sIHlb
MF0pOworICAgIHJlc3VsdFsxXSA9IGlzb3JkZXJlZCh4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRb
Ml0gPSBpc29yZGVyZWQoeFsyXSwgeVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IGlzb3JkZXJlZChmbG9hdDQgeCwgZmxvYXQ0IHkpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gaXNvcmRlcmVkKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IGlzb3Jk
ZXJlZCh4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBpc29yZGVyZWQoeFsyXSwgeVsyXSk7
CisgICAgcmVzdWx0WzNdID0gaXNvcmRlcmVkKHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sMiBpc3Vub3JkZXJlZChmbG9hdDIgeCwgZmxvYXQyIHkpIHsKKyAgICBib29s
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gaXN1bm9yZGVyZWQoeFswXSwgeVswXSk7CisgICAg
cmVzdWx0WzFdID0gaXN1bm9yZGVyZWQoeFsxXSwgeVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2wzIGlzdW5vcmRlcmVkKGZsb2F0MyB4LCBmbG9hdDMgeSkgeworICAgIGJvb2wzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBpc3Vub3JkZXJlZCh4WzBdLCB5WzBdKTsKKyAgICByZXN1
bHRbMV0gPSBpc3Vub3JkZXJlZCh4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBpc3Vub3Jk
ZXJlZCh4WzJdLCB5WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgaXN1bm9yZGVy
ZWQoZmxvYXQ0IHgsIGZsb2F0NCB5KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGlzdW5vcmRlcmVkKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IGlzdW5vcmRlcmVk
KHhbMV0sIHlbMV0pOworICAgIHJlc3VsdFsyXSA9IGlzdW5vcmRlcmVkKHhbMl0sIHlbMl0pOwor
ICAgIHJlc3VsdFszXSA9IGlzdW5vcmRlcmVkKHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CisKK25hdGl2ZSBmbG9hdCBhdGFuMihmbG9hdCwgZmxvYXQpOworaGFsZiBhdGFuMiho
YWxmIHgsIGhhbGYgeSkgeworICAgIHJldHVybiBoYWxmKGF0YW4yKGZsb2F0KHgpLCBmbG9hdCh5
KSkpOworfQoraGFsZjIgYXRhbjIoaGFsZjIgeCwgaGFsZjIgeSkgeworICAgIGhhbGYyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhdGFuMih4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBh
dGFuMih4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgYXRhbjIoaGFs
ZjMgeCwgaGFsZjMgeSkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhdGFu
Mih4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhdGFuMih4WzFdLCB5WzFdKTsKKyAgICBy
ZXN1bHRbMl0gPSBhdGFuMih4WzJdLCB5WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgYXRhbjIoaGFsZjQgeCwgaGFsZjQgeSkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhdGFuMih4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhdGFuMih4WzFdLCB5
WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhdGFuMih4WzJdLCB5WzJdKTsKKyAgICByZXN1bHRbM10g
PSBhdGFuMih4WzNdLCB5WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBhdGFu
MihoYWxmMngyIHgsIGhhbGYyeDIgeSkgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGF0YW4yKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGF0
YW4yKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGF0YW4yKHhbMV1bMF0s
IHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4yKHhbMV1bMV0sIHlbMV1bMV0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIGF0YW4yKGhhbGYyeDMgeCwgaGFsZjJ4MyB5
KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYXRhbjIoeFswXVsw
XSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYXRhbjIoeFswXVsxXSwgeVswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gYXRhbjIoeFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gYXRhbjIoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYXRh
bjIoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gYXRhbjIoeFsxXVsyXSwg
eVsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgYXRhbjIoaGFsZjJ4NCB4
LCBoYWxmMng0IHkpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBh
dGFuMih4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuMih4WzBdWzFd
LCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuMih4WzBdWzJdLCB5WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSBhdGFuMih4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBhdGFuMih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFu
Mih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuMih4WzFdWzJdLCB5
WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhdGFuMih4WzFdWzNdLCB5WzFdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBhdGFuMihoYWxmM3gyIHgsIGhhbGYzeDIgeSkg
eworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4yKHhbMF1bMF0s
IHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGF0YW4yKHhbMF1bMV0sIHlbMF1bMV0pOwor
ICAgIHJlc3VsdFsxXVswXSA9IGF0YW4yKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IGF0YW4yKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGF0YW4y
KHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGF0YW4yKHhbMl1bMV0sIHlb
Ml1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIGF0YW4yKGhhbGYzeDMgeCwg
aGFsZjN4MyB5KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYXRh
bjIoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYXRhbjIoeFswXVsxXSwg
eVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYXRhbjIoeFswXVsyXSwgeVswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gYXRhbjIoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gYXRhbjIoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gYXRhbjIo
eFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gYXRhbjIoeFsyXVswXSwgeVsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXRhbjIoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAg
cmVzdWx0WzJdWzJdID0gYXRhbjIoeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYzeDQgYXRhbjIoaGFsZjN4NCB4LCBoYWxmM3g0IHkpIHsKKyAgICBoYWxmM3g0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuMih4WzBdWzBdLCB5WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBhdGFuMih4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1b
Ml0gPSBhdGFuMih4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBhdGFuMih4
WzBdWzNdLCB5WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuMih4WzFdWzBdLCB5WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuMih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBhdGFuMih4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10g
PSBhdGFuMih4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhdGFuMih4WzJd
WzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFuMih4WzJdWzFdLCB5WzJdWzFd
KTsKKyAgICByZXN1bHRbMl1bMl0gPSBhdGFuMih4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1
bHRbMl1bM10gPSBhdGFuMih4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjR4MiBhdGFuMihoYWxmNHgyIHgsIGhhbGY0eDIgeSkgeworICAgIGhhbGY0eDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4yKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IGF0YW4yKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9
IGF0YW4yKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4yKHhbMV1b
MV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGF0YW4yKHhbMl1bMF0sIHlbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IGF0YW4yKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3Vs
dFszXVswXSA9IGF0YW4yKHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGF0
YW4yKHhbM11bMV0sIHlbM11bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIGF0
YW4yKGhhbGY0eDMgeCwgaGFsZjR4MyB5KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gYXRhbjIoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
YXRhbjIoeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYXRhbjIoeFswXVsy
XSwgeVswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXRhbjIoeFsxXVswXSwgeVsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gYXRhbjIoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gYXRhbjIoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gYXRh
bjIoeFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXRhbjIoeFsyXVsxXSwg
eVsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gYXRhbjIoeFsyXVsyXSwgeVsyXVsyXSk7Cisg
ICAgcmVzdWx0WzNdWzBdID0gYXRhbjIoeFszXVswXSwgeVszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gYXRhbjIoeFszXVsxXSwgeVszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gYXRhbjIo
eFszXVsyXSwgeVszXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgYXRhbjIo
aGFsZjR4NCB4LCBoYWxmNHg0IHkpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBhdGFuMih4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFu
Mih4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuMih4WzBdWzJdLCB5
WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBhdGFuMih4WzBdWzNdLCB5WzBdWzNdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBhdGFuMih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBhdGFuMih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuMih4
WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhdGFuMih4WzFdWzNdLCB5WzFd
WzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhdGFuMih4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBhdGFuMih4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0g
PSBhdGFuMih4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBhdGFuMih4WzJd
WzNdLCB5WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhdGFuMih4WzNdWzBdLCB5WzNdWzBd
KTsKKyAgICByZXN1bHRbM11bMV0gPSBhdGFuMih4WzNdWzFdLCB5WzNdWzFdKTsKKyAgICByZXN1
bHRbM11bMl0gPSBhdGFuMih4WzNdWzJdLCB5WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBh
dGFuMih4WzNdWzNdLCB5WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIGF0
YW4yKGZsb2F0MiB4LCBmbG9hdDIgeSkgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYXRhbjIoeFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gYXRhbjIoeFsxXSwgeVsx
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBhdGFuMihmbG9hdDMgeCwgZmxvYXQz
IHkpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGF0YW4yKHhbMF0sIHlb
MF0pOworICAgIHJlc3VsdFsxXSA9IGF0YW4yKHhbMV0sIHlbMV0pOworICAgIHJlc3VsdFsyXSA9
IGF0YW4yKHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgYXRhbjIo
ZmxvYXQ0IHgsIGZsb2F0NCB5KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhdGFuMih4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhdGFuMih4WzFdLCB5WzFdKTsK
KyAgICByZXN1bHRbMl0gPSBhdGFuMih4WzJdLCB5WzJdKTsKKyAgICByZXN1bHRbM10gPSBhdGFu
Mih4WzNdLCB5WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDIgYXRhbjIoZmxv
YXQyeDIgeCwgZmxvYXQyeDIgeSkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBhdGFuMih4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFu
Mih4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuMih4WzFdWzBdLCB5
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuMih4WzFdWzFdLCB5WzFdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgYXRhbjIoZmxvYXQyeDMgeCwgZmxvYXQyeDMg
eSkgeworICAgIGZsb2F0MngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuMih4WzBd
WzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuMih4WzBdWzFdLCB5WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuMih4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBhdGFuMih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBh
dGFuMih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuMih4WzFdWzJd
LCB5WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDQgYXRhbjIoZmxvYXQy
eDQgeCwgZmxvYXQyeDQgeSkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBhdGFuMih4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuMih4
WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuMih4WzBdWzJdLCB5WzBd
WzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBhdGFuMih4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBhdGFuMih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBhdGFuMih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuMih4WzFd
WzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhdGFuMih4WzFdWzNdLCB5WzFdWzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDIgYXRhbjIoZmxvYXQzeDIgeCwgZmxv
YXQzeDIgeSkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFu
Mih4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuMih4WzBdWzFdLCB5
WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuMih4WzFdWzBdLCB5WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhdGFuMih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMl1b
MF0gPSBhdGFuMih4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFuMih4
WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgYXRhbjIo
ZmxvYXQzeDMgeCwgZmxvYXQzeDMgeSkgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhdGFuMih4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBh
dGFuMih4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuMih4WzBdWzJd
LCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuMih4WzFdWzBdLCB5WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBhdGFuMih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRb
MV1bMl0gPSBhdGFuMih4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhdGFu
Mih4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFuMih4WzJdWzFdLCB5
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhdGFuMih4WzJdWzJdLCB5WzJdWzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgYXRhbjIoZmxvYXQzeDQgeCwgZmxvYXQzeDQg
eSkgeworICAgIGZsb2F0M3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuMih4WzBd
WzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuMih4WzBdWzFdLCB5WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuMih4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1
bHRbMF1bM10gPSBhdGFuMih4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBh
dGFuMih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuMih4WzFdWzFd
LCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuMih4WzFdWzJdLCB5WzFdWzJdKTsK
KyAgICByZXN1bHRbMV1bM10gPSBhdGFuMih4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBhdGFuMih4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFu
Mih4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhdGFuMih4WzJdWzJdLCB5
WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBhdGFuMih4WzJdWzNdLCB5WzJdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDIgYXRhbjIoZmxvYXQ0eDIgeCwgZmxvYXQ0eDIg
eSkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuMih4WzBd
WzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuMih4WzBdWzFdLCB5WzBdWzFd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuMih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBhdGFuMih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBh
dGFuMih4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFuMih4WzJdWzFd
LCB5WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhdGFuMih4WzNdWzBdLCB5WzNdWzBdKTsK
KyAgICByZXN1bHRbM11bMV0gPSBhdGFuMih4WzNdWzFdLCB5WzNdWzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0eDMgYXRhbjIoZmxvYXQ0eDMgeCwgZmxvYXQ0eDMgeSkgeworICAg
IGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuMih4WzBdWzBdLCB5WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuMih4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBhdGFuMih4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBhdGFuMih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuMih4WzFd
WzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuMih4WzFdWzJdLCB5WzFdWzJd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSBhdGFuMih4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBhdGFuMih4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBh
dGFuMih4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhdGFuMih4WzNdWzBd
LCB5WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBhdGFuMih4WzNdWzFdLCB5WzNdWzFdKTsK
KyAgICByZXN1bHRbM11bMl0gPSBhdGFuMih4WzNdWzJdLCB5WzNdWzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0eDQgYXRhbjIoZmxvYXQ0eDQgeCwgZmxvYXQ0eDQgeSkgeworICAg
IGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuMih4WzBdWzBdLCB5WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuMih4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBhdGFuMih4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10g
PSBhdGFuMih4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuMih4WzFd
WzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuMih4WzFdWzFdLCB5WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuMih4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1
bHRbMV1bM10gPSBhdGFuMih4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBh
dGFuMih4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBhdGFuMih4WzJdWzFd
LCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhdGFuMih4WzJdWzJdLCB5WzJdWzJdKTsK
KyAgICByZXN1bHRbMl1bM10gPSBhdGFuMih4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXN1bHRb
M11bMF0gPSBhdGFuMih4WzNdWzBdLCB5WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBhdGFu
Mih4WzNdWzFdLCB5WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBhdGFuMih4WzNdWzJdLCB5
WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBhdGFuMih4WzNdWzNdLCB5WzNdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorCit2b2lkIHNpbmNvcyhoYWxmIHgsIHRocmVhZCBoYWxmKiB5
LCB0aHJlYWQgaGFsZiogeikgeworICAgICp5ID0gc2luKHgpOworICAgICp6ID0gY29zKHgpOwor
fQordm9pZCBzaW5jb3MoaGFsZjIgeCwgdGhyZWFkIGhhbGYyKiB5LCB0aHJlYWQgaGFsZjIqIHop
IHsKKyAgICBzaW5jb3MoeFswXSwgJigoKnkpWzBdKSwgJigoKnopWzBdKSk7CisgICAgc2luY29z
KHhbMV0sICYoKCp5KVsxXSksICYoKCp6KVsxXSkpOworfQordm9pZCBzaW5jb3MoaGFsZjMgeCwg
dGhyZWFkIGhhbGYzKiB5LCB0aHJlYWQgaGFsZjMqIHopIHsKKyAgICBzaW5jb3MoeFswXSwgJigo
KnkpWzBdKSwgJigoKnopWzBdKSk7CisgICAgc2luY29zKHhbMV0sICYoKCp5KVsxXSksICYoKCp6
KVsxXSkpOworICAgIHNpbmNvcyh4WzJdLCAmKCgqeSlbMl0pLCAmKCgqeilbMl0pKTsKK30KK3Zv
aWQgc2luY29zKGhhbGY0IHgsIHRocmVhZCBoYWxmNCogeSwgdGhyZWFkIGhhbGY0KiB6KSB7Cisg
ICAgc2luY29zKHhbMF0sICYoKCp5KVswXSksICYoKCp6KVswXSkpOworICAgIHNpbmNvcyh4WzFd
LCAmKCgqeSlbMV0pLCAmKCgqeilbMV0pKTsKKyAgICBzaW5jb3MoeFsyXSwgJigoKnkpWzJdKSwg
JigoKnopWzJdKSk7CisgICAgc2luY29zKHhbM10sICYoKCp5KVszXSksICYoKCp6KVszXSkpOwor
fQordm9pZCBzaW5jb3MoaGFsZjJ4MiB4LCB0aHJlYWQgaGFsZjJ4MiogeSwgdGhyZWFkIGhhbGYy
eDIqIHopIHsKKyAgICBzaW5jb3MoeFswXVswXSwgJigoKnkpWzBdWzBdKSwgJigoKnopWzBdWzBd
KSk7CisgICAgc2luY29zKHhbMF1bMV0sICYoKCp5KVswXVsxXSksICYoKCp6KVswXVsxXSkpOwor
ICAgIHNpbmNvcyh4WzFdWzBdLCAmKCgqeSlbMV1bMF0pLCAmKCgqeilbMV1bMF0pKTsKKyAgICBz
aW5jb3MoeFsxXVsxXSwgJigoKnkpWzFdWzFdKSwgJigoKnopWzFdWzFdKSk7Cit9Cit2b2lkIHNp
bmNvcyhoYWxmMngzIHgsIHRocmVhZCBoYWxmMngzKiB5LCB0aHJlYWQgaGFsZjJ4Myogeikgewor
ICAgIHNpbmNvcyh4WzBdWzBdLCAmKCgqeSlbMF1bMF0pLCAmKCgqeilbMF1bMF0pKTsKKyAgICBz
aW5jb3MoeFswXVsxXSwgJigoKnkpWzBdWzFdKSwgJigoKnopWzBdWzFdKSk7CisgICAgc2luY29z
KHhbMF1bMl0sICYoKCp5KVswXVsyXSksICYoKCp6KVswXVsyXSkpOworICAgIHNpbmNvcyh4WzFd
WzBdLCAmKCgqeSlbMV1bMF0pLCAmKCgqeilbMV1bMF0pKTsKKyAgICBzaW5jb3MoeFsxXVsxXSwg
JigoKnkpWzFdWzFdKSwgJigoKnopWzFdWzFdKSk7CisgICAgc2luY29zKHhbMV1bMl0sICYoKCp5
KVsxXVsyXSksICYoKCp6KVsxXVsyXSkpOworfQordm9pZCBzaW5jb3MoaGFsZjJ4NCB4LCB0aHJl
YWQgaGFsZjJ4NCogeSwgdGhyZWFkIGhhbGYyeDQqIHopIHsKKyAgICBzaW5jb3MoeFswXVswXSwg
JigoKnkpWzBdWzBdKSwgJigoKnopWzBdWzBdKSk7CisgICAgc2luY29zKHhbMF1bMV0sICYoKCp5
KVswXVsxXSksICYoKCp6KVswXVsxXSkpOworICAgIHNpbmNvcyh4WzBdWzJdLCAmKCgqeSlbMF1b
Ml0pLCAmKCgqeilbMF1bMl0pKTsKKyAgICBzaW5jb3MoeFswXVszXSwgJigoKnkpWzBdWzNdKSwg
JigoKnopWzBdWzNdKSk7CisgICAgc2luY29zKHhbMV1bMF0sICYoKCp5KVsxXVswXSksICYoKCp6
KVsxXVswXSkpOworICAgIHNpbmNvcyh4WzFdWzFdLCAmKCgqeSlbMV1bMV0pLCAmKCgqeilbMV1b
MV0pKTsKKyAgICBzaW5jb3MoeFsxXVsyXSwgJigoKnkpWzFdWzJdKSwgJigoKnopWzFdWzJdKSk7
CisgICAgc2luY29zKHhbMV1bM10sICYoKCp5KVsxXVszXSksICYoKCp6KVsxXVszXSkpOworfQor
dm9pZCBzaW5jb3MoaGFsZjN4MiB4LCB0aHJlYWQgaGFsZjN4MiogeSwgdGhyZWFkIGhhbGYzeDIq
IHopIHsKKyAgICBzaW5jb3MoeFswXVswXSwgJigoKnkpWzBdWzBdKSwgJigoKnopWzBdWzBdKSk7
CisgICAgc2luY29zKHhbMF1bMV0sICYoKCp5KVswXVsxXSksICYoKCp6KVswXVsxXSkpOworICAg
IHNpbmNvcyh4WzFdWzBdLCAmKCgqeSlbMV1bMF0pLCAmKCgqeilbMV1bMF0pKTsKKyAgICBzaW5j
b3MoeFsxXVsxXSwgJigoKnkpWzFdWzFdKSwgJigoKnopWzFdWzFdKSk7CisgICAgc2luY29zKHhb
Ml1bMF0sICYoKCp5KVsyXVswXSksICYoKCp6KVsyXVswXSkpOworICAgIHNpbmNvcyh4WzJdWzFd
LCAmKCgqeSlbMl1bMV0pLCAmKCgqeilbMl1bMV0pKTsKK30KK3ZvaWQgc2luY29zKGhhbGYzeDMg
eCwgdGhyZWFkIGhhbGYzeDMqIHksIHRocmVhZCBoYWxmM3gzKiB6KSB7CisgICAgc2luY29zKHhb
MF1bMF0sICYoKCp5KVswXVswXSksICYoKCp6KVswXVswXSkpOworICAgIHNpbmNvcyh4WzBdWzFd
LCAmKCgqeSlbMF1bMV0pLCAmKCgqeilbMF1bMV0pKTsKKyAgICBzaW5jb3MoeFswXVsyXSwgJigo
KnkpWzBdWzJdKSwgJigoKnopWzBdWzJdKSk7CisgICAgc2luY29zKHhbMV1bMF0sICYoKCp5KVsx
XVswXSksICYoKCp6KVsxXVswXSkpOworICAgIHNpbmNvcyh4WzFdWzFdLCAmKCgqeSlbMV1bMV0p
LCAmKCgqeilbMV1bMV0pKTsKKyAgICBzaW5jb3MoeFsxXVsyXSwgJigoKnkpWzFdWzJdKSwgJigo
KnopWzFdWzJdKSk7CisgICAgc2luY29zKHhbMl1bMF0sICYoKCp5KVsyXVswXSksICYoKCp6KVsy
XVswXSkpOworICAgIHNpbmNvcyh4WzJdWzFdLCAmKCgqeSlbMl1bMV0pLCAmKCgqeilbMl1bMV0p
KTsKKyAgICBzaW5jb3MoeFsyXVsyXSwgJigoKnkpWzJdWzJdKSwgJigoKnopWzJdWzJdKSk7Cit9
Cit2b2lkIHNpbmNvcyhoYWxmM3g0IHgsIHRocmVhZCBoYWxmM3g0KiB5LCB0aHJlYWQgaGFsZjN4
NCogeikgeworICAgIHNpbmNvcyh4WzBdWzBdLCAmKCgqeSlbMF1bMF0pLCAmKCgqeilbMF1bMF0p
KTsKKyAgICBzaW5jb3MoeFswXVsxXSwgJigoKnkpWzBdWzFdKSwgJigoKnopWzBdWzFdKSk7Cisg
ICAgc2luY29zKHhbMF1bMl0sICYoKCp5KVswXVsyXSksICYoKCp6KVswXVsyXSkpOworICAgIHNp
bmNvcyh4WzBdWzNdLCAmKCgqeSlbMF1bM10pLCAmKCgqeilbMF1bM10pKTsKKyAgICBzaW5jb3Mo
eFsxXVswXSwgJigoKnkpWzFdWzBdKSwgJigoKnopWzFdWzBdKSk7CisgICAgc2luY29zKHhbMV1b
MV0sICYoKCp5KVsxXVsxXSksICYoKCp6KVsxXVsxXSkpOworICAgIHNpbmNvcyh4WzFdWzJdLCAm
KCgqeSlbMV1bMl0pLCAmKCgqeilbMV1bMl0pKTsKKyAgICBzaW5jb3MoeFsxXVszXSwgJigoKnkp
WzFdWzNdKSwgJigoKnopWzFdWzNdKSk7CisgICAgc2luY29zKHhbMl1bMF0sICYoKCp5KVsyXVsw
XSksICYoKCp6KVsyXVswXSkpOworICAgIHNpbmNvcyh4WzJdWzFdLCAmKCgqeSlbMl1bMV0pLCAm
KCgqeilbMl1bMV0pKTsKKyAgICBzaW5jb3MoeFsyXVsyXSwgJigoKnkpWzJdWzJdKSwgJigoKnop
WzJdWzJdKSk7CisgICAgc2luY29zKHhbMl1bM10sICYoKCp5KVsyXVszXSksICYoKCp6KVsyXVsz
XSkpOworfQordm9pZCBzaW5jb3MoaGFsZjR4MiB4LCB0aHJlYWQgaGFsZjR4MiogeSwgdGhyZWFk
IGhhbGY0eDIqIHopIHsKKyAgICBzaW5jb3MoeFswXVswXSwgJigoKnkpWzBdWzBdKSwgJigoKnop
WzBdWzBdKSk7CisgICAgc2luY29zKHhbMF1bMV0sICYoKCp5KVswXVsxXSksICYoKCp6KVswXVsx
XSkpOworICAgIHNpbmNvcyh4WzFdWzBdLCAmKCgqeSlbMV1bMF0pLCAmKCgqeilbMV1bMF0pKTsK
KyAgICBzaW5jb3MoeFsxXVsxXSwgJigoKnkpWzFdWzFdKSwgJigoKnopWzFdWzFdKSk7CisgICAg
c2luY29zKHhbMl1bMF0sICYoKCp5KVsyXVswXSksICYoKCp6KVsyXVswXSkpOworICAgIHNpbmNv
cyh4WzJdWzFdLCAmKCgqeSlbMl1bMV0pLCAmKCgqeilbMl1bMV0pKTsKKyAgICBzaW5jb3MoeFsz
XVswXSwgJigoKnkpWzNdWzBdKSwgJigoKnopWzNdWzBdKSk7CisgICAgc2luY29zKHhbM11bMV0s
ICYoKCp5KVszXVsxXSksICYoKCp6KVszXVsxXSkpOworfQordm9pZCBzaW5jb3MoaGFsZjR4MyB4
LCB0aHJlYWQgaGFsZjR4MyogeSwgdGhyZWFkIGhhbGY0eDMqIHopIHsKKyAgICBzaW5jb3MoeFsw
XVswXSwgJigoKnkpWzBdWzBdKSwgJigoKnopWzBdWzBdKSk7CisgICAgc2luY29zKHhbMF1bMV0s
ICYoKCp5KVswXVsxXSksICYoKCp6KVswXVsxXSkpOworICAgIHNpbmNvcyh4WzBdWzJdLCAmKCgq
eSlbMF1bMl0pLCAmKCgqeilbMF1bMl0pKTsKKyAgICBzaW5jb3MoeFsxXVswXSwgJigoKnkpWzFd
WzBdKSwgJigoKnopWzFdWzBdKSk7CisgICAgc2luY29zKHhbMV1bMV0sICYoKCp5KVsxXVsxXSks
ICYoKCp6KVsxXVsxXSkpOworICAgIHNpbmNvcyh4WzFdWzJdLCAmKCgqeSlbMV1bMl0pLCAmKCgq
eilbMV1bMl0pKTsKKyAgICBzaW5jb3MoeFsyXVswXSwgJigoKnkpWzJdWzBdKSwgJigoKnopWzJd
WzBdKSk7CisgICAgc2luY29zKHhbMl1bMV0sICYoKCp5KVsyXVsxXSksICYoKCp6KVsyXVsxXSkp
OworICAgIHNpbmNvcyh4WzJdWzJdLCAmKCgqeSlbMl1bMl0pLCAmKCgqeilbMl1bMl0pKTsKKyAg
ICBzaW5jb3MoeFszXVswXSwgJigoKnkpWzNdWzBdKSwgJigoKnopWzNdWzBdKSk7CisgICAgc2lu
Y29zKHhbM11bMV0sICYoKCp5KVszXVsxXSksICYoKCp6KVszXVsxXSkpOworICAgIHNpbmNvcyh4
WzNdWzJdLCAmKCgqeSlbM11bMl0pLCAmKCgqeilbM11bMl0pKTsKK30KK3ZvaWQgc2luY29zKGhh
bGY0eDQgeCwgdGhyZWFkIGhhbGY0eDQqIHksIHRocmVhZCBoYWxmNHg0KiB6KSB7CisgICAgc2lu
Y29zKHhbMF1bMF0sICYoKCp5KVswXVswXSksICYoKCp6KVswXVswXSkpOworICAgIHNpbmNvcyh4
WzBdWzFdLCAmKCgqeSlbMF1bMV0pLCAmKCgqeilbMF1bMV0pKTsKKyAgICBzaW5jb3MoeFswXVsy
XSwgJigoKnkpWzBdWzJdKSwgJigoKnopWzBdWzJdKSk7CisgICAgc2luY29zKHhbMF1bM10sICYo
KCp5KVswXVszXSksICYoKCp6KVswXVszXSkpOworICAgIHNpbmNvcyh4WzFdWzBdLCAmKCgqeSlb
MV1bMF0pLCAmKCgqeilbMV1bMF0pKTsKKyAgICBzaW5jb3MoeFsxXVsxXSwgJigoKnkpWzFdWzFd
KSwgJigoKnopWzFdWzFdKSk7CisgICAgc2luY29zKHhbMV1bMl0sICYoKCp5KVsxXVsyXSksICYo
KCp6KVsxXVsyXSkpOworICAgIHNpbmNvcyh4WzFdWzNdLCAmKCgqeSlbMV1bM10pLCAmKCgqeilb
MV1bM10pKTsKKyAgICBzaW5jb3MoeFsyXVswXSwgJigoKnkpWzJdWzBdKSwgJigoKnopWzJdWzBd
KSk7CisgICAgc2luY29zKHhbMl1bMV0sICYoKCp5KVsyXVsxXSksICYoKCp6KVsyXVsxXSkpOwor
ICAgIHNpbmNvcyh4WzJdWzJdLCAmKCgqeSlbMl1bMl0pLCAmKCgqeilbMl1bMl0pKTsKKyAgICBz
aW5jb3MoeFsyXVszXSwgJigoKnkpWzJdWzNdKSwgJigoKnopWzJdWzNdKSk7CisgICAgc2luY29z
KHhbM11bMF0sICYoKCp5KVszXVswXSksICYoKCp6KVszXVswXSkpOworICAgIHNpbmNvcyh4WzNd
WzFdLCAmKCgqeSlbM11bMV0pLCAmKCgqeilbM11bMV0pKTsKKyAgICBzaW5jb3MoeFszXVsyXSwg
JigoKnkpWzNdWzJdKSwgJigoKnopWzNdWzJdKSk7CisgICAgc2luY29zKHhbM11bM10sICYoKCp5
KVszXVszXSksICYoKCp6KVszXVszXSkpOworfQordm9pZCBzaW5jb3MoZmxvYXQgeCwgdGhyZWFk
IGZsb2F0KiB5LCB0aHJlYWQgZmxvYXQqIHopIHsKKyAgICAqeSA9IHNpbih4KTsKKyAgICAqeiA9
IGNvcyh4KTsKK30KK3ZvaWQgc2luY29zKGZsb2F0MiB4LCB0aHJlYWQgZmxvYXQyKiB5LCB0aHJl
YWQgZmxvYXQyKiB6KSB7CisgICAgc2luY29zKHhbMF0sICYoKCp5KVswXSksICYoKCp6KVswXSkp
OworICAgIHNpbmNvcyh4WzFdLCAmKCgqeSlbMV0pLCAmKCgqeilbMV0pKTsKK30KK3ZvaWQgc2lu
Y29zKGZsb2F0MyB4LCB0aHJlYWQgZmxvYXQzKiB5LCB0aHJlYWQgZmxvYXQzKiB6KSB7CisgICAg
c2luY29zKHhbMF0sICYoKCp5KVswXSksICYoKCp6KVswXSkpOworICAgIHNpbmNvcyh4WzFdLCAm
KCgqeSlbMV0pLCAmKCgqeilbMV0pKTsKKyAgICBzaW5jb3MoeFsyXSwgJigoKnkpWzJdKSwgJigo
KnopWzJdKSk7Cit9Cit2b2lkIHNpbmNvcyhmbG9hdDQgeCwgdGhyZWFkIGZsb2F0NCogeSwgdGhy
ZWFkIGZsb2F0NCogeikgeworICAgIHNpbmNvcyh4WzBdLCAmKCgqeSlbMF0pLCAmKCgqeilbMF0p
KTsKKyAgICBzaW5jb3MoeFsxXSwgJigoKnkpWzFdKSwgJigoKnopWzFdKSk7CisgICAgc2luY29z
KHhbMl0sICYoKCp5KVsyXSksICYoKCp6KVsyXSkpOworICAgIHNpbmNvcyh4WzNdLCAmKCgqeSlb
M10pLCAmKCgqeilbM10pKTsKK30KK3ZvaWQgc2luY29zKGZsb2F0MngyIHgsIHRocmVhZCBmbG9h
dDJ4MiogeSwgdGhyZWFkIGZsb2F0MngyKiB6KSB7CisgICAgc2luY29zKHhbMF1bMF0sICYoKCp5
KVswXVswXSksICYoKCp6KVswXVswXSkpOworICAgIHNpbmNvcyh4WzBdWzFdLCAmKCgqeSlbMF1b
MV0pLCAmKCgqeilbMF1bMV0pKTsKKyAgICBzaW5jb3MoeFsxXVswXSwgJigoKnkpWzFdWzBdKSwg
JigoKnopWzFdWzBdKSk7CisgICAgc2luY29zKHhbMV1bMV0sICYoKCp5KVsxXVsxXSksICYoKCp6
KVsxXVsxXSkpOworfQordm9pZCBzaW5jb3MoZmxvYXQyeDMgeCwgdGhyZWFkIGZsb2F0MngzKiB5
LCB0aHJlYWQgZmxvYXQyeDMqIHopIHsKKyAgICBzaW5jb3MoeFswXVswXSwgJigoKnkpWzBdWzBd
KSwgJigoKnopWzBdWzBdKSk7CisgICAgc2luY29zKHhbMF1bMV0sICYoKCp5KVswXVsxXSksICYo
KCp6KVswXVsxXSkpOworICAgIHNpbmNvcyh4WzBdWzJdLCAmKCgqeSlbMF1bMl0pLCAmKCgqeilb
MF1bMl0pKTsKKyAgICBzaW5jb3MoeFsxXVswXSwgJigoKnkpWzFdWzBdKSwgJigoKnopWzFdWzBd
KSk7CisgICAgc2luY29zKHhbMV1bMV0sICYoKCp5KVsxXVsxXSksICYoKCp6KVsxXVsxXSkpOwor
ICAgIHNpbmNvcyh4WzFdWzJdLCAmKCgqeSlbMV1bMl0pLCAmKCgqeilbMV1bMl0pKTsKK30KK3Zv
aWQgc2luY29zKGZsb2F0Mng0IHgsIHRocmVhZCBmbG9hdDJ4NCogeSwgdGhyZWFkIGZsb2F0Mng0
KiB6KSB7CisgICAgc2luY29zKHhbMF1bMF0sICYoKCp5KVswXVswXSksICYoKCp6KVswXVswXSkp
OworICAgIHNpbmNvcyh4WzBdWzFdLCAmKCgqeSlbMF1bMV0pLCAmKCgqeilbMF1bMV0pKTsKKyAg
ICBzaW5jb3MoeFswXVsyXSwgJigoKnkpWzBdWzJdKSwgJigoKnopWzBdWzJdKSk7CisgICAgc2lu
Y29zKHhbMF1bM10sICYoKCp5KVswXVszXSksICYoKCp6KVswXVszXSkpOworICAgIHNpbmNvcyh4
WzFdWzBdLCAmKCgqeSlbMV1bMF0pLCAmKCgqeilbMV1bMF0pKTsKKyAgICBzaW5jb3MoeFsxXVsx
XSwgJigoKnkpWzFdWzFdKSwgJigoKnopWzFdWzFdKSk7CisgICAgc2luY29zKHhbMV1bMl0sICYo
KCp5KVsxXVsyXSksICYoKCp6KVsxXVsyXSkpOworICAgIHNpbmNvcyh4WzFdWzNdLCAmKCgqeSlb
MV1bM10pLCAmKCgqeilbMV1bM10pKTsKK30KK3ZvaWQgc2luY29zKGZsb2F0M3gyIHgsIHRocmVh
ZCBmbG9hdDN4MiogeSwgdGhyZWFkIGZsb2F0M3gyKiB6KSB7CisgICAgc2luY29zKHhbMF1bMF0s
ICYoKCp5KVswXVswXSksICYoKCp6KVswXVswXSkpOworICAgIHNpbmNvcyh4WzBdWzFdLCAmKCgq
eSlbMF1bMV0pLCAmKCgqeilbMF1bMV0pKTsKKyAgICBzaW5jb3MoeFsxXVswXSwgJigoKnkpWzFd
WzBdKSwgJigoKnopWzFdWzBdKSk7CisgICAgc2luY29zKHhbMV1bMV0sICYoKCp5KVsxXVsxXSks
ICYoKCp6KVsxXVsxXSkpOworICAgIHNpbmNvcyh4WzJdWzBdLCAmKCgqeSlbMl1bMF0pLCAmKCgq
eilbMl1bMF0pKTsKKyAgICBzaW5jb3MoeFsyXVsxXSwgJigoKnkpWzJdWzFdKSwgJigoKnopWzJd
WzFdKSk7Cit9Cit2b2lkIHNpbmNvcyhmbG9hdDN4MyB4LCB0aHJlYWQgZmxvYXQzeDMqIHksIHRo
cmVhZCBmbG9hdDN4MyogeikgeworICAgIHNpbmNvcyh4WzBdWzBdLCAmKCgqeSlbMF1bMF0pLCAm
KCgqeilbMF1bMF0pKTsKKyAgICBzaW5jb3MoeFswXVsxXSwgJigoKnkpWzBdWzFdKSwgJigoKnop
WzBdWzFdKSk7CisgICAgc2luY29zKHhbMF1bMl0sICYoKCp5KVswXVsyXSksICYoKCp6KVswXVsy
XSkpOworICAgIHNpbmNvcyh4WzFdWzBdLCAmKCgqeSlbMV1bMF0pLCAmKCgqeilbMV1bMF0pKTsK
KyAgICBzaW5jb3MoeFsxXVsxXSwgJigoKnkpWzFdWzFdKSwgJigoKnopWzFdWzFdKSk7CisgICAg
c2luY29zKHhbMV1bMl0sICYoKCp5KVsxXVsyXSksICYoKCp6KVsxXVsyXSkpOworICAgIHNpbmNv
cyh4WzJdWzBdLCAmKCgqeSlbMl1bMF0pLCAmKCgqeilbMl1bMF0pKTsKKyAgICBzaW5jb3MoeFsy
XVsxXSwgJigoKnkpWzJdWzFdKSwgJigoKnopWzJdWzFdKSk7CisgICAgc2luY29zKHhbMl1bMl0s
ICYoKCp5KVsyXVsyXSksICYoKCp6KVsyXVsyXSkpOworfQordm9pZCBzaW5jb3MoZmxvYXQzeDQg
eCwgdGhyZWFkIGZsb2F0M3g0KiB5LCB0aHJlYWQgZmxvYXQzeDQqIHopIHsKKyAgICBzaW5jb3Mo
eFswXVswXSwgJigoKnkpWzBdWzBdKSwgJigoKnopWzBdWzBdKSk7CisgICAgc2luY29zKHhbMF1b
MV0sICYoKCp5KVswXVsxXSksICYoKCp6KVswXVsxXSkpOworICAgIHNpbmNvcyh4WzBdWzJdLCAm
KCgqeSlbMF1bMl0pLCAmKCgqeilbMF1bMl0pKTsKKyAgICBzaW5jb3MoeFswXVszXSwgJigoKnkp
WzBdWzNdKSwgJigoKnopWzBdWzNdKSk7CisgICAgc2luY29zKHhbMV1bMF0sICYoKCp5KVsxXVsw
XSksICYoKCp6KVsxXVswXSkpOworICAgIHNpbmNvcyh4WzFdWzFdLCAmKCgqeSlbMV1bMV0pLCAm
KCgqeilbMV1bMV0pKTsKKyAgICBzaW5jb3MoeFsxXVsyXSwgJigoKnkpWzFdWzJdKSwgJigoKnop
WzFdWzJdKSk7CisgICAgc2luY29zKHhbMV1bM10sICYoKCp5KVsxXVszXSksICYoKCp6KVsxXVsz
XSkpOworICAgIHNpbmNvcyh4WzJdWzBdLCAmKCgqeSlbMl1bMF0pLCAmKCgqeilbMl1bMF0pKTsK
KyAgICBzaW5jb3MoeFsyXVsxXSwgJigoKnkpWzJdWzFdKSwgJigoKnopWzJdWzFdKSk7CisgICAg
c2luY29zKHhbMl1bMl0sICYoKCp5KVsyXVsyXSksICYoKCp6KVsyXVsyXSkpOworICAgIHNpbmNv
cyh4WzJdWzNdLCAmKCgqeSlbMl1bM10pLCAmKCgqeilbMl1bM10pKTsKK30KK3ZvaWQgc2luY29z
KGZsb2F0NHgyIHgsIHRocmVhZCBmbG9hdDR4MiogeSwgdGhyZWFkIGZsb2F0NHgyKiB6KSB7Cisg
ICAgc2luY29zKHhbMF1bMF0sICYoKCp5KVswXVswXSksICYoKCp6KVswXVswXSkpOworICAgIHNp
bmNvcyh4WzBdWzFdLCAmKCgqeSlbMF1bMV0pLCAmKCgqeilbMF1bMV0pKTsKKyAgICBzaW5jb3Mo
eFsxXVswXSwgJigoKnkpWzFdWzBdKSwgJigoKnopWzFdWzBdKSk7CisgICAgc2luY29zKHhbMV1b
MV0sICYoKCp5KVsxXVsxXSksICYoKCp6KVsxXVsxXSkpOworICAgIHNpbmNvcyh4WzJdWzBdLCAm
KCgqeSlbMl1bMF0pLCAmKCgqeilbMl1bMF0pKTsKKyAgICBzaW5jb3MoeFsyXVsxXSwgJigoKnkp
WzJdWzFdKSwgJigoKnopWzJdWzFdKSk7CisgICAgc2luY29zKHhbM11bMF0sICYoKCp5KVszXVsw
XSksICYoKCp6KVszXVswXSkpOworICAgIHNpbmNvcyh4WzNdWzFdLCAmKCgqeSlbM11bMV0pLCAm
KCgqeilbM11bMV0pKTsKK30KK3ZvaWQgc2luY29zKGZsb2F0NHgzIHgsIHRocmVhZCBmbG9hdDR4
MyogeSwgdGhyZWFkIGZsb2F0NHgzKiB6KSB7CisgICAgc2luY29zKHhbMF1bMF0sICYoKCp5KVsw
XVswXSksICYoKCp6KVswXVswXSkpOworICAgIHNpbmNvcyh4WzBdWzFdLCAmKCgqeSlbMF1bMV0p
LCAmKCgqeilbMF1bMV0pKTsKKyAgICBzaW5jb3MoeFswXVsyXSwgJigoKnkpWzBdWzJdKSwgJigo
KnopWzBdWzJdKSk7CisgICAgc2luY29zKHhbMV1bMF0sICYoKCp5KVsxXVswXSksICYoKCp6KVsx
XVswXSkpOworICAgIHNpbmNvcyh4WzFdWzFdLCAmKCgqeSlbMV1bMV0pLCAmKCgqeilbMV1bMV0p
KTsKKyAgICBzaW5jb3MoeFsxXVsyXSwgJigoKnkpWzFdWzJdKSwgJigoKnopWzFdWzJdKSk7Cisg
ICAgc2luY29zKHhbMl1bMF0sICYoKCp5KVsyXVswXSksICYoKCp6KVsyXVswXSkpOworICAgIHNp
bmNvcyh4WzJdWzFdLCAmKCgqeSlbMl1bMV0pLCAmKCgqeilbMl1bMV0pKTsKKyAgICBzaW5jb3Mo
eFsyXVsyXSwgJigoKnkpWzJdWzJdKSwgJigoKnopWzJdWzJdKSk7CisgICAgc2luY29zKHhbM11b
MF0sICYoKCp5KVszXVswXSksICYoKCp6KVszXVswXSkpOworICAgIHNpbmNvcyh4WzNdWzFdLCAm
KCgqeSlbM11bMV0pLCAmKCgqeilbM11bMV0pKTsKKyAgICBzaW5jb3MoeFszXVsyXSwgJigoKnkp
WzNdWzJdKSwgJigoKnopWzNdWzJdKSk7Cit9Cit2b2lkIHNpbmNvcyhmbG9hdDR4NCB4LCB0aHJl
YWQgZmxvYXQ0eDQqIHksIHRocmVhZCBmbG9hdDR4NCogeikgeworICAgIHNpbmNvcyh4WzBdWzBd
LCAmKCgqeSlbMF1bMF0pLCAmKCgqeilbMF1bMF0pKTsKKyAgICBzaW5jb3MoeFswXVsxXSwgJigo
KnkpWzBdWzFdKSwgJigoKnopWzBdWzFdKSk7CisgICAgc2luY29zKHhbMF1bMl0sICYoKCp5KVsw
XVsyXSksICYoKCp6KVswXVsyXSkpOworICAgIHNpbmNvcyh4WzBdWzNdLCAmKCgqeSlbMF1bM10p
LCAmKCgqeilbMF1bM10pKTsKKyAgICBzaW5jb3MoeFsxXVswXSwgJigoKnkpWzFdWzBdKSwgJigo
KnopWzFdWzBdKSk7CisgICAgc2luY29zKHhbMV1bMV0sICYoKCp5KVsxXVsxXSksICYoKCp6KVsx
XVsxXSkpOworICAgIHNpbmNvcyh4WzFdWzJdLCAmKCgqeSlbMV1bMl0pLCAmKCgqeilbMV1bMl0p
KTsKKyAgICBzaW5jb3MoeFsxXVszXSwgJigoKnkpWzFdWzNdKSwgJigoKnopWzFdWzNdKSk7Cisg
ICAgc2luY29zKHhbMl1bMF0sICYoKCp5KVsyXVswXSksICYoKCp6KVsyXVswXSkpOworICAgIHNp
bmNvcyh4WzJdWzFdLCAmKCgqeSlbMl1bMV0pLCAmKCgqeilbMl1bMV0pKTsKKyAgICBzaW5jb3Mo
eFsyXVsyXSwgJigoKnkpWzJdWzJdKSwgJigoKnopWzJdWzJdKSk7CisgICAgc2luY29zKHhbMl1b
M10sICYoKCp5KVsyXVszXSksICYoKCp6KVsyXVszXSkpOworICAgIHNpbmNvcyh4WzNdWzBdLCAm
KCgqeSlbM11bMF0pLCAmKCgqeilbM11bMF0pKTsKKyAgICBzaW5jb3MoeFszXVsxXSwgJigoKnkp
WzNdWzFdKSwgJigoKnopWzNdWzFdKSk7CisgICAgc2luY29zKHhbM11bMl0sICYoKCp5KVszXVsy
XSksICYoKCp6KVszXVsyXSkpOworICAgIHNpbmNvcyh4WzNdWzNdLCAmKCgqeSlbM11bM10pLCAm
KCgqeilbM11bM10pKTsKK30KKworYm9vbCBhbGwoYm9vbCB4KSB7CisgICAgcmV0dXJuIHg7Cit9
Citib29sIGFsbChib29sMiB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3Vs
dCA9IHJlc3VsdCAmJiAoeFswXSk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbGwoYm9vbDMgeCkgeworICAgIGJvb2wgcmVzdWx0
ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF0pOworICAgIHJlc3VsdCA9IHJl
c3VsdCAmJiAoeFsxXSk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbCBhbGwoYm9vbDQgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gdHJ1
ZTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF0pOworICAgIHJlc3VsdCA9IHJlc3VsdCAm
JiAoeFsxXSk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdKTsKKyAgICByZXN1bHQgPSBy
ZXN1bHQgJiYgKHhbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFsbCh1Y2hhciB4
KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK2Jvb2wgYWxsKHVjaGFyMiB4KSB7CisgICAgYm9v
bCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXSAhPSAwKTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2wgYWxsKHVjaGFyMyB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3Vs
dCA9IHJlc3VsdCAmJiAoeFswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV0g
IT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdICE9IDApOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sIGFsbCh1Y2hhcjQgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gdHJ1ZTsK
KyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0
ICYmICh4WzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsyXSAhPSAwKTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgJiYgKHhbM10gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2wgYWxsKHVzaG9ydCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK2Jvb2wgYWxsKHVz
aG9ydDIgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSByZXN1bHQg
JiYgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdICE9IDApOworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sIGFsbCh1c2hvcnQzIHgpIHsKKyAgICBib29sIHJlc3Vs
dCA9IHRydWU7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdICE9IDApOworICAgIHJlc3Vs
dCA9IHJlc3VsdCAmJiAoeFsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl0g
IT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYWxsKHVzaG9ydDQgeCkgeworICAg
IGJvb2wgcmVzdWx0ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF0gIT0gMCk7
CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3Vs
dCAmJiAoeFsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbM10gIT0gMCk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYWxsKHVpbnQgeCkgeworICAgIHJldHVybiB4ICE9
IDA7Cit9Citib29sIGFsbCh1aW50MiB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAg
IHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYg
KHhbMV0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYWxsKHVpbnQzIHgpIHsK
KyAgICBib29sIHJlc3VsdCA9IHRydWU7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdICE9
IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSBy
ZXN1bHQgJiYgKHhbMl0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYWxsKHVp
bnQ0IHgpIHsKKyAgICBib29sIHJlc3VsdCA9IHRydWU7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYm
ICh4WzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgJiYgKHhbMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4
WzNdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFsbChjaGFyIHgpIHsKKyAg
ICByZXR1cm4geCAhPSAwOworfQorYm9vbCBhbGwoY2hhcjIgeCkgeworICAgIGJvb2wgcmVzdWx0
ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0ICYmICh4WzFdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFs
bChjaGFyMyB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3Vs
dCAmJiAoeFswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV0gIT0gMCk7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sIGFsbChjaGFyNCB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3Vs
dCA9IHJlc3VsdCAmJiAoeFswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV0g
IT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdICE9IDApOworICAgIHJlc3VsdCA9
IHJlc3VsdCAmJiAoeFszXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbGwo
c2hvcnQgeCkgeworICAgIHJldHVybiB4ICE9IDA7Cit9Citib29sIGFsbChzaG9ydDIgeCkgewor
ICAgIGJvb2wgcmVzdWx0ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF0gIT0g
MCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdICE9IDApOworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sIGFsbChzaG9ydDMgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gdHJ1ZTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYm
ICh4WzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsyXSAhPSAwKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbGwoc2hvcnQ0IHgpIHsKKyAgICBib29sIHJlc3VsdCA9
IHRydWU7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdICE9IDApOworICAgIHJlc3VsdCA9
IHJlc3VsdCAmJiAoeFsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl0gIT0g
MCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzNdICE9IDApOworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sIGFsbChpbnQgeCkgeworICAgIHJldHVybiB4ICE9IDA7Cit9Citib29sIGFs
bChpbnQyIHgpIHsKKyAgICBib29sIHJlc3VsdCA9IHRydWU7CisgICAgcmVzdWx0ID0gcmVzdWx0
ICYmICh4WzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXSAhPSAwKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbGwoaW50MyB4KSB7CisgICAgYm9vbCByZXN1bHQg
PSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgJiYgKHhbMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdICE9
IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFsbChpbnQ0IHgpIHsKKyAgICBib29s
IHJlc3VsdCA9IHRydWU7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdICE9IDApOworICAg
IHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYg
KHhbMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzNdICE9IDApOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sIGFsbChoYWxmIHgpIHsKKyAgICByZXR1cm4geCAhPSAwOwor
fQorYm9vbCBhbGwoaGFsZjIgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gdHJ1ZTsKKyAgICByZXN1
bHQgPSByZXN1bHQgJiYgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFd
ICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFsbChoYWxmMyB4KSB7CisgICAg
Ym9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXSAhPSAwKTsK
KyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0
ICYmICh4WzJdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFsbChoYWxmNCB4
KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsw
XSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0ICYmICh4WzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFszXSAh
PSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbGwoaGFsZjJ4MiB4KSB7CisgICAg
Ym9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVswXSAhPSAw
KTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0g
cmVzdWx0ICYmICh4WzFdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVsx
XSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbGwoaGFsZjJ4MyB4KSB7Cisg
ICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVswXSAh
PSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0ICYmICh4WzBdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsx
XVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bMV0gIT0gMCk7CisgICAg
cmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzJdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sIGFsbChoYWxmMng0IHgpIHsKKyAgICBib29sIHJlc3VsdCA9IHRydWU7CisgICAgcmVz
dWx0ID0gcmVzdWx0ICYmICh4WzBdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAo
eFswXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMl0gIT0gMCk7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdWzNdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3Vs
dCAmJiAoeFsxXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bMV0gIT0g
MCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzJdICE9IDApOworICAgIHJlc3VsdCA9
IHJlc3VsdCAmJiAoeFsxXVszXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBh
bGwoaGFsZjN4MiB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJl
c3VsdCAmJiAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMV0g
IT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzBdICE9IDApOworICAgIHJlc3Vs
dCA9IHJlc3VsdCAmJiAoeFsxXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhb
Ml1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdWzFdICE9IDApOworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sIGFsbChoYWxmM3gzIHgpIHsKKyAgICBib29sIHJlc3Vs
dCA9IHRydWU7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdWzBdICE9IDApOworICAgIHJl
c3VsdCA9IHJlc3VsdCAmJiAoeFswXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYg
KHhbMF1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzBdICE9IDApOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1
bHQgJiYgKHhbMV1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdWzBdICE9
IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsyXVsxXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgJiYgKHhbMl1bMl0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wg
YWxsKGhhbGYzeDQgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSBy
ZXN1bHQgJiYgKHhbMF1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdWzFd
ICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVsyXSAhPSAwKTsKKyAgICByZXN1
bHQgPSByZXN1bHQgJiYgKHhbMF1bM10gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4
WzFdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVsxXSAhPSAwKTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0
ICYmICh4WzFdWzNdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsyXVswXSAhPSAw
KTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0g
cmVzdWx0ICYmICh4WzJdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsyXVsz
XSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbGwoaGFsZjR4MiB4KSB7Cisg
ICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVswXSAh
PSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0ICYmICh4WzFdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsx
XVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl1bMF0gIT0gMCk7CisgICAg
cmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAm
JiAoeFszXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbM11bMV0gIT0gMCk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYWxsKGhhbGY0eDMgeCkgeworICAgIGJvb2wg
cmVzdWx0ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMF0gIT0gMCk7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3Vs
dCAmJiAoeFswXVsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bMF0gIT0g
MCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzFdICE9IDApOworICAgIHJlc3VsdCA9
IHJlc3VsdCAmJiAoeFsxXVsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl1b
MF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdWzFdICE9IDApOworICAgIHJl
c3VsdCA9IHJlc3VsdCAmJiAoeFsyXVsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYg
KHhbM11bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzNdWzFdICE9IDApOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFszXVsyXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbCBhbGwoaGFsZjR4NCB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAg
IHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQg
JiYgKHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdWzJdICE9IDAp
OworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVszXSAhPSAwKTsKKyAgICByZXN1bHQgPSBy
ZXN1bHQgJiYgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzFd
ICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVsyXSAhPSAwKTsKKyAgICByZXN1
bHQgPSByZXN1bHQgJiYgKHhbMV1bM10gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4
WzJdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsyXVsxXSAhPSAwKTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0
ICYmICh4WzJdWzNdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFszXVswXSAhPSAw
KTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbM11bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0g
cmVzdWx0ICYmICh4WzNdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFszXVsz
XSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbGwoZmxvYXQgeCkgeworICAg
IHJldHVybiB4ICE9IDA7Cit9Citib29sIGFsbChmbG9hdDIgeCkgeworICAgIGJvb2wgcmVzdWx0
ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0ICYmICh4WzFdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFs
bChmbG9hdDMgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSByZXN1
bHQgJiYgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdICE9IDApOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsyXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbCBhbGwoZmxvYXQ0IHgpIHsKKyAgICBib29sIHJlc3VsdCA9IHRydWU7CisgICAgcmVz
dWx0ID0gcmVzdWx0ICYmICh4WzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsx
XSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0ICYmICh4WzNdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFs
bChmbG9hdDJ4MiB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJl
c3VsdCAmJiAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMV0g
IT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzBdICE9IDApOworICAgIHJlc3Vs
dCA9IHJlc3VsdCAmJiAoeFsxXVsxXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bCBhbGwoZmxvYXQyeDMgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gdHJ1ZTsKKyAgICByZXN1bHQg
PSByZXN1bHQgJiYgKHhbMF1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBd
WzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVsyXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYm
ICh4WzFdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVsyXSAhPSAwKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbGwoZmxvYXQyeDQgeCkgeworICAgIGJvb2wg
cmVzdWx0ID0gdHJ1ZTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMF0gIT0gMCk7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3Vs
dCAmJiAoeFswXVsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bM10gIT0g
MCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzBdICE9IDApOworICAgIHJlc3VsdCA9
IHJlc3VsdCAmJiAoeFsxXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1b
Ml0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzNdICE9IDApOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sIGFsbChmbG9hdDN4MiB4KSB7CisgICAgYm9vbCByZXN1bHQg
PSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1
bHQgPSByZXN1bHQgJiYgKHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4
WzFdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVsxXSAhPSAwKTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0
ICYmICh4WzJdWzFdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFsbChmbG9h
dDN4MyB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAm
JiAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMV0gIT0gMCk7
CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJl
c3VsdCAmJiAoeFsxXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bMV0g
IT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzJdICE9IDApOworICAgIHJlc3Vs
dCA9IHJlc3VsdCAmJiAoeFsyXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhb
Ml1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdWzJdICE9IDApOworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sIGFsbChmbG9hdDN4NCB4KSB7CisgICAgYm9vbCByZXN1
bHQgPSB0cnVlOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVswXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYm
ICh4WzBdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVszXSAhPSAwKTsK
KyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVz
dWx0ICYmICh4WzFdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVsyXSAh
PSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bM10gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0ICYmICh4WzJdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsy
XVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl1bMl0gIT0gMCk7CisgICAg
cmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdWzNdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sIGFsbChmbG9hdDR4MiB4KSB7CisgICAgYm9vbCByZXN1bHQgPSB0cnVlOworICAgIHJl
c3VsdCA9IHJlc3VsdCAmJiAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYg
KHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzFdWzBdICE9IDApOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1
bHQgJiYgKHhbMl1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdWzFdICE9
IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFszXVswXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgJiYgKHhbM11bMV0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wg
YWxsKGZsb2F0NHgzIHgpIHsKKyAgICBib29sIHJlc3VsdCA9IHRydWU7CisgICAgcmVzdWx0ID0g
cmVzdWx0ICYmICh4WzBdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVsx
XSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMF1bMl0gIT0gMCk7CisgICAgcmVz
dWx0ID0gcmVzdWx0ICYmICh4WzFdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAo
eFsxXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bMl0gIT0gMCk7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzJdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3Vs
dCAmJiAoeFsyXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl1bMl0gIT0g
MCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzNdWzBdICE9IDApOworICAgIHJlc3VsdCA9
IHJlc3VsdCAmJiAoeFszXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbM11b
Ml0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYWxsKGZsb2F0NHg0IHgpIHsK
KyAgICBib29sIHJlc3VsdCA9IHRydWU7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzBdWzBd
ICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFswXVsxXSAhPSAwKTsKKyAgICByZXN1
bHQgPSByZXN1bHQgJiYgKHhbMF1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4
WzBdWzNdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVswXSAhPSAwKTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMV1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0
ICYmICh4WzFdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsxXVszXSAhPSAw
KTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0g
cmVzdWx0ICYmICh4WzJdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAoeFsyXVsy
XSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbMl1bM10gIT0gMCk7CisgICAgcmVz
dWx0ID0gcmVzdWx0ICYmICh4WzNdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCAmJiAo
eFszXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgJiYgKHhbM11bMl0gIT0gMCk7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0ICYmICh4WzNdWzNdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7
Cit9CisKK2Jvb2wgYW55KGJvb2wgeCkgeworICAgIHJldHVybiB4OworfQorYm9vbCBhbnkoYm9v
bDIgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8
ICh4WzBdKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sIGFueShib29sMyB4KSB7CisgICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMF0pOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsx
XSk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbCBhbnkoYm9vbDQgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVz
dWx0ID0gcmVzdWx0IHx8ICh4WzBdKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0pOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXSk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkodWNoYXIgeCkgeworICAgIHJl
dHVybiB4ICE9IDA7Cit9Citib29sIGFueSh1Y2hhcjIgeCkgeworICAgIGJvb2wgcmVzdWx0ID0g
ZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdICE9IDApOworICAgIHJlc3VsdCA9
IHJlc3VsdCB8fCAoeFsxXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnko
dWNoYXIzIHgpIHsKKyAgICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3Vs
dCB8fCAoeFswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzJdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sIGFueSh1Y2hhcjQgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVz
dWx0ID0gcmVzdWx0IHx8ICh4WzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsx
XSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMl0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0IHx8ICh4WzNdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFu
eSh1c2hvcnQgeCkgeworICAgIHJldHVybiB4ICE9IDA7Cit9Citib29sIGFueSh1c2hvcnQyIHgp
IHsKKyAgICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsw
XSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2wgYW55KHVzaG9ydDMgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFs
c2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdICE9IDApOworICAgIHJlc3VsdCA9IHJl
c3VsdCB8fCAoeFsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMl0gIT0gMCk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYW55KHVzaG9ydDQgeCkgeworICAgIGJvb2wg
cmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdICE9IDApOworICAg
IHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwg
KHhbMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzNdICE9IDApOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sIGFueSh1aW50IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOwor
fQorYm9vbCBhbnkodWludDIgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVz
dWx0ID0gcmVzdWx0IHx8ICh4WzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsx
XSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkodWludDMgeCkgeworICAg
IGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdICE9IDAp
OworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1
bHQgfHwgKHhbMl0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYW55KHVpbnQ0
IHgpIHsKKyAgICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAo
eFswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmVz
dWx0ID0gcmVzdWx0IHx8ICh4WzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsz
XSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkoY2hhciB4KSB7CisgICAg
cmV0dXJuIHggIT0gMDsKK30KK2Jvb2wgYW55KGNoYXIyIHgpIHsKKyAgICBib29sIHJlc3VsdCA9
IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYW55
KGNoYXIzIHgpIHsKKyAgICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3Vs
dCB8fCAoeFswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzJdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sIGFueShjaGFyNCB4KSB7CisgICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAgICByZXN1
bHQgPSByZXN1bHQgfHwgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFd
ICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbM10gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYW55
KHNob3J0IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorYm9vbCBhbnkoc2hvcnQyIHgpIHsK
KyAgICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXSAh
PSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2wgYW55KHNob3J0MyB4KSB7CisgICAgYm9vbCByZXN1bHQgPSBmYWxzZTsK
KyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0
IHx8ICh4WzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXSAhPSAwKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkoc2hvcnQ0IHgpIHsKKyAgICBib29sIHJlc3Vs
dCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXSAhPSAwKTsKKyAgICByZXN1
bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzJd
ICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFszXSAhPSAwKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbCBhbnkoaW50IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorYm9v
bCBhbnkoaW50MiB4KSB7CisgICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAgICByZXN1bHQgPSBy
ZXN1bHQgfHwgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdICE9IDAp
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFueShpbnQzIHgpIHsKKyAgICBib29sIHJl
c3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4
WzJdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFueShpbnQ0IHgpIHsKKyAg
ICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXSAhPSAw
KTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVz
dWx0IHx8ICh4WzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFszXSAhPSAwKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkoaGFsZiB4KSB7CisgICAgcmV0dXJuIHgg
IT0gMDsKK30KK2Jvb2wgYW55KGhhbGYyIHgpIHsKKyAgICBib29sIHJlc3VsdCA9IGZhbHNlOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQg
fHwgKHhbMV0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYW55KGhhbGYzIHgp
IHsKKyAgICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsw
XSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0IHx8ICh4WzJdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFu
eShoYWxmNCB4KSB7CisgICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAgICByZXN1bHQgPSByZXN1
bHQgfHwgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdICE9IDApOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQg
fHwgKHhbM10gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYW55KGhhbGYyeDIg
eCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4
WzBdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVsxXSAhPSAwKTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0
IHx8ICh4WzFdWzFdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFueShoYWxm
MngzIHgpIHsKKyAgICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8
fCAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMF1bMV0gIT0gMCk7
CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJl
c3VsdCB8fCAoeFsxXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMV0g
IT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzJdICE9IDApOworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sIGFueShoYWxmMng0IHgpIHsKKyAgICBib29sIHJlc3VsdCA9IGZh
bHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBd
WzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVszXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8
ICh4WzFdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXVsyXSAhPSAwKTsK
KyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bM10gIT0gMCk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2wgYW55KGhhbGYzeDIgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3Vs
dCB8fCAoeFswXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMF0gIT0g
MCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzFdICE9IDApOworICAgIHJlc3VsdCA9
IHJlc3VsdCB8fCAoeFsyXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMl1b
MV0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYW55KGhhbGYzeDMgeCkgewor
ICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzBd
ICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVsxXSAhPSAwKTsKKyAgICByZXN1
bHQgPSByZXN1bHQgfHwgKHhbMF1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4
WzFdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXVsxXSAhPSAwKTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0
IHx8ICh4WzJdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVsxXSAhPSAw
KTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMl1bMl0gIT0gMCk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2wgYW55KGhhbGYzeDQgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7
CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJl
c3VsdCB8fCAoeFswXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMF1bMl0g
IT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzNdICE9IDApOworICAgIHJlc3Vs
dCA9IHJlc3VsdCB8fCAoeFsxXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhb
MV1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzJdICE9IDApOworICAg
IHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXVszXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQg
fHwgKHhbMl1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzJdWzFdICE9IDAp
OworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSBy
ZXN1bHQgfHwgKHhbMl1bM10gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wgYW55
KGhhbGY0eDIgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVz
dWx0IHx8ICh4WzBdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVsxXSAh
PSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0IHx8ICh4WzFdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsy
XVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMl1bMV0gIT0gMCk7CisgICAg
cmVzdWx0ID0gcmVzdWx0IHx8ICh4WzNdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8
fCAoeFszXVsxXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkoaGFsZjR4
MyB4KSB7CisgICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwg
KHhbMF1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzFdICE9IDApOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1
bHQgfHwgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzFdICE9
IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXVsyXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbMl1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzJd
WzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVsyXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgfHwgKHhbM11bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8
ICh4WzNdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFszXVsyXSAhPSAwKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkoaGFsZjR4NCB4KSB7CisgICAgYm9vbCBy
ZXN1bHQgPSBmYWxzZTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMF1bMF0gIT0gMCk7Cisg
ICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3Vs
dCB8fCAoeFswXVsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMF1bM10gIT0g
MCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzBdICE9IDApOworICAgIHJlc3VsdCA9
IHJlc3VsdCB8fCAoeFsxXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1b
Ml0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzNdICE9IDApOworICAgIHJl
c3VsdCA9IHJlc3VsdCB8fCAoeFsyXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwg
KHhbMl1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzJdWzJdICE9IDApOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVszXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1
bHQgfHwgKHhbM11bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzNdWzFdICE9
IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFszXVsyXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbM11bM10gIT0gMCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wg
YW55KGZsb2F0IHgpIHsKKyAgICByZXR1cm4geCAhPSAwOworfQorYm9vbCBhbnkoZmxvYXQyIHgp
IHsKKyAgICBib29sIHJlc3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsw
XSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2wgYW55KGZsb2F0MyB4KSB7CisgICAgYm9vbCByZXN1bHQgPSBmYWxz
ZTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVz
dWx0IHx8ICh4WzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXSAhPSAwKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkoZmxvYXQ0IHgpIHsKKyAgICBib29sIHJl
c3VsdCA9IGZhbHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgfHwgKHhbMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4
WzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFszXSAhPSAwKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbCBhbnkoZmxvYXQyeDIgeCkgeworICAgIGJvb2wgcmVzdWx0ID0g
ZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzBdICE9IDApOworICAgIHJlc3Vs
dCA9IHJlc3VsdCB8fCAoeFswXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhb
MV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzFdICE9IDApOworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sIGFueShmbG9hdDJ4MyB4KSB7CisgICAgYm9vbCByZXN1
bHQgPSBmYWxzZTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMF1bMF0gIT0gMCk7CisgICAg
cmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8
fCAoeFswXVsyXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMF0gIT0gMCk7
CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJl
c3VsdCB8fCAoeFsxXVsyXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnko
ZmxvYXQyeDQgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVz
dWx0IHx8ICh4WzBdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVsxXSAh
PSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMF1bMl0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0IHx8ICh4WzBdWzNdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsx
XVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMV0gIT0gMCk7CisgICAg
cmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8
fCAoeFsxXVszXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkoZmxvYXQz
eDIgeCkgeworICAgIGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8
ICh4WzBdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVsxXSAhPSAwKTsK
KyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVz
dWx0IHx8ICh4WzFdWzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVswXSAh
PSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMl1bMV0gIT0gMCk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2wgYW55KGZsb2F0M3gzIHgpIHsKKyAgICBib29sIHJlc3VsdCA9IGZh
bHNlOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBd
WzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXVswXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8
ICh4WzFdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVswXSAhPSAwKTsK
KyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMl1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVz
dWx0IHx8ICh4WzJdWzJdICE9IDApOworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sIGFueShm
bG9hdDN4NCB4KSB7CisgICAgYm9vbCByZXN1bHQgPSBmYWxzZTsKKyAgICByZXN1bHQgPSByZXN1
bHQgfHwgKHhbMF1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzFdICE9
IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVsyXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbMF1bM10gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFd
WzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXVsxXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8
ICh4WzFdWzNdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVswXSAhPSAwKTsK
KyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMl1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVz
dWx0IHx8ICh4WzJdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVszXSAh
PSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkoZmxvYXQ0eDIgeCkgeworICAg
IGJvb2wgcmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzBdICE9
IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVsxXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFd
WzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVswXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgfHwgKHhbMl1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8
ICh4WzNdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFszXVsxXSAhPSAwKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbCBhbnkoZmxvYXQ0eDMgeCkgeworICAgIGJvb2wg
cmVzdWx0ID0gZmFsc2U7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzBdICE9IDApOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVsxXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1
bHQgfHwgKHhbMF1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFdWzBdICE9
IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXVsxXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbMV1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzJd
WzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVsxXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgfHwgKHhbMl1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8
ICh4WzNdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFszXVsxXSAhPSAwKTsK
KyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbM11bMl0gIT0gMCk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2wgYW55KGZsb2F0NHg0IHgpIHsKKyAgICBib29sIHJlc3VsdCA9IGZhbHNlOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVswXSAhPSAwKTsKKyAgICByZXN1bHQgPSByZXN1
bHQgfHwgKHhbMF1bMV0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzBdWzJdICE9
IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFswXVszXSAhPSAwKTsKKyAgICByZXN1bHQg
PSByZXN1bHQgfHwgKHhbMV1bMF0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8ICh4WzFd
WzFdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsxXVsyXSAhPSAwKTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgfHwgKHhbMV1bM10gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVzdWx0IHx8
ICh4WzJdWzBdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsyXVsxXSAhPSAwKTsK
KyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbMl1bMl0gIT0gMCk7CisgICAgcmVzdWx0ID0gcmVz
dWx0IHx8ICh4WzJdWzNdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFszXVswXSAh
PSAwKTsKKyAgICByZXN1bHQgPSByZXN1bHQgfHwgKHhbM11bMV0gIT0gMCk7CisgICAgcmVzdWx0
ID0gcmVzdWx0IHx8ICh4WzNdWzJdICE9IDApOworICAgIHJlc3VsdCA9IHJlc3VsdCB8fCAoeFsz
XVszXSAhPSAwKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCit1Y2hhciBhYnModWNoYXIgeCkg
eworICAgIHJldHVybiB4OworfQordXNob3J0IGFicyh1c2hvcnQgeCkgeworICAgIHJldHVybiB4
OworfQordWludCBhYnModWludCB4KSB7CisgICAgcmV0dXJuIHg7Cit9CitjaGFyIGFicyhjaGFy
IHgpIHsKKyAgICBpZiAoeCA8IDApCisgICAgICAgIHJldHVybiAteDsKKyAgICByZXR1cm4geDsK
K30KK3Nob3J0IGFicyhzaG9ydCB4KSB7CisgICAgaWYgKHggPCAwKQorICAgICAgICByZXR1cm4g
LXg7CisgICAgcmV0dXJuIHg7Cit9CitpbnQgYWJzKGludCB4KSB7CisgICAgaWYgKHggPCAwKQor
ICAgICAgICByZXR1cm4gLXg7CisgICAgcmV0dXJuIHg7Cit9CitoYWxmIGFicyhoYWxmIHgpIHsK
KyAgICBpZiAoeCA8IDApCisgICAgICAgIHJldHVybiAteDsKKyAgICByZXR1cm4geDsKK30KK2Zs
b2F0IGFicyhmbG9hdCB4KSB7CisgICAgaWYgKHggPCAwKQorICAgICAgICByZXR1cm4gLXg7Cisg
ICAgcmV0dXJuIHg7Cit9Cit1Y2hhcjIgYWJzKHVjaGFyMiB4KSB7CisgICAgdWNoYXIyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgYWJzKHVjaGFyMyB4KSB7CisgICAgdWNo
YXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0g
YWJzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGFicyh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IGFicyh1Y2hhcjQgeCkgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gYWJzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFicyh4WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBhYnMoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYWJzKHhbM10pOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQyIGFicyh1c2hvcnQyIHgpIHsKKyAgICB1c2hvcnQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIGFicyh1c2hvcnQzIHgpIHsKKyAgICB1
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFd
ID0gYWJzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGFicyh4WzJdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBhYnModXNob3J0NCB4KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYWJzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFicyh4WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSBhYnMoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYWJzKHhbM10pOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBhYnModWludDIgeCkgeworICAgIHVpbnQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBhYnModWludDMgeCkgeworICAgIHVpbnQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYWJz
KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGFicyh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgYWJzKHVpbnQ0IHgpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYWJzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFicyh4WzFdKTsKKyAgICByZXN1bHRbMl0g
PSBhYnMoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYWJzKHhbM10pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyMiBhYnMoY2hhcjIgeCkgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMyBhYnMoY2hhcjMgeCkgeworICAgIGNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IGFicyh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgYWJz
KGNoYXI0IHgpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYWJzKHhbMF0p
OworICAgIHJlc3VsdFsxXSA9IGFicyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhYnMoeFsyXSk7
CisgICAgcmVzdWx0WzNdID0gYWJzKHhbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDIgYWJzKHNob3J0MiB4KSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
YnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDMgYWJzKHNob3J0MyB4KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0pOworICAgIHJlc3Vs
dFsyXSA9IGFicyh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IGFicyhzaG9y
dDQgeCkgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYWJzKHhbMF0pOwor
ICAgIHJlc3VsdFsxXSA9IGFicyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhYnMoeFsyXSk7Cisg
ICAgcmVzdWx0WzNdID0gYWJzKHhbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIGFi
cyhpbnQyIHgpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7
CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQz
IGFicyhpbnQzIHgpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFsw
XSk7CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGFicyh4WzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBhYnMoaW50NCB4KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYWJzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFicyh4
WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhYnMoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYWJzKHhb
M10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBhYnMoaGFsZjIgeCkgeworICAgIGhh
bGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0WzFdID0g
YWJzKHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBhYnMoaGFsZjMgeCkgewor
ICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAgcmVzdWx0
WzFdID0gYWJzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGFicyh4WzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgYWJzKGhhbGY0IHgpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYWJzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFicyh4WzFdKTsKKyAgICBy
ZXN1bHRbMl0gPSBhYnMoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYWJzKHhbM10pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMngyIGFicyhoYWxmMngyIHgpIHsKKyAgICBoYWxmMngyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gYWJzKHhbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGFicyh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBhYnMoeFsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYy
eDMgYWJzKGhhbGYyeDMgeCkgeworICAgIGhhbGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGFicyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhYnMoeFswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gYWJzKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IGFicyh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhYnMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gYWJzKHhbMV1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMng0IGFicyhoYWxm
Mng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYWJzKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IGFicyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBhYnMoeFswXVszXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gYWJzKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFicyh4WzFd
WzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhYnMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNd
ID0gYWJzKHhbMV1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIGFicyhoYWxm
M3gyIHgpIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYWJzKHhbMF1bMV0pOworICAgIHJlc3VsdFsxXVsw
XSA9IGFicyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhYnMoeFsxXVsxXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gYWJzKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGFicyh4WzJd
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBhYnMoaGFsZjN4MyB4KSB7Cisg
ICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYWJzKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IGFicyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhYnMoeFsw
XVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYWJzKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IGFicyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhYnMoeFsxXVsyXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gYWJzKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGFicyh4WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhYnMoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYzeDQgYWJzKGhhbGYzeDQgeCkgeworICAgIGhhbGYzeDQgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFicyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhYnMoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYWJzKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVsz
XSA9IGFicyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhYnMoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gYWJzKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFicyh4WzFd
WzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhYnMoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gYWJzKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGFicyh4WzJdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSBhYnMoeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gYWJzKHhbMl1b
M10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIGFicyhoYWxmNHgyIHgpIHsKKyAg
ICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gYWJzKHhbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGFicyh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhYnMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBd
ID0gYWJzKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGFicyh4WzJdWzFdKTsKKyAgICBy
ZXN1bHRbM11bMF0gPSBhYnMoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gYWJzKHhbM11b
MV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIGFicyhoYWxmNHgzIHgpIHsKKyAg
ICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gYWJzKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFicyh4WzBd
WzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhYnMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gYWJzKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFicyh4WzFdWzJdKTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhYnMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYWJzKHhbMl1b
MV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGFicyh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0g
PSBhYnMoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gYWJzKHhbM11bMV0pOworICAgIHJl
c3VsdFszXVsyXSA9IGFicyh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4
NCBhYnMoaGFsZjR4NCB4KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYWJzKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFicyh4WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBhYnMoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gYWJzKHhbMF1b
M10pOworICAgIHJlc3VsdFsxXVswXSA9IGFicyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBhYnMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gYWJzKHhbMV1bMl0pOworICAgIHJl
c3VsdFsxXVszXSA9IGFicyh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhYnMoeFsyXVsw
XSk7CisgICAgcmVzdWx0WzJdWzFdID0gYWJzKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9
IGFicyh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBhYnMoeFsyXVszXSk7CisgICAgcmVz
dWx0WzNdWzBdID0gYWJzKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGFicyh4WzNdWzFd
KTsKKyAgICByZXN1bHRbM11bMl0gPSBhYnMoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0g
YWJzKHhbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgYWJzKGZsb2F0MiB4
KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFswXSk7CisgICAg
cmVzdWx0WzFdID0gYWJzKHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgYWJz
KGZsb2F0MyB4KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhYnMoeFsw
XSk7CisgICAgcmVzdWx0WzFdID0gYWJzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGFicyh4WzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGFicyhmbG9hdDQgeCkgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYWJzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9
IGFicyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhYnMoeFsyXSk7CisgICAgcmVzdWx0WzNdID0g
YWJzKHhbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBhYnMoZmxvYXQyeDIg
eCkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gYWJzKHhbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9
IGFicyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhYnMoeFsxXVsxXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngzIGFicyhmbG9hdDJ4MyB4KSB7CisgICAgZmxvYXQyeDMg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFicyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhYnMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYWJzKHhbMF1bMl0pOworICAg
IHJlc3VsdFsxXVswXSA9IGFicyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhYnMoeFsx
XVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gYWJzKHhbMV1bMl0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDJ4NCBhYnMoZmxvYXQyeDQgeCkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYWJz
KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFicyh4WzBdWzJdKTsKKyAgICByZXN1bHRb
MF1bM10gPSBhYnMoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYWJzKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGFicyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhYnMo
eFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gYWJzKHhbMV1bM10pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDN4MiBhYnMoZmxvYXQzeDIgeCkgeworICAgIGZsb2F0M3gyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
YWJzKHhbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGFicyh4WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBhYnMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gYWJzKHhbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IGFicyh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQzeDMgYWJzKGZsb2F0M3gzIHgpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gYWJzKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFicyh4WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhYnMoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gYWJzKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFicyh4WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBhYnMoeFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gYWJzKHhbMl1b
MF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGFicyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0g
PSBhYnMoeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IGFicyhmbG9h
dDN4NCB4KSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFicyh4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhYnMoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gYWJzKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGFicyh4WzBdWzNdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBhYnMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYWJzKHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFicyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1b
M10gPSBhYnMoeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gYWJzKHhbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IGFicyh4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhYnMoeFsy
XVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gYWJzKHhbMl1bM10pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDR4MiBhYnMoZmxvYXQ0eDIgeCkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gYWJz
KHhbMF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IGFicyh4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBhYnMoeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gYWJzKHhbMl1bMF0pOwor
ICAgIHJlc3VsdFsyXVsxXSA9IGFicyh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhYnMo
eFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gYWJzKHhbM11bMV0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDR4MyBhYnMoZmxvYXQ0eDMgeCkgeworICAgIGZsb2F0NHgzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhYnMoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
YWJzKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFicyh4WzBdWzJdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBhYnMoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYWJzKHhbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IGFicyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBh
YnMoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYWJzKHhbMl1bMV0pOworICAgIHJlc3Vs
dFsyXVsyXSA9IGFicyh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhYnMoeFszXVswXSk7
CisgICAgcmVzdWx0WzNdWzFdID0gYWJzKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IGFi
cyh4WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgYWJzKGZsb2F0NHg0
IHgpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYWJzKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFicyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBhYnMoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gYWJzKHhbMF1bM10pOworICAgIHJl
c3VsdFsxXVswXSA9IGFicyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhYnMoeFsxXVsx
XSk7CisgICAgcmVzdWx0WzFdWzJdID0gYWJzKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9
IGFicyh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhYnMoeFsyXVswXSk7CisgICAgcmVz
dWx0WzJdWzFdID0gYWJzKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGFicyh4WzJdWzJd
KTsKKyAgICByZXN1bHRbMl1bM10gPSBhYnMoeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0g
YWJzKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IGFicyh4WzNdWzFdKTsKKyAgICByZXN1
bHRbM11bMl0gPSBhYnMoeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gYWJzKHhbM11bM10p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3VjaGFyIHNpZ24odWNoYXIgeCkgeworICAgIHJl
dHVybiB4ID09IDAgPyAwIDogMTsKK30KK3VzaG9ydCBzaWduKHVzaG9ydCB4KSB7CisgICAgcmV0
dXJuIHggPT0gMCA/IDAgOiAxOworfQordWludCBzaWduKHVpbnQgeCkgeworICAgIHJldHVybiB4
ID09IDAgPyAwIDogMTsKK30KK2NoYXIgc2lnbihjaGFyIHgpIHsKKyAgICBpZiAoeCA8IDApCisg
ICAgICAgIHJldHVybiAtMTsKKyAgICBpZiAoeCA9PSAwKQorICAgICAgICByZXR1cm4gMDsKKyAg
ICByZXR1cm4gMTsKK30KK3Nob3J0IHNpZ24oc2hvcnQgeCkgeworICAgIGlmICh4IDwgMCkKKyAg
ICAgICAgcmV0dXJuIC0xOworICAgIGlmICh4ID09IDApCisgICAgICAgIHJldHVybiAwOworICAg
IHJldHVybiAxOworfQoraW50IHNpZ24oaW50IHgpIHsKKyAgICBpZiAoeCA8IDApCisgICAgICAg
IHJldHVybiAtMTsKKyAgICBpZiAoeCA9PSAwKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1
cm4gMTsKK30KK2hhbGYgc2lnbihoYWxmIHgpIHsKKyAgICBpZiAoeCA8IDApCisgICAgICAgIHJl
dHVybiAtMTsKKyAgICBpZiAoeCA9PSAwKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4g
MTsKK30KK2Zsb2F0IHNpZ24oZmxvYXQgeCkgeworICAgIGlmICh4IDwgMCkKKyAgICAgICAgcmV0
dXJuIC0xOworICAgIGlmICh4ID09IDApCisgICAgICAgIHJldHVybiAwOworICAgIHJldHVybiAx
OworfQordWNoYXIyIHNpZ24odWNoYXIyIHgpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAgcmVzdWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIzIHNpZ24odWNoYXIzIHgpIHsKKyAgICB1Y2hhcjMgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAgcmVzdWx0WzFdID0gc2lnbih4
WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzaWduKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgc2lnbih1Y2hhcjQgeCkgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gc2lnbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaWduKHhbMV0pOworICAgIHJlc3Vs
dFsyXSA9IHNpZ24oeFsyXSk7CisgICAgcmVzdWx0WzNdID0gc2lnbih4WzNdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MiBzaWduKHVzaG9ydDIgeCkgeworICAgIHVzaG9ydDIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAgcmVzdWx0WzFdID0gc2lnbih4
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBzaWduKHVzaG9ydDMgeCkgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAgcmVz
dWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzaWduKHhbMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IHNpZ24odXNob3J0NCB4KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc2lnbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaWdu
KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHNpZ24oeFsyXSk7CisgICAgcmVzdWx0WzNdID0gc2ln
bih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgc2lnbih1aW50MiB4KSB7Cisg
ICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAgcmVzdWx0
WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgc2lnbih1aW50
MyB4KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzaWduKHhbMl0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBzaWduKHVpbnQ0IHgpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc2lnbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaWdu
KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHNpZ24oeFsyXSk7CisgICAgcmVzdWx0WzNdID0gc2ln
bih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgc2lnbihjaGFyMiB4KSB7Cisg
ICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAgcmVzdWx0
WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgc2lnbihjaGFy
MyB4KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzaWduKHhbMl0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBzaWduKGNoYXI0IHgpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc2lnbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaWdu
KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHNpZ24oeFsyXSk7CisgICAgcmVzdWx0WzNdID0gc2ln
bih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIHNpZ24oc2hvcnQyIHgpIHsK
KyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAgcmVz
dWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIHNpZ24o
c2hvcnQzIHgpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFsw
XSk7CisgICAgcmVzdWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzaWduKHhb
Ml0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgc2lnbihzaG9ydDQgeCkgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc2lnbih4WzBdKTsKKyAgICByZXN1bHRb
MV0gPSBzaWduKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHNpZ24oeFsyXSk7CisgICAgcmVzdWx0
WzNdID0gc2lnbih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBzaWduKGludDIg
eCkgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAg
cmVzdWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBzaWdu
KGludDMgeCkgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7
CisgICAgcmVzdWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzaWduKHhbMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IHNpZ24oaW50NCB4KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc2lnbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaWdu
KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHNpZ24oeFsyXSk7CisgICAgcmVzdWx0WzNdID0gc2ln
bih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgc2lnbihoYWxmMiB4KSB7Cisg
ICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAgcmVzdWx0
WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgc2lnbihoYWxm
MyB4KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzaWduKHhbMl0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBzaWduKGhhbGY0IHgpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc2lnbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaWdu
KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHNpZ24oeFsyXSk7CisgICAgcmVzdWx0WzNdID0gc2ln
bih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBzaWduKGhhbGYyeDIgeCkg
eworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpZ24oeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gc2lnbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBz
aWduKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpZ24oeFsxXVsxXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgc2lnbihoYWxmMngzIHgpIHsKKyAgICBoYWxmMngzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaWduKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IHNpZ24oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2lnbih4WzBdWzJdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBzaWduKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpZ24o
eFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2lnbih4WzFdWzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjJ4NCBzaWduKGhhbGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IHNpZ24oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
c2lnbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaWduKHhbMF1bMl0pOworICAgIHJl
c3VsdFswXVszXSA9IHNpZ24oeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2lnbih4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaWduKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IHNpZ24oeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc2lnbih4WzFdWzNdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBzaWduKGhhbGYzeDIgeCkgeworICAgIGhhbGYz
eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpZ24oeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gc2lnbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaWduKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IHNpZ24oeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
c2lnbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaWduKHhbMl1bMV0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIHNpZ24oaGFsZjN4MyB4KSB7CisgICAgaGFsZjN4MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2lnbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBzaWduKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpZ24oeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gc2lnbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaWdu
KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNpZ24oeFsxXVsyXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gc2lnbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaWduKHhbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IHNpZ24oeFsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzeDQgc2lnbihoYWxmM3g0IHgpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBzaWduKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpZ24oeFsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2lnbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1b
M10gPSBzaWduKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHNpZ24oeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gc2lnbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzaWdu
KHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHNpZ24oeFsxXVszXSk7CisgICAgcmVzdWx0
WzJdWzBdID0gc2lnbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaWduKHhbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IHNpZ24oeFsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0g
c2lnbih4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MiBzaWduKGhhbGY0
eDIgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpZ24oeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2lnbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBzaWduKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpZ24oeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gc2lnbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaWdu
KHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IHNpZ24oeFszXVswXSk7CisgICAgcmVzdWx0
WzNdWzFdID0gc2lnbih4WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBz
aWduKGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IHNpZ24oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2lnbih4WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBzaWduKHhbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IHNpZ24oeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2lnbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBzaWduKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IHNpZ24oeFsyXVswXSk7Cisg
ICAgcmVzdWx0WzJdWzFdID0gc2lnbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzaWdu
KHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IHNpZ24oeFszXVswXSk7CisgICAgcmVzdWx0
WzNdWzFdID0gc2lnbih4WzNdWzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBzaWduKHhbM11bMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IHNpZ24oaGFsZjR4NCB4KSB7CisgICAg
aGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2lnbih4WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBzaWduKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpZ24oeFsw
XVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gc2lnbih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBzaWduKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpZ24oeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzFdWzJdID0gc2lnbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzaWdu
KHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHNpZ24oeFsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gc2lnbih4WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzaWduKHhbMl1bMl0p
OworICAgIHJlc3VsdFsyXVszXSA9IHNpZ24oeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0g
c2lnbih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzaWduKHhbM11bMV0pOworICAgIHJl
c3VsdFszXVsyXSA9IHNpZ24oeFszXVsyXSk7CisgICAgcmVzdWx0WzNdWzNdID0gc2lnbih4WzNd
WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyIHNpZ24oZmxvYXQyIHgpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7CisgICAgcmVzdWx0
WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIHNpZ24oZmxv
YXQzIHgpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpZ24oeFswXSk7
CisgICAgcmVzdWx0WzFdID0gc2lnbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBzaWduKHhbMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgc2lnbihmbG9hdDQgeCkgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gc2lnbih4WzBdKTsKKyAgICByZXN1bHRbMV0g
PSBzaWduKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHNpZ24oeFsyXSk7CisgICAgcmVzdWx0WzNd
ID0gc2lnbih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDIgc2lnbihmbG9h
dDJ4MiB4KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpZ24o
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2lnbih4WzBdWzFdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBzaWduKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpZ24oeFsxXVsxXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngzIHNpZ24oZmxvYXQyeDMgeCkgeworICAg
IGZsb2F0MngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaWduKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IHNpZ24oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2lnbih4
WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaWduKHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IHNpZ24oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2lnbih4WzFdWzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDQgc2lnbihmbG9hdDJ4NCB4KSB7CisgICAg
ZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpZ24oeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gc2lnbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaWduKHhb
MF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHNpZ24oeFswXVszXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gc2lnbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaWduKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IHNpZ24oeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc2ln
bih4WzFdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDIgc2lnbihmbG9hdDN4
MiB4KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpZ24oeFsw
XVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2lnbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1b
MF0gPSBzaWduKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpZ24oeFsxXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gc2lnbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaWdu
KHhbMl1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBzaWduKGZsb2F0M3gz
IHgpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2lnbih4WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzaWduKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsy
XSA9IHNpZ24oeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2lnbih4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBzaWduKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNpZ24o
eFsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc2lnbih4WzJdWzBdKTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBzaWduKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHNpZ24oeFsyXVsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IHNpZ24oZmxvYXQzeDQgeCkgeworICAg
IGZsb2F0M3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaWduKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IHNpZ24oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2lnbih4
WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBzaWduKHhbMF1bM10pOworICAgIHJlc3VsdFsx
XVswXSA9IHNpZ24oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2lnbih4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBzaWduKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHNp
Z24oeFsxXVszXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc2lnbih4WzJdWzBdKTsKKyAgICByZXN1
bHRbMl1bMV0gPSBzaWduKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHNpZ24oeFsyXVsy
XSk7CisgICAgcmVzdWx0WzJdWzNdID0gc2lnbih4WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0eDIgc2lnbihmbG9hdDR4MiB4KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IHNpZ24oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2ln
bih4WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaWduKHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IHNpZ24oeFsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gc2lnbih4WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaWduKHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9
IHNpZ24oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc2lnbih4WzNdWzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDMgc2lnbihmbG9hdDR4MyB4KSB7CisgICAgZmxvYXQ0
eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpZ24oeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gc2lnbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaWduKHhbMF1bMl0p
OworICAgIHJlc3VsdFsxXVswXSA9IHNpZ24oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
c2lnbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzaWduKHhbMV1bMl0pOworICAgIHJl
c3VsdFsyXVswXSA9IHNpZ24oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2lnbih4WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBzaWduKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVsw
XSA9IHNpZ24oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc2lnbih4WzNdWzFdKTsKKyAg
ICByZXN1bHRbM11bMl0gPSBzaWduKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDR4NCBzaWduKGZsb2F0NHg0IHgpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gc2lnbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzaWduKHhbMF1b
MV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpZ24oeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNd
ID0gc2lnbih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaWduKHhbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IHNpZ24oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2lnbih4
WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzaWduKHhbMV1bM10pOworICAgIHJlc3VsdFsy
XVswXSA9IHNpZ24oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2lnbih4WzJdWzFdKTsK
KyAgICByZXN1bHRbMl1bMl0gPSBzaWduKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHNp
Z24oeFsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gc2lnbih4WzNdWzBdKTsKKyAgICByZXN1
bHRbM11bMV0gPSBzaWduKHhbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IHNpZ24oeFszXVsy
XSk7CisgICAgcmVzdWx0WzNdWzNdID0gc2lnbih4WzNdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorCit1Y2hhciBtaW4odWNoYXIgeCwgdWNoYXIgeSkgeworICAgIHJldHVybiB4ID4geSA/
IHkgOiB4OworfQordWNoYXIgbWF4KHVjaGFyIHgsIHVjaGFyIHkpIHsKKyAgICByZXR1cm4geCA+
IHkgPyB4IDogeTsKK30KK3VjaGFyMiBtaW4odWNoYXIyIHgsIHVjaGFyMiB5KSB7CisgICAgdWNo
YXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtaW4oeFswXSwgeVswXSk7CisgICAgcmVzdWx0
WzFdID0gbWluKHhbMV0sIHlbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgbWlu
KHVjaGFyMyB4LCB1Y2hhcjMgeSkgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gbWluKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1pbih4WzFdLCB5WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSBtaW4oeFsyXSwgeVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBtaW4odWNoYXI0IHgsIHVjaGFyNCB5KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBtaW4oeFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gbWluKHhbMV0sIHlb
MV0pOworICAgIHJlc3VsdFsyXSA9IG1pbih4WzJdLCB5WzJdKTsKKyAgICByZXN1bHRbM10gPSBt
aW4oeFszXSwgeVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBtYXgodWNoYXIy
IHgsIHVjaGFyMiB5KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtYXgo
eFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gbWF4KHhbMV0sIHlbMV0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjMgbWF4KHVjaGFyMyB4LCB1Y2hhcjMgeSkgeworICAgIHVjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbWF4KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsx
XSA9IG1heCh4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBtYXgoeFsyXSwgeVsyXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBtYXgodWNoYXI0IHgsIHVjaGFyNCB5KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtYXgoeFswXSwgeVswXSk7CisgICAg
cmVzdWx0WzFdID0gbWF4KHhbMV0sIHlbMV0pOworICAgIHJlc3VsdFsyXSA9IG1heCh4WzJdLCB5
WzJdKTsKKyAgICByZXN1bHRbM10gPSBtYXgoeFszXSwgeVszXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KKwordXNob3J0IG1pbih1c2hvcnQgeCwgdXNob3J0IHkpIHsKKyAgICByZXR1cm4geCA+
IHkgPyB5IDogeDsKK30KK3VzaG9ydCBtYXgodXNob3J0IHgsIHVzaG9ydCB5KSB7CisgICAgcmV0
dXJuIHggPiB5ID8geCA6IHk7Cit9Cit1c2hvcnQyIG1pbih1c2hvcnQyIHgsIHVzaG9ydDIgeSkg
eworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1pbih4WzBdLCB5WzBdKTsK
KyAgICByZXN1bHRbMV0gPSBtaW4oeFsxXSwgeVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDMgbWluKHVzaG9ydDMgeCwgdXNob3J0MyB5KSB7CisgICAgdXNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gbWluKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1pbih4
WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBtaW4oeFsyXSwgeVsyXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgbWluKHVzaG9ydDQgeCwgdXNob3J0NCB5KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbWluKHhbMF0sIHlbMF0pOworICAgIHJlc3Vs
dFsxXSA9IG1pbih4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBtaW4oeFsyXSwgeVsyXSk7
CisgICAgcmVzdWx0WzNdID0gbWluKHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQyIG1heCh1c2hvcnQyIHgsIHVzaG9ydDIgeSkgeworICAgIHVzaG9ydDIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IG1heCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtYXgo
eFsxXSwgeVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgbWF4KHVzaG9ydDMg
eCwgdXNob3J0MyB5KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbWF4
KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1heCh4WzFdLCB5WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBtYXgoeFsyXSwgeVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
bWF4KHVzaG9ydDQgeCwgdXNob3J0NCB5KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gbWF4KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1heCh4WzFdLCB5WzFd
KTsKKyAgICByZXN1bHRbMl0gPSBtYXgoeFsyXSwgeVsyXSk7CisgICAgcmVzdWx0WzNdID0gbWF4
KHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3VpbnQgbWluKHVpbnQgeCwg
dWludCB5KSB7CisgICAgcmV0dXJuIHggPiB5ID8geSA6IHg7Cit9Cit1aW50IG1heCh1aW50IHgs
IHVpbnQgeSkgeworICAgIHJldHVybiB4ID4geSA/IHggOiB5OworfQordWludDIgbWluKHVpbnQy
IHgsIHVpbnQyIHkpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbWluKHhb
MF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1pbih4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDMgbWluKHVpbnQzIHgsIHVpbnQzIHkpIHsKKyAgICB1aW50MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gbWluKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1p
bih4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBtaW4oeFsyXSwgeVsyXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG1pbih1aW50NCB4LCB1aW50NCB5KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1pbih4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0g
PSBtaW4oeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJdID0gbWluKHhbMl0sIHlbMl0pOworICAg
IHJlc3VsdFszXSA9IG1pbih4WzNdLCB5WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDIgbWF4KHVpbnQyIHgsIHVpbnQyIHkpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gbWF4KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1heCh4WzFdLCB5WzFdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgbWF4KHVpbnQzIHgsIHVpbnQzIHkpIHsKKyAg
ICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbWF4KHhbMF0sIHlbMF0pOworICAgIHJl
c3VsdFsxXSA9IG1heCh4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBtYXgoeFsyXSwgeVsy
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG1heCh1aW50NCB4LCB1aW50NCB5KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1heCh4WzBdLCB5WzBdKTsKKyAg
ICByZXN1bHRbMV0gPSBtYXgoeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJdID0gbWF4KHhbMl0s
IHlbMl0pOworICAgIHJlc3VsdFszXSA9IG1heCh4WzNdLCB5WzNdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorCitjaGFyIG1pbihjaGFyIHgsIGNoYXIgeSkgeworICAgIHJldHVybiB4ID4geSA/
IHkgOiB4OworfQorY2hhciBtYXgoY2hhciB4LCBjaGFyIHkpIHsKKyAgICByZXR1cm4geCA+IHkg
PyB4IDogeTsKK30KK2NoYXIyIG1pbihjaGFyMiB4LCBjaGFyMiB5KSB7CisgICAgY2hhcjIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IG1pbih4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBt
aW4oeFsxXSwgeVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG1pbihjaGFyMyB4
LCBjaGFyMyB5KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1pbih4WzBd
LCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtaW4oeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJd
ID0gbWluKHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBtaW4oY2hh
cjQgeCwgY2hhcjQgeSkgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtaW4o
eFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gbWluKHhbMV0sIHlbMV0pOworICAgIHJlc3Vs
dFsyXSA9IG1pbih4WzJdLCB5WzJdKTsKKyAgICByZXN1bHRbM10gPSBtaW4oeFszXSwgeVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG1heChjaGFyMiB4LCBjaGFyMiB5KSB7Cisg
ICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1heCh4WzBdLCB5WzBdKTsKKyAgICBy
ZXN1bHRbMV0gPSBtYXgoeFsxXSwgeVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIz
IG1heChjaGFyMyB4LCBjaGFyMyB5KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IG1heCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtYXgoeFsxXSwgeVsxXSk7Cisg
ICAgcmVzdWx0WzJdID0gbWF4KHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBtYXgoY2hhcjQgeCwgY2hhcjQgeSkgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBtYXgoeFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0gbWF4KHhbMV0sIHlbMV0p
OworICAgIHJlc3VsdFsyXSA9IG1heCh4WzJdLCB5WzJdKTsKKyAgICByZXN1bHRbM10gPSBtYXgo
eFszXSwgeVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworc2hvcnQgbWluKHNob3J0IHgs
IHNob3J0IHkpIHsKKyAgICByZXR1cm4geCA+IHkgPyB5IDogeDsKK30KK3Nob3J0IG1heChzaG9y
dCB4LCBzaG9ydCB5KSB7CisgICAgcmV0dXJuIHggPiB5ID8geCA6IHk7Cit9CitzaG9ydDIgbWlu
KHNob3J0MiB4LCBzaG9ydDIgeSkgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gbWluKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1pbih4WzFdLCB5WzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG1pbihzaG9ydDMgeCwgc2hvcnQzIHkpIHsKKyAg
ICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1pbih4WzBdLCB5WzBdKTsKKyAgICBy
ZXN1bHRbMV0gPSBtaW4oeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJdID0gbWluKHhbMl0sIHlb
Ml0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgbWluKHNob3J0NCB4LCBzaG9ydDQg
eSkgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbWluKHhbMF0sIHlbMF0p
OworICAgIHJlc3VsdFsxXSA9IG1pbih4WzFdLCB5WzFdKTsKKyAgICByZXN1bHRbMl0gPSBtaW4o
eFsyXSwgeVsyXSk7CisgICAgcmVzdWx0WzNdID0gbWluKHhbM10sIHlbM10pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDIgbWF4KHNob3J0MiB4LCBzaG9ydDIgeSkgeworICAgIHNob3J0
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbWF4KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsx
XSA9IG1heCh4WzFdLCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG1heChz
aG9ydDMgeCwgc2hvcnQzIHkpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IG1heCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtYXgoeFsxXSwgeVsxXSk7CisgICAg
cmVzdWx0WzJdID0gbWF4KHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgbWF4KHNob3J0NCB4LCBzaG9ydDQgeSkgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gbWF4KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1heCh4WzFdLCB5WzFd
KTsKKyAgICByZXN1bHRbMl0gPSBtYXgoeFsyXSwgeVsyXSk7CisgICAgcmVzdWx0WzNdID0gbWF4
KHhbM10sIHlbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2ludCBtaW4oaW50IHgsIGlu
dCB5KSB7CisgICAgcmV0dXJuIHggPiB5ID8geSA6IHg7Cit9CitpbnQgbWF4KGludCB4LCBpbnQg
eSkgeworICAgIHJldHVybiB4ID4geSA/IHggOiB5OworfQoraW50MiBtaW4oaW50MiB4LCBpbnQy
IHkpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtaW4oeFswXSwgeVswXSk7
CisgICAgcmVzdWx0WzFdID0gbWluKHhbMV0sIHlbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQzIG1pbihpbnQzIHgsIGludDMgeSkgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IG1pbih4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtaW4oeFsxXSwgeVsxXSk7
CisgICAgcmVzdWx0WzJdID0gbWluKHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG1pbihpbnQ0IHgsIGludDQgeSkgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IG1pbih4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtaW4oeFsxXSwgeVsxXSk7
CisgICAgcmVzdWx0WzJdID0gbWluKHhbMl0sIHlbMl0pOworICAgIHJlc3VsdFszXSA9IG1pbih4
WzNdLCB5WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBtYXgoaW50MiB4LCBpbnQy
IHkpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtYXgoeFswXSwgeVswXSk7
CisgICAgcmVzdWx0WzFdID0gbWF4KHhbMV0sIHlbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQzIG1heChpbnQzIHgsIGludDMgeSkgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IG1heCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtYXgoeFsxXSwgeVsxXSk7
CisgICAgcmVzdWx0WzJdID0gbWF4KHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG1heChpbnQ0IHgsIGludDQgeSkgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IG1heCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtYXgoeFsxXSwgeVsxXSk7
CisgICAgcmVzdWx0WzJdID0gbWF4KHhbMl0sIHlbMl0pOworICAgIHJlc3VsdFszXSA9IG1heCh4
WzNdLCB5WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitoYWxmIG1pbihoYWxmIHgsIGhh
bGYgeSkgeworICAgIHJldHVybiB4ID4geSA/IHkgOiB4OworfQoraGFsZiBtYXgoaGFsZiB4LCBo
YWxmIHkpIHsKKyAgICByZXR1cm4geCA+IHkgPyB4IDogeTsKK30KK2hhbGYyIG1pbihoYWxmMiB4
LCBoYWxmMiB5KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1pbih4WzBd
LCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtaW4oeFsxXSwgeVsxXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzIG1pbihoYWxmMyB4LCBoYWxmMyB5KSB7CisgICAgaGFsZjMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IG1pbih4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtaW4o
eFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJdID0gbWluKHhbMl0sIHlbMl0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBtaW4oaGFsZjQgeCwgaGFsZjQgeSkgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBtaW4oeFswXSwgeVswXSk7CisgICAgcmVzdWx0WzFdID0g
bWluKHhbMV0sIHlbMV0pOworICAgIHJlc3VsdFsyXSA9IG1pbih4WzJdLCB5WzJdKTsKKyAgICBy
ZXN1bHRbM10gPSBtaW4oeFszXSwgeVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYy
eDIgbWluKGhhbGYyeDIgeCwgaGFsZjJ4MiB5KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gbWluKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IG1pbih4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtaW4oeFsxXVswXSwg
eVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbWluKHhbMV1bMV0sIHlbMV1bMV0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIG1pbihoYWxmMngzIHgsIGhhbGYyeDMgeSkgewor
ICAgIGhhbGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IG1pbih4WzBdWzBdLCB5WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBtaW4oeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gbWluKHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IG1p
bih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtaW4oeFsxXVsxXSwgeVsx
XVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbWluKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMng0IG1pbihoYWxmMng0IHgsIGhhbGYyeDQgeSkgeworICAg
IGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IG1pbih4WzBdWzBdLCB5WzBdWzBd
KTsKKyAgICByZXN1bHRbMF1bMV0gPSBtaW4oeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gbWluKHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IG1pbih4
WzBdWzNdLCB5WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtaW4oeFsxXVswXSwgeVsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gbWluKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IG1pbih4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBtaW4o
eFsxXVszXSwgeVsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgbWluKGhh
bGYzeDIgeCwgaGFsZjN4MiB5KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gbWluKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1pbih4WzBd
WzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtaW4oeFsxXVswXSwgeVsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gbWluKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsy
XVswXSA9IG1pbih4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtaW4oeFsy
XVsxXSwgeVsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgbWluKGhhbGYz
eDMgeCwgaGFsZjN4MyB5KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gbWluKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1pbih4WzBdWzFd
LCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtaW4oeFswXVsyXSwgeVswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gbWluKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IG1pbih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtaW4oeFsxXVsy
XSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWluKHhbMl1bMF0sIHlbMl1bMF0pOwor
ICAgIHJlc3VsdFsyXVsxXSA9IG1pbih4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBtaW4oeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
eDQgbWluKGhhbGYzeDQgeCwgaGFsZjN4NCB5KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gbWluKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IG1pbih4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtaW4oeFswXVsyXSwg
eVswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gbWluKHhbMF1bM10sIHlbMF1bM10pOworICAg
IHJlc3VsdFsxXVswXSA9IG1pbih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBtaW4oeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbWluKHhbMV1bMl0s
IHlbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IG1pbih4WzFdWzNdLCB5WzFdWzNdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBtaW4oeFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gbWluKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IG1pbih4WzJdWzJd
LCB5WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBtaW4oeFsyXVszXSwgeVsyXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgbWluKGhhbGY0eDIgeCwgaGFsZjR4MiB5KSB7
CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbWluKHhbMF1bMF0sIHlb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1pbih4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBtaW4oeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
bWluKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IG1pbih4WzJdWzBdLCB5
WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtaW4oeFsyXVsxXSwgeVsyXVsxXSk7CisgICAg
cmVzdWx0WzNdWzBdID0gbWluKHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9
IG1pbih4WzNdWzFdLCB5WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBt
aW4oaGFsZjR4MyB4LCBoYWxmNHgzIHkpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBtaW4oeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWlu
KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IG1pbih4WzBdWzJdLCB5WzBd
WzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtaW4oeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gbWluKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IG1p
bih4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtaW4oeFsyXVswXSwgeVsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbWluKHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJl
c3VsdFsyXVsyXSA9IG1pbih4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBt
aW4oeFszXVswXSwgeVszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbWluKHhbM11bMV0sIHlb
M11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IG1pbih4WzNdWzJdLCB5WzNdWzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBtaW4oaGFsZjR4NCB4LCBoYWxmNHg0IHkpIHsKKyAg
ICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtaW4oeFswXVswXSwgeVswXVsw
XSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWluKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3Vs
dFswXVsyXSA9IG1pbih4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBtaW4o
eFswXVszXSwgeVswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbWluKHhbMV1bMF0sIHlbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IG1pbih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBtaW4oeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gbWlu
KHhbMV1bM10sIHlbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IG1pbih4WzJdWzBdLCB5WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtaW4oeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmVz
dWx0WzJdWzJdID0gbWluKHhbMl1bMl0sIHlbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IG1p
bih4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBtaW4oeFszXVswXSwgeVsz
XVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbWluKHhbM11bMV0sIHlbM11bMV0pOworICAgIHJl
c3VsdFszXVsyXSA9IG1pbih4WzNdWzJdLCB5WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBt
aW4oeFszXVszXSwgeVszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG1heCho
YWxmMiB4LCBoYWxmMiB5KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1h
eCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtYXgoeFsxXSwgeVsxXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYzIG1heChoYWxmMyB4LCBoYWxmMyB5KSB7CisgICAgaGFsZjMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1heCh4WzBdLCB5WzBdKTsKKyAgICByZXN1bHRbMV0g
PSBtYXgoeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJdID0gbWF4KHhbMl0sIHlbMl0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBtYXgoaGFsZjQgeCwgaGFsZjQgeSkgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtYXgoeFswXSwgeVswXSk7CisgICAgcmVzdWx0
WzFdID0gbWF4KHhbMV0sIHlbMV0pOworICAgIHJlc3VsdFsyXSA9IG1heCh4WzJdLCB5WzJdKTsK
KyAgICByZXN1bHRbM10gPSBtYXgoeFszXSwgeVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDIgbWF4KGhhbGYyeDIgeCwgaGFsZjJ4MiB5KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gbWF4KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IG1heCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtYXgoeFsx
XVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbWF4KHhbMV1bMV0sIHlbMV1bMV0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIG1heChoYWxmMngzIHgsIGhhbGYyeDMg
eSkgeworICAgIGhhbGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IG1heCh4WzBdWzBd
LCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBtYXgoeFswXVsxXSwgeVswXVsxXSk7Cisg
ICAgcmVzdWx0WzBdWzJdID0gbWF4KHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFsxXVsw
XSA9IG1heCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYXgoeFsxXVsx
XSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbWF4KHhbMV1bMl0sIHlbMV1bMl0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMng0IG1heChoYWxmMng0IHgsIGhhbGYyeDQgeSkg
eworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IG1heCh4WzBdWzBdLCB5
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBtYXgoeFswXVsxXSwgeVswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gbWF4KHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9
IG1heCh4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtYXgoeFsxXVswXSwg
eVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbWF4KHhbMV1bMV0sIHlbMV1bMV0pOworICAg
IHJlc3VsdFsxXVsyXSA9IG1heCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10g
PSBtYXgoeFsxXVszXSwgeVsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIg
bWF4KGhhbGYzeDIgeCwgaGFsZjN4MiB5KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gbWF4KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1h
eCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtYXgoeFsxXVswXSwgeVsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gbWF4KHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJl
c3VsdFsyXVswXSA9IG1heCh4WzJdWzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBt
YXgoeFsyXVsxXSwgeVsyXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgbWF4
KGhhbGYzeDMgeCwgaGFsZjN4MyB5KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gbWF4KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1heCh4
WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtYXgoeFswXVsyXSwgeVswXVsy
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gbWF4KHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IG1heCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtYXgo
eFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWF4KHhbMl1bMF0sIHlbMl1b
MF0pOworICAgIHJlc3VsdFsyXVsxXSA9IG1heCh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1
bHRbMl1bMl0gPSBtYXgoeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYzeDQgbWF4KGhhbGYzeDQgeCwgaGFsZjN4NCB5KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gbWF4KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IG1heCh4WzBdWzFdLCB5WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtYXgoeFsw
XVsyXSwgeVswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gbWF4KHhbMF1bM10sIHlbMF1bM10p
OworICAgIHJlc3VsdFsxXVswXSA9IG1heCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBtYXgoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gbWF4KHhb
MV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IG1heCh4WzFdWzNdLCB5WzFdWzNd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSBtYXgoeFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0
WzJdWzFdID0gbWF4KHhbMl1bMV0sIHlbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IG1heCh4
WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBtYXgoeFsyXVszXSwgeVsyXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgbWF4KGhhbGY0eDIgeCwgaGFsZjR4
MiB5KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbWF4KHhbMF1b
MF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1heCh4WzBdWzFdLCB5WzBdWzFdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBtYXgoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gbWF4KHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IG1heCh4WzJd
WzBdLCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtYXgoeFsyXVsxXSwgeVsyXVsxXSk7
CisgICAgcmVzdWx0WzNdWzBdID0gbWF4KHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFsz
XVsxXSA9IG1heCh4WzNdWzFdLCB5WzNdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjR4MyBtYXgoaGFsZjR4MyB4LCBoYWxmNHgzIHkpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBtYXgoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gbWF4KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IG1heCh4WzBdWzJd
LCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtYXgoeFsxXVswXSwgeVsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gbWF4KHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IG1heCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtYXgoeFsyXVsw
XSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbWF4KHhbMl1bMV0sIHlbMl1bMV0pOwor
ICAgIHJlc3VsdFsyXVsyXSA9IG1heCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbM11b
MF0gPSBtYXgoeFszXVswXSwgeVszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbWF4KHhbM11b
MV0sIHlbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IG1heCh4WzNdWzJdLCB5WzNdWzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBtYXgoaGFsZjR4NCB4LCBoYWxmNHg0IHkp
IHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYXgoeFswXVswXSwg
eVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWF4KHhbMF1bMV0sIHlbMF1bMV0pOworICAg
IHJlc3VsdFswXVsyXSA9IG1heCh4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10g
PSBtYXgoeFswXVszXSwgeVswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbWF4KHhbMV1bMF0s
IHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IG1heCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBtYXgoeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNd
ID0gbWF4KHhbMV1bM10sIHlbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IG1heCh4WzJdWzBd
LCB5WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtYXgoeFsyXVsxXSwgeVsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gbWF4KHhbMl1bMl0sIHlbMl1bMl0pOworICAgIHJlc3VsdFsyXVsz
XSA9IG1heCh4WzJdWzNdLCB5WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBtYXgoeFszXVsw
XSwgeVszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbWF4KHhbM11bMV0sIHlbM11bMV0pOwor
ICAgIHJlc3VsdFszXVsyXSA9IG1heCh4WzNdWzJdLCB5WzNdWzJdKTsKKyAgICByZXN1bHRbM11b
M10gPSBtYXgoeFszXVszXSwgeVszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworZmxv
YXQgbWluKGZsb2F0IHgsIGZsb2F0IHkpIHsKKyAgICByZXR1cm4geCA+IHkgPyB5IDogeDsKK30K
K2Zsb2F0IG1heChmbG9hdCB4LCBmbG9hdCB5KSB7CisgICAgcmV0dXJuIHggPiB5ID8geCA6IHk7
Cit9CitmbG9hdDIgbWluKGZsb2F0MiB4LCBmbG9hdDIgeSkgeworICAgIGZsb2F0MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gbWluKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1pbih4
WzFdLCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG1pbihmbG9hdDMgeCwg
ZmxvYXQzIHkpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1pbih4WzBd
LCB5WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtaW4oeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJd
ID0gbWluKHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgbWluKGZs
b2F0NCB4LCBmbG9hdDQgeSkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
bWluKHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1pbih4WzFdLCB5WzFdKTsKKyAgICBy
ZXN1bHRbMl0gPSBtaW4oeFsyXSwgeVsyXSk7CisgICAgcmVzdWx0WzNdID0gbWluKHhbM10sIHlb
M10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBtaW4oZmxvYXQyeDIgeCwgZmxv
YXQyeDIgeSkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtaW4o
eFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWluKHhbMF1bMV0sIHlbMF1b
MV0pOworICAgIHJlc3VsdFsxXVswXSA9IG1pbih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBtaW4oeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MngzIG1pbihmbG9hdDJ4MyB4LCBmbG9hdDJ4MyB5KSB7CisgICAgZmxvYXQyeDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IG1pbih4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBtaW4oeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbWlu
KHhbMF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IG1pbih4WzFdWzBdLCB5WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtaW4oeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gbWluKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDJ4NCBtaW4oZmxvYXQyeDQgeCwgZmxvYXQyeDQgeSkgeworICAgIGZsb2F0Mng0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtaW4oeFswXVswXSwgeVswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gbWluKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IG1p
bih4WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBtaW4oeFswXVszXSwgeVsw
XVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gbWluKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IG1pbih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBt
aW4oeFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gbWluKHhbMV1bM10sIHlb
MV1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBtaW4oZmxvYXQzeDIgeCwg
ZmxvYXQzeDIgeSkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBt
aW4oeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWluKHhbMF1bMV0sIHlb
MF1bMV0pOworICAgIHJlc3VsdFsxXVswXSA9IG1pbih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBtaW4oeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
bWluKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IG1pbih4WzJdWzFdLCB5
WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgbWluKGZsb2F0M3gzIHgs
IGZsb2F0M3gzIHkpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
bWluKHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1pbih4WzBdWzFdLCB5
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtaW4oeFswXVsyXSwgeVswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gbWluKHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9
IG1pbih4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtaW4oeFsxXVsyXSwg
eVsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWluKHhbMl1bMF0sIHlbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IG1pbih4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0g
PSBtaW4oeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0
IG1pbihmbG9hdDN4NCB4LCBmbG9hdDN4NCB5KSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IG1pbih4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBtaW4oeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbWluKHhbMF1bMl0s
IHlbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IG1pbih4WzBdWzNdLCB5WzBdWzNdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSBtaW4oeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gbWluKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IG1pbih4WzFdWzJd
LCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBtaW4oeFsxXVszXSwgeVsxXVszXSk7Cisg
ICAgcmVzdWx0WzJdWzBdID0gbWluKHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IG1pbih4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBtaW4oeFsyXVsy
XSwgeVsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gbWluKHhbMl1bM10sIHlbMl1bM10pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiBtaW4oZmxvYXQ0eDIgeCwgZmxvYXQ0eDIg
eSkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtaW4oeFswXVsw
XSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWluKHhbMF1bMV0sIHlbMF1bMV0pOwor
ICAgIHJlc3VsdFsxXVswXSA9IG1pbih4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBtaW4oeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWluKHhbMl1b
MF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IG1pbih4WzJdWzFdLCB5WzJdWzFdKTsK
KyAgICByZXN1bHRbM11bMF0gPSBtaW4oeFszXVswXSwgeVszXVswXSk7CisgICAgcmVzdWx0WzNd
WzFdID0gbWluKHhbM11bMV0sIHlbM11bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDR4MyBtaW4oZmxvYXQ0eDMgeCwgZmxvYXQ0eDMgeSkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBtaW4oeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gbWluKHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IG1pbih4WzBd
WzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtaW4oeFsxXVswXSwgeVsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gbWluKHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsx
XVsyXSA9IG1pbih4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtaW4oeFsy
XVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbWluKHhbMl1bMV0sIHlbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IG1pbih4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRb
M11bMF0gPSBtaW4oeFszXVswXSwgeVszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbWluKHhb
M11bMV0sIHlbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IG1pbih4WzNdWzJdLCB5WzNdWzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgbWluKGZsb2F0NHg0IHgsIGZsb2F0
NHg0IHkpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbWluKHhb
MF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1pbih4WzBdWzFdLCB5WzBdWzFd
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBtaW4oeFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVzdWx0
WzBdWzNdID0gbWluKHhbMF1bM10sIHlbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IG1pbih4
WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtaW4oeFsxXVsxXSwgeVsxXVsx
XSk7CisgICAgcmVzdWx0WzFdWzJdID0gbWluKHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3Vs
dFsxXVszXSA9IG1pbih4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtaW4o
eFsyXVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbWluKHhbMl1bMV0sIHlbMl1b
MV0pOworICAgIHJlc3VsdFsyXVsyXSA9IG1pbih4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1
bHRbMl1bM10gPSBtaW4oeFsyXVszXSwgeVsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gbWlu
KHhbM11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IG1pbih4WzNdWzFdLCB5WzNd
WzFdKTsKKyAgICByZXN1bHRbM11bMl0gPSBtaW4oeFszXVsyXSwgeVszXVsyXSk7CisgICAgcmVz
dWx0WzNdWzNdID0gbWluKHhbM11bM10sIHlbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDIgbWF4KGZsb2F0MiB4LCBmbG9hdDIgeSkgeworICAgIGZsb2F0MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gbWF4KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1heCh4WzFd
LCB5WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG1heChmbG9hdDMgeCwgZmxv
YXQzIHkpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IG1heCh4WzBdLCB5
WzBdKTsKKyAgICByZXN1bHRbMV0gPSBtYXgoeFsxXSwgeVsxXSk7CisgICAgcmVzdWx0WzJdID0g
bWF4KHhbMl0sIHlbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgbWF4KGZsb2F0
NCB4LCBmbG9hdDQgeSkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbWF4
KHhbMF0sIHlbMF0pOworICAgIHJlc3VsdFsxXSA9IG1heCh4WzFdLCB5WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBtYXgoeFsyXSwgeVsyXSk7CisgICAgcmVzdWx0WzNdID0gbWF4KHhbM10sIHlbM10p
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBtYXgoZmxvYXQyeDIgeCwgZmxvYXQy
eDIgeSkgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYXgoeFsw
XVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWF4KHhbMF1bMV0sIHlbMF1bMV0p
OworICAgIHJlc3VsdFsxXVswXSA9IG1heCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBtYXgoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MngzIG1heChmbG9hdDJ4MyB4LCBmbG9hdDJ4MyB5KSB7CisgICAgZmxvYXQyeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IG1heCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBtYXgoeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbWF4KHhb
MF1bMl0sIHlbMF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IG1heCh4WzFdWzBdLCB5WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYXgoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gbWF4KHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDJ4NCBtYXgoZmxvYXQyeDQgeCwgZmxvYXQyeDQgeSkgeworICAgIGZsb2F0Mng0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYXgoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gbWF4KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IG1heCh4
WzBdWzJdLCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBtYXgoeFswXVszXSwgeVswXVsz
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gbWF4KHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IG1heCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtYXgo
eFsxXVsyXSwgeVsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gbWF4KHhbMV1bM10sIHlbMV1b
M10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBtYXgoZmxvYXQzeDIgeCwgZmxv
YXQzeDIgeSkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYXgo
eFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWF4KHhbMF1bMV0sIHlbMF1b
MV0pOworICAgIHJlc3VsdFsxXVswXSA9IG1heCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1
bHRbMV1bMV0gPSBtYXgoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWF4
KHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IG1heCh4WzJdWzFdLCB5WzJd
WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgbWF4KGZsb2F0M3gzIHgsIGZs
b2F0M3gzIHkpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbWF4
KHhbMF1bMF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1heCh4WzBdWzFdLCB5WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtYXgoeFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gbWF4KHhbMV1bMF0sIHlbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IG1h
eCh4WzFdWzFdLCB5WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtYXgoeFsxXVsyXSwgeVsx
XVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWF4KHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJl
c3VsdFsyXVsxXSA9IG1heCh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBt
YXgoeFsyXVsyXSwgeVsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IG1h
eChmbG9hdDN4NCB4LCBmbG9hdDN4NCB5KSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IG1heCh4WzBdWzBdLCB5WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBt
YXgoeFswXVsxXSwgeVswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gbWF4KHhbMF1bMl0sIHlb
MF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IG1heCh4WzBdWzNdLCB5WzBdWzNdKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBtYXgoeFsxXVswXSwgeVsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
bWF4KHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IG1heCh4WzFdWzJdLCB5
WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBtYXgoeFsxXVszXSwgeVsxXVszXSk7CisgICAg
cmVzdWx0WzJdWzBdID0gbWF4KHhbMl1bMF0sIHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IG1heCh4WzJdWzFdLCB5WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBtYXgoeFsyXVsyXSwg
eVsyXVsyXSk7CisgICAgcmVzdWx0WzJdWzNdID0gbWF4KHhbMl1bM10sIHlbMl1bM10pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiBtYXgoZmxvYXQ0eDIgeCwgZmxvYXQ0eDIgeSkg
eworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtYXgoeFswXVswXSwg
eVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gbWF4KHhbMF1bMV0sIHlbMF1bMV0pOworICAg
IHJlc3VsdFsxXVswXSA9IG1heCh4WzFdWzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBtYXgoeFsxXVsxXSwgeVsxXVsxXSk7CisgICAgcmVzdWx0WzJdWzBdID0gbWF4KHhbMl1bMF0s
IHlbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9IG1heCh4WzJdWzFdLCB5WzJdWzFdKTsKKyAg
ICByZXN1bHRbM11bMF0gPSBtYXgoeFszXVswXSwgeVszXVswXSk7CisgICAgcmVzdWx0WzNdWzFd
ID0gbWF4KHhbM11bMV0sIHlbM11bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4
MyBtYXgoZmxvYXQ0eDMgeCwgZmxvYXQ0eDMgeSkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBtYXgoeFswXVswXSwgeVswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gbWF4KHhbMF1bMV0sIHlbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IG1heCh4WzBdWzJd
LCB5WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtYXgoeFsxXVswXSwgeVsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gbWF4KHhbMV1bMV0sIHlbMV1bMV0pOworICAgIHJlc3VsdFsxXVsy
XSA9IG1heCh4WzFdWzJdLCB5WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtYXgoeFsyXVsw
XSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbWF4KHhbMl1bMV0sIHlbMl1bMV0pOwor
ICAgIHJlc3VsdFsyXVsyXSA9IG1heCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRbM11b
MF0gPSBtYXgoeFszXVswXSwgeVszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gbWF4KHhbM11b
MV0sIHlbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9IG1heCh4WzNdWzJdLCB5WzNdWzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgbWF4KGZsb2F0NHg0IHgsIGZsb2F0NHg0
IHkpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbWF4KHhbMF1b
MF0sIHlbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IG1heCh4WzBdWzFdLCB5WzBdWzFdKTsK
KyAgICByZXN1bHRbMF1bMl0gPSBtYXgoeFswXVsyXSwgeVswXVsyXSk7CisgICAgcmVzdWx0WzBd
WzNdID0gbWF4KHhbMF1bM10sIHlbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IG1heCh4WzFd
WzBdLCB5WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtYXgoeFsxXVsxXSwgeVsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gbWF4KHhbMV1bMl0sIHlbMV1bMl0pOworICAgIHJlc3VsdFsx
XVszXSA9IG1heCh4WzFdWzNdLCB5WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtYXgoeFsy
XVswXSwgeVsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gbWF4KHhbMl1bMV0sIHlbMl1bMV0p
OworICAgIHJlc3VsdFsyXVsyXSA9IG1heCh4WzJdWzJdLCB5WzJdWzJdKTsKKyAgICByZXN1bHRb
Ml1bM10gPSBtYXgoeFsyXVszXSwgeVsyXVszXSk7CisgICAgcmVzdWx0WzNdWzBdID0gbWF4KHhb
M11bMF0sIHlbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9IG1heCh4WzNdWzFdLCB5WzNdWzFd
KTsKKyAgICByZXN1bHRbM11bMl0gPSBtYXgoeFszXVsyXSwgeVszXVsyXSk7CisgICAgcmVzdWx0
WzNdWzNdID0gbWF4KHhbM11bM10sIHlbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisK
K3VjaGFyIGNsYW1wKHVjaGFyIHgsIHVjaGFyIGxvd2VyLCB1Y2hhciB1cHBlcikgeworICAgIHJl
dHVybiBtYXgobWluKHVwcGVyLCB4KSwgbG93ZXIpOworfQordWNoYXIyIGNsYW1wKHVjaGFyMiB4
LCB1Y2hhcjIgeSwgdWNoYXIyIHopIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGNsYW1wKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhbMV0s
IHlbMV0sIHpbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgY2xhbXAodWNoYXIz
IHgsIHVjaGFyMyB5LCB1Y2hhcjMgeikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gY2xhbXAoeFswXSwgeVswXSwgelswXSk7CisgICAgcmVzdWx0WzFdID0gY2xhbXAoeFsx
XSwgeVsxXSwgelsxXSk7CisgICAgcmVzdWx0WzJdID0gY2xhbXAoeFsyXSwgeVsyXSwgelsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBjbGFtcCh1Y2hhcjQgeCwgdWNoYXI0IHks
IHVjaGFyNCB6KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjbGFtcCh4
WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBjbGFtcCh4WzFdLCB5WzFdLCB6WzFd
KTsKKyAgICByZXN1bHRbMl0gPSBjbGFtcCh4WzJdLCB5WzJdLCB6WzJdKTsKKyAgICByZXN1bHRb
M10gPSBjbGFtcCh4WzNdLCB5WzNdLCB6WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCit1
c2hvcnQgY2xhbXAodXNob3J0IHgsIHVzaG9ydCBsb3dlciwgdXNob3J0IHVwcGVyKSB7CisgICAg
cmV0dXJuIG1heChtaW4odXBwZXIsIHgpLCBsb3dlcik7Cit9Cit1c2hvcnQyIGNsYW1wKHVzaG9y
dDIgeCwgdXNob3J0MiB5LCB1c2hvcnQyIHopIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBjbGFtcCh4WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBjbGFt
cCh4WzFdLCB5WzFdLCB6WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBjbGFt
cCh1c2hvcnQzIHgsIHVzaG9ydDMgeSwgdXNob3J0MyB6KSB7CisgICAgdXNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gY2xhbXAoeFswXSwgeVswXSwgelswXSk7CisgICAgcmVzdWx0WzFd
ID0gY2xhbXAoeFsxXSwgeVsxXSwgelsxXSk7CisgICAgcmVzdWx0WzJdID0gY2xhbXAoeFsyXSwg
eVsyXSwgelsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgY2xhbXAodXNob3J0
NCB4LCB1c2hvcnQ0IHksIHVzaG9ydDQgeikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGNsYW1wKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1w
KHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJlc3VsdFsyXSA9IGNsYW1wKHhbMl0sIHlbMl0sIHpb
Ml0pOworICAgIHJlc3VsdFszXSA9IGNsYW1wKHhbM10sIHlbM10sIHpbM10pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CisKK3VpbnQgY2xhbXAodWludCB4LCB1aW50IGxvd2VyLCB1aW50IHVwcGVy
KSB7CisgICAgcmV0dXJuIG1heChtaW4odXBwZXIsIHgpLCBsb3dlcik7Cit9Cit1aW50MiBjbGFt
cCh1aW50MiB4LCB1aW50MiB5LCB1aW50MiB6KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGNsYW1wKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1w
KHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBjbGFtcCh1
aW50MyB4LCB1aW50MyB5LCB1aW50MyB6KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGNsYW1wKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhb
MV0sIHlbMV0sIHpbMV0pOworICAgIHJlc3VsdFsyXSA9IGNsYW1wKHhbMl0sIHlbMl0sIHpbMl0p
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBjbGFtcCh1aW50NCB4LCB1aW50NCB5LCB1
aW50NCB6KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNsYW1wKHhbMF0s
IHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhbMV0sIHlbMV0sIHpbMV0pOwor
ICAgIHJlc3VsdFsyXSA9IGNsYW1wKHhbMl0sIHlbMl0sIHpbMl0pOworICAgIHJlc3VsdFszXSA9
IGNsYW1wKHhbM10sIHlbM10sIHpbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2NoYXIg
Y2xhbXAoY2hhciB4LCBjaGFyIGxvd2VyLCBjaGFyIHVwcGVyKSB7CisgICAgcmV0dXJuIG1heCht
aW4odXBwZXIsIHgpLCBsb3dlcik7Cit9CitjaGFyMiBjbGFtcChjaGFyMiB4LCBjaGFyMiB5LCBj
aGFyMiB6KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNsYW1wKHhbMF0s
IHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhbMV0sIHlbMV0sIHpbMV0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBjbGFtcChjaGFyMyB4LCBjaGFyMyB5LCBjaGFy
MyB6KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNsYW1wKHhbMF0sIHlb
MF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhbMV0sIHlbMV0sIHpbMV0pOworICAg
IHJlc3VsdFsyXSA9IGNsYW1wKHhbMl0sIHlbMl0sIHpbMl0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBjbGFtcChjaGFyNCB4LCBjaGFyNCB5LCBjaGFyNCB6KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNsYW1wKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJl
c3VsdFsxXSA9IGNsYW1wKHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJlc3VsdFsyXSA9IGNsYW1w
KHhbMl0sIHlbMl0sIHpbMl0pOworICAgIHJlc3VsdFszXSA9IGNsYW1wKHhbM10sIHlbM10sIHpb
M10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3Nob3J0IGNsYW1wKHNob3J0IHgsIHNob3J0
IGxvd2VyLCBzaG9ydCB1cHBlcikgeworICAgIHJldHVybiBtYXgobWluKHVwcGVyLCB4KSwgbG93
ZXIpOworfQorc2hvcnQyIGNsYW1wKHNob3J0MiB4LCBzaG9ydDIgeSwgc2hvcnQyIHopIHsKKyAg
ICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNsYW1wKHhbMF0sIHlbMF0sIHpbMF0p
OworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDMgY2xhbXAoc2hvcnQzIHgsIHNob3J0MyB5LCBzaG9ydDMgeikgewor
ICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gY2xhbXAoeFswXSwgeVswXSwgelsw
XSk7CisgICAgcmVzdWx0WzFdID0gY2xhbXAoeFsxXSwgeVsxXSwgelsxXSk7CisgICAgcmVzdWx0
WzJdID0gY2xhbXAoeFsyXSwgeVsyXSwgelsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBjbGFtcChzaG9ydDQgeCwgc2hvcnQ0IHksIHNob3J0NCB6KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBjbGFtcCh4WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1
bHRbMV0gPSBjbGFtcCh4WzFdLCB5WzFdLCB6WzFdKTsKKyAgICByZXN1bHRbMl0gPSBjbGFtcCh4
WzJdLCB5WzJdLCB6WzJdKTsKKyAgICByZXN1bHRbM10gPSBjbGFtcCh4WzNdLCB5WzNdLCB6WzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitpbnQgY2xhbXAoaW50IHgsIGludCBsb3dlciwg
aW50IHVwcGVyKSB7CisgICAgcmV0dXJuIG1heChtaW4odXBwZXIsIHgpLCBsb3dlcik7Cit9Citp
bnQyIGNsYW1wKGludDIgeCwgaW50MiB5LCBpbnQyIHopIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBjbGFtcCh4WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBj
bGFtcCh4WzFdLCB5WzFdLCB6WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBjbGFt
cChpbnQzIHgsIGludDMgeSwgaW50MyB6KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gY2xhbXAoeFswXSwgeVswXSwgelswXSk7CisgICAgcmVzdWx0WzFdID0gY2xhbXAoeFsx
XSwgeVsxXSwgelsxXSk7CisgICAgcmVzdWx0WzJdID0gY2xhbXAoeFsyXSwgeVsyXSwgelsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgY2xhbXAoaW50NCB4LCBpbnQ0IHksIGludDQg
eikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNsYW1wKHhbMF0sIHlbMF0s
IHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJl
c3VsdFsyXSA9IGNsYW1wKHhbMl0sIHlbMl0sIHpbMl0pOworICAgIHJlc3VsdFszXSA9IGNsYW1w
KHhbM10sIHlbM10sIHpbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2hhbGYgY2xhbXAo
aGFsZiB4LCBoYWxmIGxvd2VyLCBoYWxmIHVwcGVyKSB7CisgICAgcmV0dXJuIG1heChtaW4odXBw
ZXIsIHgpLCBsb3dlcik7Cit9CitoYWxmMiBjbGFtcChoYWxmMiB4LCBoYWxmMiB5LCBoYWxmMiB6
KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNsYW1wKHhbMF0sIHlbMF0s
IHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMyBjbGFtcChoYWxmMyB4LCBoYWxmMyB5LCBoYWxmMyB6KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNsYW1wKHhbMF0sIHlbMF0sIHpb
MF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJlc3Vs
dFsyXSA9IGNsYW1wKHhbMl0sIHlbMl0sIHpbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBjbGFtcChoYWxmNCB4LCBoYWxmNCB5LCBoYWxmNCB6KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGNsYW1wKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsx
XSA9IGNsYW1wKHhbMV0sIHlbMV0sIHpbMV0pOworICAgIHJlc3VsdFsyXSA9IGNsYW1wKHhbMl0s
IHlbMl0sIHpbMl0pOworICAgIHJlc3VsdFszXSA9IGNsYW1wKHhbM10sIHlbM10sIHpbM10pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngyIGNsYW1wKGhhbGYyeDIgeCwgaGFsZjJ4MiB5
LCBoYWxmMngyIHopIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBj
bGFtcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjbGFt
cCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4
WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFd
WzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBj
bGFtcChoYWxmMngzIHgsIGhhbGYyeDMgeSwgaGFsZjJ4MyB6KSB7CisgICAgaGFsZjJ4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY2xhbXAoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gY2xhbXAoeFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7Cisg
ICAgcmVzdWx0WzBdWzJdID0gY2xhbXAoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gY2xhbXAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVz
dWx0WzFdWzFdID0gY2xhbXAoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gY2xhbXAoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYyeDQgY2xhbXAoaGFsZjJ4NCB4LCBoYWxmMng0IHksIGhhbGYyeDQgeikg
eworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNsYW1wKHhbMF1bMF0s
IHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNsYW1wKHhbMF1bMV0sIHlb
MF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNsYW1wKHhbMF1bMl0sIHlbMF1b
Ml0sIHpbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGNsYW1wKHhbMF1bM10sIHlbMF1bM10s
IHpbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGNsYW1wKHhbMV1bMF0sIHlbMV1bMF0sIHpb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNsYW1wKHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNsYW1wKHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0p
OworICAgIHJlc3VsdFsxXVszXSA9IGNsYW1wKHhbMV1bM10sIHlbMV1bM10sIHpbMV1bM10pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIGNsYW1wKGhhbGYzeDIgeCwgaGFsZjN4MiB5
LCBoYWxmM3gyIHopIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBj
bGFtcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjbGFt
cCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4
WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFd
WzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjbGFtcCh4WzJdWzBd
LCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjbGFtcCh4WzJdWzFdLCB5
WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBjbGFtcCho
YWxmM3gzIHgsIGhhbGYzeDMgeSwgaGFsZjN4MyB6KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gY2xhbXAoeFswXVswXSwgeVswXVswXSwgelswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gY2xhbXAoeFswXVsxXSwgeVswXVsxXSwgelswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gY2xhbXAoeFswXVsyXSwgeVswXVsyXSwgelswXVsyXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gY2xhbXAoeFsxXVswXSwgeVsxXVswXSwgelsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gY2xhbXAoeFsxXVsxXSwgeVsxXVsxXSwgelsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gY2xhbXAoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsyXSk7CisgICAgcmVzdWx0WzJdWzBdID0g
Y2xhbXAoeFsyXVswXSwgeVsyXVswXSwgelsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY2xh
bXAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gY2xhbXAo
eFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
eDQgY2xhbXAoaGFsZjN4NCB4LCBoYWxmM3g0IHksIGhhbGYzeDQgeikgeworICAgIGhhbGYzeDQg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNsYW1wKHhbMF1bMF0sIHlbMF1bMF0sIHpbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNsYW1wKHhbMF1bMV0sIHlbMF1bMV0sIHpbMF1bMV0p
OworICAgIHJlc3VsdFswXVsyXSA9IGNsYW1wKHhbMF1bMl0sIHlbMF1bMl0sIHpbMF1bMl0pOwor
ICAgIHJlc3VsdFswXVszXSA9IGNsYW1wKHhbMF1bM10sIHlbMF1bM10sIHpbMF1bM10pOworICAg
IHJlc3VsdFsxXVswXSA9IGNsYW1wKHhbMV1bMF0sIHlbMV1bMF0sIHpbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IGNsYW1wKHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IGNsYW1wKHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0pOworICAgIHJlc3VsdFsx
XVszXSA9IGNsYW1wKHhbMV1bM10sIHlbMV1bM10sIHpbMV1bM10pOworICAgIHJlc3VsdFsyXVsw
XSA9IGNsYW1wKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IGNsYW1wKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGNs
YW1wKHhbMl1bMl0sIHlbMl1bMl0sIHpbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGNsYW1w
KHhbMl1bM10sIHlbMl1bM10sIHpbMl1bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NHgyIGNsYW1wKGhhbGY0eDIgeCwgaGFsZjR4MiB5LCBoYWxmNHgyIHopIHsKKyAgICBoYWxmNHgy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjbGFtcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBd
WzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjbGFtcCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFd
KTsKKyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBjbGFtcCh4WzJdWzBdLCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBjbGFtcCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1
bHRbM11bMF0gPSBjbGFtcCh4WzNdWzBdLCB5WzNdWzBdLCB6WzNdWzBdKTsKKyAgICByZXN1bHRb
M11bMV0gPSBjbGFtcCh4WzNdWzFdLCB5WzNdWzFdLCB6WzNdWzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MyBjbGFtcChoYWxmNHgzIHgsIGhhbGY0eDMgeSwgaGFsZjR4MyB6KSB7
CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY2xhbXAoeFswXVswXSwg
eVswXVswXSwgelswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gY2xhbXAoeFswXVsxXSwgeVsw
XVsxXSwgelswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY2xhbXAoeFswXVsyXSwgeVswXVsy
XSwgelswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY2xhbXAoeFsxXVswXSwgeVsxXVswXSwg
elsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY2xhbXAoeFsxXVsxXSwgeVsxXVsxXSwgelsx
XVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gY2xhbXAoeFsxXVsyXSwgeVsxXVsyXSwgelsxXVsy
XSk7CisgICAgcmVzdWx0WzJdWzBdID0gY2xhbXAoeFsyXVswXSwgeVsyXVswXSwgelsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gY2xhbXAoeFsyXVsxXSwgeVsyXVsxXSwgelsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gY2xhbXAoeFsyXVsyXSwgeVsyXVsyXSwgelsyXVsyXSk7CisgICAg
cmVzdWx0WzNdWzBdID0gY2xhbXAoeFszXVswXSwgeVszXVswXSwgelszXVswXSk7CisgICAgcmVz
dWx0WzNdWzFdID0gY2xhbXAoeFszXVsxXSwgeVszXVsxXSwgelszXVsxXSk7CisgICAgcmVzdWx0
WzNdWzJdID0gY2xhbXAoeFszXVsyXSwgeVszXVsyXSwgelszXVsyXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0eDQgY2xhbXAoaGFsZjR4NCB4LCBoYWxmNHg0IHksIGhhbGY0eDQgeikg
eworICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNsYW1wKHhbMF1bMF0s
IHlbMF1bMF0sIHpbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNsYW1wKHhbMF1bMV0sIHlb
MF1bMV0sIHpbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNsYW1wKHhbMF1bMl0sIHlbMF1b
Ml0sIHpbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGNsYW1wKHhbMF1bM10sIHlbMF1bM10s
IHpbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGNsYW1wKHhbMV1bMF0sIHlbMV1bMF0sIHpb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNsYW1wKHhbMV1bMV0sIHlbMV1bMV0sIHpbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNsYW1wKHhbMV1bMl0sIHlbMV1bMl0sIHpbMV1bMl0p
OworICAgIHJlc3VsdFsxXVszXSA9IGNsYW1wKHhbMV1bM10sIHlbMV1bM10sIHpbMV1bM10pOwor
ICAgIHJlc3VsdFsyXVswXSA9IGNsYW1wKHhbMl1bMF0sIHlbMl1bMF0sIHpbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IGNsYW1wKHhbMl1bMV0sIHlbMl1bMV0sIHpbMl1bMV0pOworICAgIHJl
c3VsdFsyXVsyXSA9IGNsYW1wKHhbMl1bMl0sIHlbMl1bMl0sIHpbMl1bMl0pOworICAgIHJlc3Vs
dFsyXVszXSA9IGNsYW1wKHhbMl1bM10sIHlbMl1bM10sIHpbMl1bM10pOworICAgIHJlc3VsdFsz
XVswXSA9IGNsYW1wKHhbM11bMF0sIHlbM11bMF0sIHpbM11bMF0pOworICAgIHJlc3VsdFszXVsx
XSA9IGNsYW1wKHhbM11bMV0sIHlbM11bMV0sIHpbM11bMV0pOworICAgIHJlc3VsdFszXVsyXSA9
IGNsYW1wKHhbM11bMl0sIHlbM11bMl0sIHpbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGNs
YW1wKHhbM11bM10sIHlbM11bM10sIHpbM11bM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CisK
K2Zsb2F0IGNsYW1wKGZsb2F0IHgsIGZsb2F0IGxvd2VyLCBmbG9hdCB1cHBlcikgeworICAgIHJl
dHVybiBtYXgobWluKHVwcGVyLCB4KSwgbG93ZXIpOworfQorZmxvYXQyIGNsYW1wKGZsb2F0MiB4
LCBmbG9hdDIgeSwgZmxvYXQyIHopIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGNsYW1wKHhbMF0sIHlbMF0sIHpbMF0pOworICAgIHJlc3VsdFsxXSA9IGNsYW1wKHhbMV0s
IHlbMV0sIHpbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgY2xhbXAoZmxvYXQz
IHgsIGZsb2F0MyB5LCBmbG9hdDMgeikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gY2xhbXAoeFswXSwgeVswXSwgelswXSk7CisgICAgcmVzdWx0WzFdID0gY2xhbXAoeFsx
XSwgeVsxXSwgelsxXSk7CisgICAgcmVzdWx0WzJdID0gY2xhbXAoeFsyXSwgeVsyXSwgelsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBjbGFtcChmbG9hdDQgeCwgZmxvYXQ0IHks
IGZsb2F0NCB6KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjbGFtcCh4
WzBdLCB5WzBdLCB6WzBdKTsKKyAgICByZXN1bHRbMV0gPSBjbGFtcCh4WzFdLCB5WzFdLCB6WzFd
KTsKKyAgICByZXN1bHRbMl0gPSBjbGFtcCh4WzJdLCB5WzJdLCB6WzJdKTsKKyAgICByZXN1bHRb
M10gPSBjbGFtcCh4WzNdLCB5WzNdLCB6WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQyeDIgY2xhbXAoZmxvYXQyeDIgeCwgZmxvYXQyeDIgeSwgZmxvYXQyeDIgeikgeworICAgIGZs
b2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjbGFtcCh4WzBdWzBdLCB5WzBdWzBd
LCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjbGFtcCh4WzBdWzFdLCB5WzBdWzFdLCB6
WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgY2xhbXAoZmxvYXQyeDMgeCwgZmxv
YXQyeDMgeSwgZmxvYXQyeDMgeikgeworICAgIGZsb2F0MngzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBjbGFtcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBjbGFtcCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0g
PSBjbGFtcCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBj
bGFtcCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjbGFt
cCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjbGFtcCh4
WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQy
eDQgY2xhbXAoZmxvYXQyeDQgeCwgZmxvYXQyeDQgeSwgZmxvYXQyeDQgeikgeworICAgIGZsb2F0
Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjbGFtcCh4WzBdWzBdLCB5WzBdWzBdLCB6
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjbGFtcCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBjbGFtcCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJd
KTsKKyAgICByZXN1bHRbMF1bM10gPSBjbGFtcCh4WzBdWzNdLCB5WzBdWzNdLCB6WzBdWzNdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBjbGFtcCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1
bHRbMV1bM10gPSBjbGFtcCh4WzFdWzNdLCB5WzFdWzNdLCB6WzFdWzNdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzeDIgY2xhbXAoZmxvYXQzeDIgeCwgZmxvYXQzeDIgeSwgZmxvYXQz
eDIgeikgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjbGFtcCh4
WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjbGFtcCh4WzBd
WzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4WzFdWzBd
LCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFdWzFdLCB5
WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjbGFtcCh4WzJdWzBdLCB5WzJd
WzBdLCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjbGFtcCh4WzJdWzFdLCB5WzJdWzFd
LCB6WzJdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgY2xhbXAoZmxvYXQz
eDMgeCwgZmxvYXQzeDMgeSwgZmxvYXQzeDMgeikgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBjbGFtcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBjbGFtcCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBjbGFtcCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBjbGFtcCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBjbGFtcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBjbGFtcCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBj
bGFtcCh4WzJdWzBdLCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjbGFt
cCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjbGFtcCh4
WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
eDQgY2xhbXAoZmxvYXQzeDQgeCwgZmxvYXQzeDQgeSwgZmxvYXQzeDQgeikgeworICAgIGZsb2F0
M3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjbGFtcCh4WzBdWzBdLCB5WzBdWzBdLCB6
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjbGFtcCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBd
WzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBjbGFtcCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJd
KTsKKyAgICByZXN1bHRbMF1bM10gPSBjbGFtcCh4WzBdWzNdLCB5WzBdWzNdLCB6WzBdWzNdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSBjbGFtcCh4WzFdWzJdLCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1
bHRbMV1bM10gPSBjbGFtcCh4WzFdWzNdLCB5WzFdWzNdLCB6WzFdWzNdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBjbGFtcCh4WzJdWzBdLCB5WzJdWzBdLCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1b
MV0gPSBjbGFtcCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0g
PSBjbGFtcCh4WzJdWzJdLCB5WzJdWzJdLCB6WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBj
bGFtcCh4WzJdWzNdLCB5WzJdWzNdLCB6WzJdWzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0eDIgY2xhbXAoZmxvYXQ0eDIgeCwgZmxvYXQ0eDIgeSwgZmxvYXQ0eDIgeikgeworICAg
IGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjbGFtcCh4WzBdWzBdLCB5WzBd
WzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjbGFtcCh4WzBdWzFdLCB5WzBdWzFd
LCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4WzFdWzBdLCB5WzFdWzBdLCB6
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFdWzFdLCB5WzFdWzFdLCB6WzFd
WzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjbGFtcCh4WzJdWzBdLCB5WzJdWzBdLCB6WzJdWzBd
KTsKKyAgICByZXN1bHRbMl1bMV0gPSBjbGFtcCh4WzJdWzFdLCB5WzJdWzFdLCB6WzJdWzFdKTsK
KyAgICByZXN1bHRbM11bMF0gPSBjbGFtcCh4WzNdWzBdLCB5WzNdWzBdLCB6WzNdWzBdKTsKKyAg
ICByZXN1bHRbM11bMV0gPSBjbGFtcCh4WzNdWzFdLCB5WzNdWzFdLCB6WzNdWzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDMgY2xhbXAoZmxvYXQ0eDMgeCwgZmxvYXQ0eDMgeSwg
ZmxvYXQ0eDMgeikgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBj
bGFtcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjbGFt
cCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBjbGFtcCh4
WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4WzFd
WzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFdWzFd
LCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjbGFtcCh4WzFdWzJdLCB5
WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjbGFtcCh4WzJdWzBdLCB5WzJd
WzBdLCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjbGFtcCh4WzJdWzFdLCB5WzJdWzFd
LCB6WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjbGFtcCh4WzJdWzJdLCB5WzJdWzJdLCB6
WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBjbGFtcCh4WzNdWzBdLCB5WzNdWzBdLCB6WzNd
WzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBjbGFtcCh4WzNdWzFdLCB5WzNdWzFdLCB6WzNdWzFd
KTsKKyAgICByZXN1bHRbM11bMl0gPSBjbGFtcCh4WzNdWzJdLCB5WzNdWzJdLCB6WzNdWzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgY2xhbXAoZmxvYXQ0eDQgeCwgZmxvYXQ0
eDQgeSwgZmxvYXQ0eDQgeikgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBjbGFtcCh4WzBdWzBdLCB5WzBdWzBdLCB6WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBjbGFtcCh4WzBdWzFdLCB5WzBdWzFdLCB6WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBj
bGFtcCh4WzBdWzJdLCB5WzBdWzJdLCB6WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBjbGFt
cCh4WzBdWzNdLCB5WzBdWzNdLCB6WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjbGFtcCh4
WzFdWzBdLCB5WzFdWzBdLCB6WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjbGFtcCh4WzFd
WzFdLCB5WzFdWzFdLCB6WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjbGFtcCh4WzFdWzJd
LCB5WzFdWzJdLCB6WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBjbGFtcCh4WzFdWzNdLCB5
WzFdWzNdLCB6WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjbGFtcCh4WzJdWzBdLCB5WzJd
WzBdLCB6WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjbGFtcCh4WzJdWzFdLCB5WzJdWzFd
LCB6WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBjbGFtcCh4WzJdWzJdLCB5WzJdWzJdLCB6
WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBjbGFtcCh4WzJdWzNdLCB5WzJdWzNdLCB6WzJd
WzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBjbGFtcCh4WzNdWzBdLCB5WzNdWzBdLCB6WzNdWzBd
KTsKKyAgICByZXN1bHRbM11bMV0gPSBjbGFtcCh4WzNdWzFdLCB5WzNdWzFdLCB6WzNdWzFdKTsK
KyAgICByZXN1bHRbM11bMl0gPSBjbGFtcCh4WzNdWzJdLCB5WzNdWzJdLCB6WzNdWzJdKTsKKyAg
ICByZXN1bHRbM11bM10gPSBjbGFtcCh4WzNdWzNdLCB5WzNdWzNdLCB6WzNdWzNdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorCitoYWxmIG1vZGYoaGFsZiB4LCB0aHJlYWQgaGFsZiogaXApIHsK
KyAgICB1aW50IHJlc3VsdCA9IHVpbnQoeCk7CisgICAgKmlwID0geCAtIGhhbGYocmVzdWx0KTsK
KyAgICByZXR1cm4gaGFsZihyZXN1bHQpOworfQoraGFsZjIgbW9kZihoYWxmMiB4LCB0aHJlYWQg
aGFsZjIqIHkpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gbW9kZih4WzBd
LCAmKCgqeSlbMF0pKTsKKyAgICByZXN1bHRbMV0gPSBtb2RmKHhbMV0sICYoKCp5KVsxXSkpOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBtb2RmKGhhbGYzIHgsIHRocmVhZCBoYWxmMyog
eSkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtb2RmKHhbMF0sICYoKCp5
KVswXSkpOworICAgIHJlc3VsdFsxXSA9IG1vZGYoeFsxXSwgJigoKnkpWzFdKSk7CisgICAgcmVz
dWx0WzJdID0gbW9kZih4WzJdLCAmKCgqeSlbMl0pKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgbW9kZihoYWxmNCB4LCB0aHJlYWQgaGFsZjQqIHkpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gbW9kZih4WzBdLCAmKCgqeSlbMF0pKTsKKyAgICByZXN1bHRbMV0g
PSBtb2RmKHhbMV0sICYoKCp5KVsxXSkpOworICAgIHJlc3VsdFsyXSA9IG1vZGYoeFsyXSwgJigo
KnkpWzJdKSk7CisgICAgcmVzdWx0WzNdID0gbW9kZih4WzNdLCAmKCgqeSlbM10pKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MiBtb2RmKGhhbGYyeDIgeCwgdGhyZWFkIGhhbGYyeDIq
IHkpIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtb2RmKHhbMF1b
MF0sICYoKCp5KVswXVswXSkpOworICAgIHJlc3VsdFswXVsxXSA9IG1vZGYoeFswXVsxXSwgJigo
KnkpWzBdWzFdKSk7CisgICAgcmVzdWx0WzFdWzBdID0gbW9kZih4WzFdWzBdLCAmKCgqeSlbMV1b
MF0pKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtb2RmKHhbMV1bMV0sICYoKCp5KVsxXVsxXSkpOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIG1vZGYoaGFsZjJ4MyB4LCB0aHJlYWQgaGFs
ZjJ4MyogeSkgeworICAgIGhhbGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IG1vZGYo
eFswXVswXSwgJigoKnkpWzBdWzBdKSk7CisgICAgcmVzdWx0WzBdWzFdID0gbW9kZih4WzBdWzFd
LCAmKCgqeSlbMF1bMV0pKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtb2RmKHhbMF1bMl0sICYoKCp5
KVswXVsyXSkpOworICAgIHJlc3VsdFsxXVswXSA9IG1vZGYoeFsxXVswXSwgJigoKnkpWzFdWzBd
KSk7CisgICAgcmVzdWx0WzFdWzFdID0gbW9kZih4WzFdWzFdLCAmKCgqeSlbMV1bMV0pKTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBtb2RmKHhbMV1bMl0sICYoKCp5KVsxXVsyXSkpOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmMng0IG1vZGYoaGFsZjJ4NCB4LCB0aHJlYWQgaGFsZjJ4NCogeSkg
eworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IG1vZGYoeFswXVswXSwg
JigoKnkpWzBdWzBdKSk7CisgICAgcmVzdWx0WzBdWzFdID0gbW9kZih4WzBdWzFdLCAmKCgqeSlb
MF1bMV0pKTsKKyAgICByZXN1bHRbMF1bMl0gPSBtb2RmKHhbMF1bMl0sICYoKCp5KVswXVsyXSkp
OworICAgIHJlc3VsdFswXVszXSA9IG1vZGYoeFswXVszXSwgJigoKnkpWzBdWzNdKSk7CisgICAg
cmVzdWx0WzFdWzBdID0gbW9kZih4WzFdWzBdLCAmKCgqeSlbMV1bMF0pKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBtb2RmKHhbMV1bMV0sICYoKCp5KVsxXVsxXSkpOworICAgIHJlc3VsdFsxXVsyXSA9
IG1vZGYoeFsxXVsyXSwgJigoKnkpWzFdWzJdKSk7CisgICAgcmVzdWx0WzFdWzNdID0gbW9kZih4
WzFdWzNdLCAmKCgqeSlbMV1bM10pKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MiBt
b2RmKGhhbGYzeDIgeCwgdGhyZWFkIGhhbGYzeDIqIHkpIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBtb2RmKHhbMF1bMF0sICYoKCp5KVswXVswXSkpOworICAgIHJl
c3VsdFswXVsxXSA9IG1vZGYoeFswXVsxXSwgJigoKnkpWzBdWzFdKSk7CisgICAgcmVzdWx0WzFd
WzBdID0gbW9kZih4WzFdWzBdLCAmKCgqeSlbMV1bMF0pKTsKKyAgICByZXN1bHRbMV1bMV0gPSBt
b2RmKHhbMV1bMV0sICYoKCp5KVsxXVsxXSkpOworICAgIHJlc3VsdFsyXVswXSA9IG1vZGYoeFsy
XVswXSwgJigoKnkpWzJdWzBdKSk7CisgICAgcmVzdWx0WzJdWzFdID0gbW9kZih4WzJdWzFdLCAm
KCgqeSlbMl1bMV0pKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBtb2RmKGhhbGYz
eDMgeCwgdGhyZWFkIGhhbGYzeDMqIHkpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBtb2RmKHhbMF1bMF0sICYoKCp5KVswXVswXSkpOworICAgIHJlc3VsdFswXVsx
XSA9IG1vZGYoeFswXVsxXSwgJigoKnkpWzBdWzFdKSk7CisgICAgcmVzdWx0WzBdWzJdID0gbW9k
Zih4WzBdWzJdLCAmKCgqeSlbMF1bMl0pKTsKKyAgICByZXN1bHRbMV1bMF0gPSBtb2RmKHhbMV1b
MF0sICYoKCp5KVsxXVswXSkpOworICAgIHJlc3VsdFsxXVsxXSA9IG1vZGYoeFsxXVsxXSwgJigo
KnkpWzFdWzFdKSk7CisgICAgcmVzdWx0WzFdWzJdID0gbW9kZih4WzFdWzJdLCAmKCgqeSlbMV1b
Ml0pKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtb2RmKHhbMl1bMF0sICYoKCp5KVsyXVswXSkpOwor
ICAgIHJlc3VsdFsyXVsxXSA9IG1vZGYoeFsyXVsxXSwgJigoKnkpWzJdWzFdKSk7CisgICAgcmVz
dWx0WzJdWzJdID0gbW9kZih4WzJdWzJdLCAmKCgqeSlbMl1bMl0pKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjN4NCBtb2RmKGhhbGYzeDQgeCwgdGhyZWFkIGhhbGYzeDQqIHkpIHsKKyAg
ICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtb2RmKHhbMF1bMF0sICYoKCp5
KVswXVswXSkpOworICAgIHJlc3VsdFswXVsxXSA9IG1vZGYoeFswXVsxXSwgJigoKnkpWzBdWzFd
KSk7CisgICAgcmVzdWx0WzBdWzJdID0gbW9kZih4WzBdWzJdLCAmKCgqeSlbMF1bMl0pKTsKKyAg
ICByZXN1bHRbMF1bM10gPSBtb2RmKHhbMF1bM10sICYoKCp5KVswXVszXSkpOworICAgIHJlc3Vs
dFsxXVswXSA9IG1vZGYoeFsxXVswXSwgJigoKnkpWzFdWzBdKSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gbW9kZih4WzFdWzFdLCAmKCgqeSlbMV1bMV0pKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtb2Rm
KHhbMV1bMl0sICYoKCp5KVsxXVsyXSkpOworICAgIHJlc3VsdFsxXVszXSA9IG1vZGYoeFsxXVsz
XSwgJigoKnkpWzFdWzNdKSk7CisgICAgcmVzdWx0WzJdWzBdID0gbW9kZih4WzJdWzBdLCAmKCgq
eSlbMl1bMF0pKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtb2RmKHhbMl1bMV0sICYoKCp5KVsyXVsx
XSkpOworICAgIHJlc3VsdFsyXVsyXSA9IG1vZGYoeFsyXVsyXSwgJigoKnkpWzJdWzJdKSk7Cisg
ICAgcmVzdWx0WzJdWzNdID0gbW9kZih4WzJdWzNdLCAmKCgqeSlbMl1bM10pKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjR4MiBtb2RmKGhhbGY0eDIgeCwgdGhyZWFkIGhhbGY0eDIqIHkp
IHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtb2RmKHhbMF1bMF0s
ICYoKCp5KVswXVswXSkpOworICAgIHJlc3VsdFswXVsxXSA9IG1vZGYoeFswXVsxXSwgJigoKnkp
WzBdWzFdKSk7CisgICAgcmVzdWx0WzFdWzBdID0gbW9kZih4WzFdWzBdLCAmKCgqeSlbMV1bMF0p
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBtb2RmKHhbMV1bMV0sICYoKCp5KVsxXVsxXSkpOworICAg
IHJlc3VsdFsyXVswXSA9IG1vZGYoeFsyXVswXSwgJigoKnkpWzJdWzBdKSk7CisgICAgcmVzdWx0
WzJdWzFdID0gbW9kZih4WzJdWzFdLCAmKCgqeSlbMl1bMV0pKTsKKyAgICByZXN1bHRbM11bMF0g
PSBtb2RmKHhbM11bMF0sICYoKCp5KVszXVswXSkpOworICAgIHJlc3VsdFszXVsxXSA9IG1vZGYo
eFszXVsxXSwgJigoKnkpWzNdWzFdKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDMg
bW9kZihoYWxmNHgzIHgsIHRocmVhZCBoYWxmNHgzKiB5KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gbW9kZih4WzBdWzBdLCAmKCgqeSlbMF1bMF0pKTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBtb2RmKHhbMF1bMV0sICYoKCp5KVswXVsxXSkpOworICAgIHJlc3VsdFsw
XVsyXSA9IG1vZGYoeFswXVsyXSwgJigoKnkpWzBdWzJdKSk7CisgICAgcmVzdWx0WzFdWzBdID0g
bW9kZih4WzFdWzBdLCAmKCgqeSlbMV1bMF0pKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtb2RmKHhb
MV1bMV0sICYoKCp5KVsxXVsxXSkpOworICAgIHJlc3VsdFsxXVsyXSA9IG1vZGYoeFsxXVsyXSwg
JigoKnkpWzFdWzJdKSk7CisgICAgcmVzdWx0WzJdWzBdID0gbW9kZih4WzJdWzBdLCAmKCgqeSlb
Ml1bMF0pKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtb2RmKHhbMl1bMV0sICYoKCp5KVsyXVsxXSkp
OworICAgIHJlc3VsdFsyXVsyXSA9IG1vZGYoeFsyXVsyXSwgJigoKnkpWzJdWzJdKSk7CisgICAg
cmVzdWx0WzNdWzBdID0gbW9kZih4WzNdWzBdLCAmKCgqeSlbM11bMF0pKTsKKyAgICByZXN1bHRb
M11bMV0gPSBtb2RmKHhbM11bMV0sICYoKCp5KVszXVsxXSkpOworICAgIHJlc3VsdFszXVsyXSA9
IG1vZGYoeFszXVsyXSwgJigoKnkpWzNdWzJdKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0eDQgbW9kZihoYWxmNHg0IHgsIHRocmVhZCBoYWxmNHg0KiB5KSB7CisgICAgaGFsZjR4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbW9kZih4WzBdWzBdLCAmKCgqeSlbMF1bMF0pKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBtb2RmKHhbMF1bMV0sICYoKCp5KVswXVsxXSkpOworICAgIHJl
c3VsdFswXVsyXSA9IG1vZGYoeFswXVsyXSwgJigoKnkpWzBdWzJdKSk7CisgICAgcmVzdWx0WzBd
WzNdID0gbW9kZih4WzBdWzNdLCAmKCgqeSlbMF1bM10pKTsKKyAgICByZXN1bHRbMV1bMF0gPSBt
b2RmKHhbMV1bMF0sICYoKCp5KVsxXVswXSkpOworICAgIHJlc3VsdFsxXVsxXSA9IG1vZGYoeFsx
XVsxXSwgJigoKnkpWzFdWzFdKSk7CisgICAgcmVzdWx0WzFdWzJdID0gbW9kZih4WzFdWzJdLCAm
KCgqeSlbMV1bMl0pKTsKKyAgICByZXN1bHRbMV1bM10gPSBtb2RmKHhbMV1bM10sICYoKCp5KVsx
XVszXSkpOworICAgIHJlc3VsdFsyXVswXSA9IG1vZGYoeFsyXVswXSwgJigoKnkpWzJdWzBdKSk7
CisgICAgcmVzdWx0WzJdWzFdID0gbW9kZih4WzJdWzFdLCAmKCgqeSlbMl1bMV0pKTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSBtb2RmKHhbMl1bMl0sICYoKCp5KVsyXVsyXSkpOworICAgIHJlc3VsdFsy
XVszXSA9IG1vZGYoeFsyXVszXSwgJigoKnkpWzJdWzNdKSk7CisgICAgcmVzdWx0WzNdWzBdID0g
bW9kZih4WzNdWzBdLCAmKCgqeSlbM11bMF0pKTsKKyAgICByZXN1bHRbM11bMV0gPSBtb2RmKHhb
M11bMV0sICYoKCp5KVszXVsxXSkpOworICAgIHJlc3VsdFszXVsyXSA9IG1vZGYoeFszXVsyXSwg
JigoKnkpWzNdWzJdKSk7CisgICAgcmVzdWx0WzNdWzNdID0gbW9kZih4WzNdWzNdLCAmKCgqeSlb
M11bM10pKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitmbG9hdCBtb2RmKGZsb2F0IHgsIHRo
cmVhZCBmbG9hdCogaXApIHsKKyAgICB1aW50IHJlc3VsdCA9IHVpbnQoeCk7CisgICAgKmlwID0g
eCAtIGZsb2F0KHJlc3VsdCk7CisgICAgcmV0dXJuIGZsb2F0KHJlc3VsdCk7Cit9CitmbG9hdDIg
bW9kZihmbG9hdDIgeCwgdGhyZWFkIGZsb2F0MiogeSkgeworICAgIGZsb2F0MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gbW9kZih4WzBdLCAmKCgqeSlbMF0pKTsKKyAgICByZXN1bHRbMV0gPSBt
b2RmKHhbMV0sICYoKCp5KVsxXSkpOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgbW9k
ZihmbG9hdDMgeCwgdGhyZWFkIGZsb2F0MyogeSkgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gbW9kZih4WzBdLCAmKCgqeSlbMF0pKTsKKyAgICByZXN1bHRbMV0gPSBtb2Rm
KHhbMV0sICYoKCp5KVsxXSkpOworICAgIHJlc3VsdFsyXSA9IG1vZGYoeFsyXSwgJigoKnkpWzJd
KSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBtb2RmKGZsb2F0NCB4LCB0aHJlYWQg
ZmxvYXQ0KiB5KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBtb2RmKHhb
MF0sICYoKCp5KVswXSkpOworICAgIHJlc3VsdFsxXSA9IG1vZGYoeFsxXSwgJigoKnkpWzFdKSk7
CisgICAgcmVzdWx0WzJdID0gbW9kZih4WzJdLCAmKCgqeSlbMl0pKTsKKyAgICByZXN1bHRbM10g
PSBtb2RmKHhbM10sICYoKCp5KVszXSkpOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4
MiBtb2RmKGZsb2F0MngyIHgsIHRocmVhZCBmbG9hdDJ4MiogeSkgeworICAgIGZsb2F0MngyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtb2RmKHhbMF1bMF0sICYoKCp5KVswXVswXSkpOwor
ICAgIHJlc3VsdFswXVsxXSA9IG1vZGYoeFswXVsxXSwgJigoKnkpWzBdWzFdKSk7CisgICAgcmVz
dWx0WzFdWzBdID0gbW9kZih4WzFdWzBdLCAmKCgqeSlbMV1bMF0pKTsKKyAgICByZXN1bHRbMV1b
MV0gPSBtb2RmKHhbMV1bMV0sICYoKCp5KVsxXVsxXSkpOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDJ4MyBtb2RmKGZsb2F0MngzIHgsIHRocmVhZCBmbG9hdDJ4MyogeSkgeworICAgIGZs
b2F0MngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtb2RmKHhbMF1bMF0sICYoKCp5KVsw
XVswXSkpOworICAgIHJlc3VsdFswXVsxXSA9IG1vZGYoeFswXVsxXSwgJigoKnkpWzBdWzFdKSk7
CisgICAgcmVzdWx0WzBdWzJdID0gbW9kZih4WzBdWzJdLCAmKCgqeSlbMF1bMl0pKTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBtb2RmKHhbMV1bMF0sICYoKCp5KVsxXVswXSkpOworICAgIHJlc3VsdFsx
XVsxXSA9IG1vZGYoeFsxXVsxXSwgJigoKnkpWzFdWzFdKSk7CisgICAgcmVzdWx0WzFdWzJdID0g
bW9kZih4WzFdWzJdLCAmKCgqeSlbMV1bMl0pKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQyeDQgbW9kZihmbG9hdDJ4NCB4LCB0aHJlYWQgZmxvYXQyeDQqIHkpIHsKKyAgICBmbG9hdDJ4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gbW9kZih4WzBdWzBdLCAmKCgqeSlbMF1bMF0p
KTsKKyAgICByZXN1bHRbMF1bMV0gPSBtb2RmKHhbMF1bMV0sICYoKCp5KVswXVsxXSkpOworICAg
IHJlc3VsdFswXVsyXSA9IG1vZGYoeFswXVsyXSwgJigoKnkpWzBdWzJdKSk7CisgICAgcmVzdWx0
WzBdWzNdID0gbW9kZih4WzBdWzNdLCAmKCgqeSlbMF1bM10pKTsKKyAgICByZXN1bHRbMV1bMF0g
PSBtb2RmKHhbMV1bMF0sICYoKCp5KVsxXVswXSkpOworICAgIHJlc3VsdFsxXVsxXSA9IG1vZGYo
eFsxXVsxXSwgJigoKnkpWzFdWzFdKSk7CisgICAgcmVzdWx0WzFdWzJdID0gbW9kZih4WzFdWzJd
LCAmKCgqeSlbMV1bMl0pKTsKKyAgICByZXN1bHRbMV1bM10gPSBtb2RmKHhbMV1bM10sICYoKCp5
KVsxXVszXSkpOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBtb2RmKGZsb2F0M3gy
IHgsIHRocmVhZCBmbG9hdDN4MiogeSkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBtb2RmKHhbMF1bMF0sICYoKCp5KVswXVswXSkpOworICAgIHJlc3VsdFswXVsx
XSA9IG1vZGYoeFswXVsxXSwgJigoKnkpWzBdWzFdKSk7CisgICAgcmVzdWx0WzFdWzBdID0gbW9k
Zih4WzFdWzBdLCAmKCgqeSlbMV1bMF0pKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtb2RmKHhbMV1b
MV0sICYoKCp5KVsxXVsxXSkpOworICAgIHJlc3VsdFsyXVswXSA9IG1vZGYoeFsyXVswXSwgJigo
KnkpWzJdWzBdKSk7CisgICAgcmVzdWx0WzJdWzFdID0gbW9kZih4WzJdWzFdLCAmKCgqeSlbMl1b
MV0pKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgbW9kZihmbG9hdDN4MyB4LCB0
aHJlYWQgZmxvYXQzeDMqIHkpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gbW9kZih4WzBdWzBdLCAmKCgqeSlbMF1bMF0pKTsKKyAgICByZXN1bHRbMF1bMV0gPSBt
b2RmKHhbMF1bMV0sICYoKCp5KVswXVsxXSkpOworICAgIHJlc3VsdFswXVsyXSA9IG1vZGYoeFsw
XVsyXSwgJigoKnkpWzBdWzJdKSk7CisgICAgcmVzdWx0WzFdWzBdID0gbW9kZih4WzFdWzBdLCAm
KCgqeSlbMV1bMF0pKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtb2RmKHhbMV1bMV0sICYoKCp5KVsx
XVsxXSkpOworICAgIHJlc3VsdFsxXVsyXSA9IG1vZGYoeFsxXVsyXSwgJigoKnkpWzFdWzJdKSk7
CisgICAgcmVzdWx0WzJdWzBdID0gbW9kZih4WzJdWzBdLCAmKCgqeSlbMl1bMF0pKTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBtb2RmKHhbMl1bMV0sICYoKCp5KVsyXVsxXSkpOworICAgIHJlc3VsdFsy
XVsyXSA9IG1vZGYoeFsyXVsyXSwgJigoKnkpWzJdWzJdKSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0M3g0IG1vZGYoZmxvYXQzeDQgeCwgdGhyZWFkIGZsb2F0M3g0KiB5KSB7CisgICAg
ZmxvYXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IG1vZGYoeFswXVswXSwgJigoKnkp
WzBdWzBdKSk7CisgICAgcmVzdWx0WzBdWzFdID0gbW9kZih4WzBdWzFdLCAmKCgqeSlbMF1bMV0p
KTsKKyAgICByZXN1bHRbMF1bMl0gPSBtb2RmKHhbMF1bMl0sICYoKCp5KVswXVsyXSkpOworICAg
IHJlc3VsdFswXVszXSA9IG1vZGYoeFswXVszXSwgJigoKnkpWzBdWzNdKSk7CisgICAgcmVzdWx0
WzFdWzBdID0gbW9kZih4WzFdWzBdLCAmKCgqeSlbMV1bMF0pKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBtb2RmKHhbMV1bMV0sICYoKCp5KVsxXVsxXSkpOworICAgIHJlc3VsdFsxXVsyXSA9IG1vZGYo
eFsxXVsyXSwgJigoKnkpWzFdWzJdKSk7CisgICAgcmVzdWx0WzFdWzNdID0gbW9kZih4WzFdWzNd
LCAmKCgqeSlbMV1bM10pKTsKKyAgICByZXN1bHRbMl1bMF0gPSBtb2RmKHhbMl1bMF0sICYoKCp5
KVsyXVswXSkpOworICAgIHJlc3VsdFsyXVsxXSA9IG1vZGYoeFsyXVsxXSwgJigoKnkpWzJdWzFd
KSk7CisgICAgcmVzdWx0WzJdWzJdID0gbW9kZih4WzJdWzJdLCAmKCgqeSlbMl1bMl0pKTsKKyAg
ICByZXN1bHRbMl1bM10gPSBtb2RmKHhbMl1bM10sICYoKCp5KVsyXVszXSkpOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDR4MiBtb2RmKGZsb2F0NHgyIHgsIHRocmVhZCBmbG9hdDR4Miog
eSkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtb2RmKHhbMF1b
MF0sICYoKCp5KVswXVswXSkpOworICAgIHJlc3VsdFswXVsxXSA9IG1vZGYoeFswXVsxXSwgJigo
KnkpWzBdWzFdKSk7CisgICAgcmVzdWx0WzFdWzBdID0gbW9kZih4WzFdWzBdLCAmKCgqeSlbMV1b
MF0pKTsKKyAgICByZXN1bHRbMV1bMV0gPSBtb2RmKHhbMV1bMV0sICYoKCp5KVsxXVsxXSkpOwor
ICAgIHJlc3VsdFsyXVswXSA9IG1vZGYoeFsyXVswXSwgJigoKnkpWzJdWzBdKSk7CisgICAgcmVz
dWx0WzJdWzFdID0gbW9kZih4WzJdWzFdLCAmKCgqeSlbMl1bMV0pKTsKKyAgICByZXN1bHRbM11b
MF0gPSBtb2RmKHhbM11bMF0sICYoKCp5KVszXVswXSkpOworICAgIHJlc3VsdFszXVsxXSA9IG1v
ZGYoeFszXVsxXSwgJigoKnkpWzNdWzFdKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NHgzIG1vZGYoZmxvYXQ0eDMgeCwgdGhyZWFkIGZsb2F0NHgzKiB5KSB7CisgICAgZmxvYXQ0eDMg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IG1vZGYoeFswXVswXSwgJigoKnkpWzBdWzBdKSk7
CisgICAgcmVzdWx0WzBdWzFdID0gbW9kZih4WzBdWzFdLCAmKCgqeSlbMF1bMV0pKTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBtb2RmKHhbMF1bMl0sICYoKCp5KVswXVsyXSkpOworICAgIHJlc3VsdFsx
XVswXSA9IG1vZGYoeFsxXVswXSwgJigoKnkpWzFdWzBdKSk7CisgICAgcmVzdWx0WzFdWzFdID0g
bW9kZih4WzFdWzFdLCAmKCgqeSlbMV1bMV0pKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtb2RmKHhb
MV1bMl0sICYoKCp5KVsxXVsyXSkpOworICAgIHJlc3VsdFsyXVswXSA9IG1vZGYoeFsyXVswXSwg
JigoKnkpWzJdWzBdKSk7CisgICAgcmVzdWx0WzJdWzFdID0gbW9kZih4WzJdWzFdLCAmKCgqeSlb
Ml1bMV0pKTsKKyAgICByZXN1bHRbMl1bMl0gPSBtb2RmKHhbMl1bMl0sICYoKCp5KVsyXVsyXSkp
OworICAgIHJlc3VsdFszXVswXSA9IG1vZGYoeFszXVswXSwgJigoKnkpWzNdWzBdKSk7CisgICAg
cmVzdWx0WzNdWzFdID0gbW9kZih4WzNdWzFdLCAmKCgqeSlbM11bMV0pKTsKKyAgICByZXN1bHRb
M11bMl0gPSBtb2RmKHhbM11bMl0sICYoKCp5KVszXVsyXSkpOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDR4NCBtb2RmKGZsb2F0NHg0IHgsIHRocmVhZCBmbG9hdDR4NCogeSkgeworICAg
IGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBtb2RmKHhbMF1bMF0sICYoKCp5
KVswXVswXSkpOworICAgIHJlc3VsdFswXVsxXSA9IG1vZGYoeFswXVsxXSwgJigoKnkpWzBdWzFd
KSk7CisgICAgcmVzdWx0WzBdWzJdID0gbW9kZih4WzBdWzJdLCAmKCgqeSlbMF1bMl0pKTsKKyAg
ICByZXN1bHRbMF1bM10gPSBtb2RmKHhbMF1bM10sICYoKCp5KVswXVszXSkpOworICAgIHJlc3Vs
dFsxXVswXSA9IG1vZGYoeFsxXVswXSwgJigoKnkpWzFdWzBdKSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gbW9kZih4WzFdWzFdLCAmKCgqeSlbMV1bMV0pKTsKKyAgICByZXN1bHRbMV1bMl0gPSBtb2Rm
KHhbMV1bMl0sICYoKCp5KVsxXVsyXSkpOworICAgIHJlc3VsdFsxXVszXSA9IG1vZGYoeFsxXVsz
XSwgJigoKnkpWzFdWzNdKSk7CisgICAgcmVzdWx0WzJdWzBdID0gbW9kZih4WzJdWzBdLCAmKCgq
eSlbMl1bMF0pKTsKKyAgICByZXN1bHRbMl1bMV0gPSBtb2RmKHhbMl1bMV0sICYoKCp5KVsyXVsx
XSkpOworICAgIHJlc3VsdFsyXVsyXSA9IG1vZGYoeFsyXVsyXSwgJigoKnkpWzJdWzJdKSk7Cisg
ICAgcmVzdWx0WzJdWzNdID0gbW9kZih4WzJdWzNdLCAmKCgqeSlbMl1bM10pKTsKKyAgICByZXN1
bHRbM11bMF0gPSBtb2RmKHhbM11bMF0sICYoKCp5KVszXVswXSkpOworICAgIHJlc3VsdFszXVsx
XSA9IG1vZGYoeFszXVsxXSwgJigoKnkpWzNdWzFdKSk7CisgICAgcmVzdWx0WzNdWzJdID0gbW9k
Zih4WzNdWzJdLCAmKCgqeSlbM11bMl0pKTsKKyAgICByZXN1bHRbM11bM10gPSBtb2RmKHhbM11b
M10sICYoKCp5KVszXVszXSkpOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3VjaGFyIGNvdW50
X2JpdHModWNoYXIgeCkgeworICAgIHJldHVybiB1Y2hhcigoKHggfCB1Y2hhcigxIDw8IDApKSA9
PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdWNoYXIoMSA8PCAxKSkgPT0gMCA/IDAg
OiAxKSArCisgICAgICAgICAgICgoeCB8IHVjaGFyKDEgPDwgMikpID09IDAgPyAwIDogMSkgKwor
ICAgICAgICAgICAoKHggfCB1Y2hhcigxIDw8IDMpKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAg
ICAgKCh4IHwgdWNoYXIoMSA8PCA0KSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8
IHVjaGFyKDEgPDwgNSkpID09IDAgPyAwIDogMSkgKworICAgICAgICAgICAoKHggfCB1Y2hhcigx
IDw8IDYpKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdWNoYXIoMSA8PCA3KSkg
PT0gMCA/IDAgOiAxKSk7Cit9Cit1Y2hhciBjb3VudF9iaXRzKHVzaG9ydCB4KSB7CisgICAgcmV0
dXJuIHVjaGFyKCgoeCB8IHVzaG9ydCgxIDw8IDApKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAg
ICAgKCh4IHwgdXNob3J0KDEgPDwgMSkpID09IDAgPyAwIDogMSkgKworICAgICAgICAgICAoKHgg
fCB1c2hvcnQoMSA8PCAyKSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVzaG9y
dCgxIDw8IDMpKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdXNob3J0KDEgPDwg
NCkpID09IDAgPyAwIDogMSkgKworICAgICAgICAgICAoKHggfCB1c2hvcnQoMSA8PCA1KSkgPT0g
MCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVzaG9ydCgxIDw8IDYpKSA9PSAwID8gMCA6
IDEpICsKKyAgICAgICAgICAgKCh4IHwgdXNob3J0KDEgPDwgNykpID09IDAgPyAwIDogMSkgKwor
ICAgICAgICAgICAoKHggfCB1c2hvcnQoMSA8PCA4KSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAg
ICAgICgoeCB8IHVzaG9ydCgxIDw8IDkpKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4
IHwgdXNob3J0KDEgPDwgMTApKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdXNo
b3J0KDEgPDwgMTEpKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdXNob3J0KDEg
PDwgMTIpKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdXNob3J0KDEgPDwgMTMp
KSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdXNob3J0KDEgPDwgMTQpKSA9PSAw
ID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdXNob3J0KDEgPDwgMTUpKSA9PSAwID8gMCA6
IDEpKTsKK30KK3VjaGFyIGNvdW50X2JpdHModWludCB4KSB7CisgICAgcmV0dXJuIHVjaGFyKCgo
eCB8IHVpbnQoMSA8PCAwKSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQo
MSA8PCAxKSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCAyKSkg
PT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCAzKSkgPT0gMCA/IDAg
OiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCA0KSkgPT0gMCA/IDAgOiAxKSArCisg
ICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCA1KSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAg
ICgoeCB8IHVpbnQoMSA8PCA2KSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVp
bnQoMSA8PCA3KSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCA4
KSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCA5KSkgPT0gMCA/
IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCAxMCkpID09IDAgPyAwIDogMSkg
KworICAgICAgICAgICAoKHggfCB1aW50KDEgPDwgMTEpKSA9PSAwID8gMCA6IDEpICsKKyAgICAg
ICAgICAgKCh4IHwgdWludCgxIDw8IDEyKSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgo
eCB8IHVpbnQoMSA8PCAxMykpID09IDAgPyAwIDogMSkgKworICAgICAgICAgICAoKHggfCB1aW50
KDEgPDwgMTQpKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdWludCgxIDw8IDE1
KSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCAxNikpID09IDAg
PyAwIDogMSkgKworICAgICAgICAgICAoKHggfCB1aW50KDEgPDwgMTcpKSA9PSAwID8gMCA6IDEp
ICsKKyAgICAgICAgICAgKCh4IHwgdWludCgxIDw8IDE4KSkgPT0gMCA/IDAgOiAxKSArCisgICAg
ICAgICAgICgoeCB8IHVpbnQoMSA8PCAxOSkpID09IDAgPyAwIDogMSkgKworICAgICAgICAgICAo
KHggfCB1aW50KDEgPDwgMjApKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdWlu
dCgxIDw8IDIxKSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCAy
MikpID09IDAgPyAwIDogMSkgKworICAgICAgICAgICAoKHggfCB1aW50KDEgPDwgMjMpKSA9PSAw
ID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdWludCgxIDw8IDI0KSkgPT0gMCA/IDAgOiAx
KSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCAyNSkpID09IDAgPyAwIDogMSkgKworICAg
ICAgICAgICAoKHggfCB1aW50KDEgPDwgMjYpKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAg
KCh4IHwgdWludCgxIDw8IDI3KSkgPT0gMCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVp
bnQoMSA8PCAyOCkpID09IDAgPyAwIDogMSkgKworICAgICAgICAgICAoKHggfCB1aW50KDEgPDwg
MjkpKSA9PSAwID8gMCA6IDEpICsKKyAgICAgICAgICAgKCh4IHwgdWludCgxIDw8IDMwKSkgPT0g
MCA/IDAgOiAxKSArCisgICAgICAgICAgICgoeCB8IHVpbnQoMSA8PCAzMSkpID09IDAgPyAwIDog
MSkpOworfQordWNoYXIgcmV2ZXJzZWJpdHModWNoYXIgeCkgeworICAgIHJldHVybiB1Y2hhcigo
KHggJiB1Y2hhcigxIDw8IDApKSA8PCA3KSB8CisgICAgICAgICAgICgoeCAmIHVjaGFyKDEgPDwg
MSkpIDw8IDUpIHwKKyAgICAgICAgICAgKCh4ICYgdWNoYXIoMSA8PCAyKSkgPDwgMykgfAorICAg
ICAgICAgICAoKHggJiB1Y2hhcigxIDw8IDMpKSA8PCAxKSB8CisgICAgICAgICAgICgoeCAmIHVj
aGFyKDEgPDwgNCkpID4+IDEpIHwKKyAgICAgICAgICAgKCh4ICYgdWNoYXIoMSA8PCA1KSkgPj4g
MykgfAorICAgICAgICAgICAoKHggJiB1Y2hhcigxIDw8IDYpKSA+PiA1KSB8CisgICAgICAgICAg
ICgoeCAmIHVjaGFyKDEgPDwgNykpID4+IDcpKTsKK30KK3VzaG9ydCByZXZlcnNlYml0cyh1c2hv
cnQgeCkgeworICAgIHJldHVybiB1c2hvcnQoKCh4ICYgdXNob3J0KDEgPDwgMCkpIDw8IDE1KSB8
CisgICAgICAgICAgICgoeCAmIHVzaG9ydCgxIDw8IDEpKSA8PCAxMykgfAorICAgICAgICAgICAo
KHggJiB1c2hvcnQoMSA8PCAyKSkgPDwgMTEpIHwKKyAgICAgICAgICAgKCh4ICYgdXNob3J0KDEg
PDwgMykpIDw8IDkpIHwKKyAgICAgICAgICAgKCh4ICYgdXNob3J0KDEgPDwgNCkpIDw8IDcpIHwK
KyAgICAgICAgICAgKCh4ICYgdXNob3J0KDEgPDwgNSkpIDw8IDUpIHwKKyAgICAgICAgICAgKCh4
ICYgdXNob3J0KDEgPDwgNikpIDw8IDMpIHwKKyAgICAgICAgICAgKCh4ICYgdXNob3J0KDEgPDwg
NykpIDw8IDEpIHwKKyAgICAgICAgICAgKCh4ICYgdXNob3J0KDEgPDwgOCkpID4+IDEpIHwKKyAg
ICAgICAgICAgKCh4ICYgdXNob3J0KDEgPDwgOSkpID4+IDMpIHwKKyAgICAgICAgICAgKCh4ICYg
dXNob3J0KDEgPDwgMTApKSA+PiA1KSB8CisgICAgICAgICAgICgoeCAmIHVzaG9ydCgxIDw8IDEx
KSkgPj4gNykgfAorICAgICAgICAgICAoKHggJiB1c2hvcnQoMSA8PCAxMikpID4+IDkpIHwKKyAg
ICAgICAgICAgKCh4ICYgdXNob3J0KDEgPDwgMTMpKSA+PiAxMSkgfAorICAgICAgICAgICAoKHgg
JiB1c2hvcnQoMSA8PCAxNCkpID4+IDEzKSB8CisgICAgICAgICAgICgoeCAmIHVzaG9ydCgxIDw8
IDE1KSkgPj4gMTUpKTsKK30KK3VpbnQgcmV2ZXJzZWJpdHModWludCB4KSB7CisgICAgcmV0dXJu
IHVpbnQoKCh4ICYgdWludCgxIDw8IDApKSA8PCAzMSkgfAorICAgICAgICAgICAoKHggJiB1aW50
KDEgPDwgMSkpIDw8IDI5KSB8CisgICAgICAgICAgICgoeCAmIHVpbnQoMSA8PCAyKSkgPDwgMjcp
IHwKKyAgICAgICAgICAgKCh4ICYgdWludCgxIDw8IDMpKSA8PCAyNSkgfAorICAgICAgICAgICAo
KHggJiB1aW50KDEgPDwgNCkpIDw8IDIzKSB8CisgICAgICAgICAgICgoeCAmIHVpbnQoMSA8PCA1
KSkgPDwgMjEpIHwKKyAgICAgICAgICAgKCh4ICYgdWludCgxIDw8IDYpKSA8PCAxOSkgfAorICAg
ICAgICAgICAoKHggJiB1aW50KDEgPDwgNykpIDw8IDE3KSB8CisgICAgICAgICAgICgoeCAmIHVp
bnQoMSA8PCA4KSkgPDwgMTUpIHwKKyAgICAgICAgICAgKCh4ICYgdWludCgxIDw8IDkpKSA8PCAx
MykgfAorICAgICAgICAgICAoKHggJiB1aW50KDEgPDwgMTApKSA8PCAxMSkgfAorICAgICAgICAg
ICAoKHggJiB1aW50KDEgPDwgMTEpKSA8PCA5KSB8CisgICAgICAgICAgICgoeCAmIHVpbnQoMSA8
PCAxMikpIDw8IDcpIHwKKyAgICAgICAgICAgKCh4ICYgdWludCgxIDw8IDEzKSkgPDwgNSkgfAor
ICAgICAgICAgICAoKHggJiB1aW50KDEgPDwgMTQpKSA8PCAzKSB8CisgICAgICAgICAgICgoeCAm
IHVpbnQoMSA8PCAxNSkpIDw8IDEpIHwKKyAgICAgICAgICAgKCh4ICYgdWludCgxIDw8IDE2KSkg
Pj4gMSkgfAorICAgICAgICAgICAoKHggJiB1aW50KDEgPDwgMTcpKSA+PiAzKSB8CisgICAgICAg
ICAgICgoeCAmIHVpbnQoMSA8PCAxOCkpID4+IDUpIHwKKyAgICAgICAgICAgKCh4ICYgdWludCgx
IDw8IDE5KSkgPj4gNykgfAorICAgICAgICAgICAoKHggJiB1aW50KDEgPDwgMjApKSA+PiA5KSB8
CisgICAgICAgICAgICgoeCAmIHVpbnQoMSA8PCAyMSkpID4+IDExKSB8CisgICAgICAgICAgICgo
eCAmIHVpbnQoMSA8PCAyMikpID4+IDEzKSB8CisgICAgICAgICAgICgoeCAmIHVpbnQoMSA8PCAy
MykpID4+IDE1KSB8CisgICAgICAgICAgICgoeCAmIHVpbnQoMSA8PCAyNCkpID4+IDE3KSB8Cisg
ICAgICAgICAgICgoeCAmIHVpbnQoMSA8PCAyNSkpID4+IDE5KSB8CisgICAgICAgICAgICgoeCAm
IHVpbnQoMSA8PCAyNikpID4+IDIxKSB8CisgICAgICAgICAgICgoeCAmIHVpbnQoMSA8PCAyNykp
ID4+IDIzKSB8CisgICAgICAgICAgICgoeCAmIHVpbnQoMSA8PCAyOCkpID4+IDI1KSB8CisgICAg
ICAgICAgICgoeCAmIHVpbnQoMSA8PCAyOSkpID4+IDI3KSB8CisgICAgICAgICAgICgoeCAmIHVp
bnQoMSA8PCAzMCkpID4+IDI5KSB8CisgICAgICAgICAgICgoeCAmIHVpbnQoMSA8PCAzMSkpID4+
IDMxKSk7Cit9Cit1Y2hhcjIgY291bnRfYml0cyh1Y2hhcjIgeCkgeworICAgIHVjaGFyMiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gY291bnRfYml0cyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBj
b3VudF9iaXRzKHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgY291bnRfYml0
cyh1Y2hhcjMgeCkgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gY291bnRf
Yml0cyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBjb3VudF9iaXRzKHhbMV0pOworICAgIHJlc3Vs
dFsyXSA9IGNvdW50X2JpdHMoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBj
b3VudF9iaXRzKHVjaGFyNCB4KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBjb3VudF9iaXRzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGNvdW50X2JpdHMoeFsxXSk7Cisg
ICAgcmVzdWx0WzJdID0gY291bnRfYml0cyh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBjb3VudF9i
aXRzKHhbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgY291bnRfYml0cyh1c2hv
cnQyIHgpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNvdW50X2JpdHMo
eFswXSk7CisgICAgcmVzdWx0WzFdID0gY291bnRfYml0cyh4WzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXIzIGNvdW50X2JpdHModXNob3J0MyB4KSB7CisgICAgdWNoYXIzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBjb3VudF9iaXRzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGNv
dW50X2JpdHMoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gY291bnRfYml0cyh4WzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IGNvdW50X2JpdHModXNob3J0NCB4KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjb3VudF9iaXRzKHhbMF0pOworICAgIHJlc3Vs
dFsxXSA9IGNvdW50X2JpdHMoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gY291bnRfYml0cyh4WzJd
KTsKKyAgICByZXN1bHRbM10gPSBjb3VudF9iaXRzKHhbM10pOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjIgY291bnRfYml0cyh1aW50MiB4KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBjb3VudF9iaXRzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGNvdW50X2Jp
dHMoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBjb3VudF9iaXRzKHVpbnQz
IHgpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGNvdW50X2JpdHMoeFsw
XSk7CisgICAgcmVzdWx0WzFdID0gY291bnRfYml0cyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBj
b3VudF9iaXRzKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgY291bnRfYml0
cyh1aW50NCB4KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjb3VudF9i
aXRzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGNvdW50X2JpdHMoeFsxXSk7CisgICAgcmVzdWx0
WzJdID0gY291bnRfYml0cyh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBjb3VudF9iaXRzKHhbM10p
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgcmV2ZXJzZWJpdHModWNoYXIyIHgpIHsK
KyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHJldmVyc2ViaXRzKHhbMF0pOwor
ICAgIHJlc3VsdFsxXSA9IHJldmVyc2ViaXRzKHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjMgcmV2ZXJzZWJpdHModWNoYXIzIHgpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IHJldmVyc2ViaXRzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHJldmVyc2Vi
aXRzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHJldmVyc2ViaXRzKHhbMl0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgcmV2ZXJzZWJpdHModWNoYXI0IHgpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IHJldmVyc2ViaXRzKHhbMF0pOworICAgIHJlc3VsdFsx
XSA9IHJldmVyc2ViaXRzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHJldmVyc2ViaXRzKHhbMl0p
OworICAgIHJlc3VsdFszXSA9IHJldmVyc2ViaXRzKHhbM10pOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQyIHJldmVyc2ViaXRzKHVzaG9ydDIgeCkgeworICAgIHVzaG9ydDIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IHJldmVyc2ViaXRzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHJl
dmVyc2ViaXRzKHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIHJldmVyc2Vi
aXRzKHVzaG9ydDMgeCkgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHJl
dmVyc2ViaXRzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHJldmVyc2ViaXRzKHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IHJldmVyc2ViaXRzKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IHJldmVyc2ViaXRzKHVzaG9ydDQgeCkgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IHJldmVyc2ViaXRzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHJldmVyc2Vi
aXRzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHJldmVyc2ViaXRzKHhbMl0pOworICAgIHJlc3Vs
dFszXSA9IHJldmVyc2ViaXRzKHhbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBy
ZXZlcnNlYml0cyh1aW50MiB4KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IHJldmVyc2ViaXRzKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHJldmVyc2ViaXRzKHhbMV0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyByZXZlcnNlYml0cyh1aW50MyB4KSB7CisgICAg
dWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHJldmVyc2ViaXRzKHhbMF0pOworICAgIHJl
c3VsdFsxXSA9IHJldmVyc2ViaXRzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHJldmVyc2ViaXRz
KHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCByZXZlcnNlYml0cyh1aW50NCB4
KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHJldmVyc2ViaXRzKHhbMF0p
OworICAgIHJlc3VsdFsxXSA9IHJldmVyc2ViaXRzKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IHJl
dmVyc2ViaXRzKHhbMl0pOworICAgIHJlc3VsdFszXSA9IHJldmVyc2ViaXRzKHhbM10pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CisKK3VpbnQgZmlyc3RiaXRoaWdoKHVjaGFyIHgpIHsKKyAgICBp
ZiAoKHggJiB1Y2hhcigxIDw8IDcpKSAhPSAwKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAo
KHggJiB1Y2hhcigxIDw8IDYpKSAhPSAwKQorICAgICAgICByZXR1cm4gMTsKKyAgICBpZiAoKHgg
JiB1Y2hhcigxIDw8IDUpKSAhPSAwKQorICAgICAgICByZXR1cm4gMjsKKyAgICBpZiAoKHggJiB1
Y2hhcigxIDw8IDQpKSAhPSAwKQorICAgICAgICByZXR1cm4gMzsKKyAgICBpZiAoKHggJiB1Y2hh
cigxIDw8IDMpKSAhPSAwKQorICAgICAgICByZXR1cm4gNDsKKyAgICBpZiAoKHggJiB1Y2hhcigx
IDw8IDIpKSAhPSAwKQorICAgICAgICByZXR1cm4gNTsKKyAgICBpZiAoKHggJiB1Y2hhcigxIDw8
IDEpKSAhPSAwKQorICAgICAgICByZXR1cm4gNjsKKyAgICBpZiAoKHggJiB1Y2hhcigxIDw8IDAp
KSAhPSAwKQorICAgICAgICByZXR1cm4gNzsKKyAgICByZXR1cm4gODsKK30KK3VpbnQgZmlyc3Ri
aXRoaWdoKHVzaG9ydCB4KSB7CisgICAgaWYgKCh4ICYgdXNob3J0KDEgPDwgMTUpKSAhPSAwKQor
ICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoKHggJiB1c2hvcnQoMSA8PCAxNCkpICE9IDApCisg
ICAgICAgIHJldHVybiAxOworICAgIGlmICgoeCAmIHVzaG9ydCgxIDw8IDEzKSkgIT0gMCkKKyAg
ICAgICAgcmV0dXJuIDI7CisgICAgaWYgKCh4ICYgdXNob3J0KDEgPDwgMTIpKSAhPSAwKQorICAg
ICAgICByZXR1cm4gMzsKKyAgICBpZiAoKHggJiB1c2hvcnQoMSA8PCAxMSkpICE9IDApCisgICAg
ICAgIHJldHVybiA0OworICAgIGlmICgoeCAmIHVzaG9ydCgxIDw8IDEwKSkgIT0gMCkKKyAgICAg
ICAgcmV0dXJuIDU7CisgICAgaWYgKCh4ICYgdXNob3J0KDEgPDwgOSkpICE9IDApCisgICAgICAg
IHJldHVybiA2OworICAgIGlmICgoeCAmIHVzaG9ydCgxIDw8IDgpKSAhPSAwKQorICAgICAgICBy
ZXR1cm4gNzsKKyAgICBpZiAoKHggJiB1c2hvcnQoMSA8PCA3KSkgIT0gMCkKKyAgICAgICAgcmV0
dXJuIDg7CisgICAgaWYgKCh4ICYgdXNob3J0KDEgPDwgNikpICE9IDApCisgICAgICAgIHJldHVy
biA5OworICAgIGlmICgoeCAmIHVzaG9ydCgxIDw8IDUpKSAhPSAwKQorICAgICAgICByZXR1cm4g
MTA7CisgICAgaWYgKCh4ICYgdXNob3J0KDEgPDwgNCkpICE9IDApCisgICAgICAgIHJldHVybiAx
MTsKKyAgICBpZiAoKHggJiB1c2hvcnQoMSA8PCAzKSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDEy
OworICAgIGlmICgoeCAmIHVzaG9ydCgxIDw8IDIpKSAhPSAwKQorICAgICAgICByZXR1cm4gMTM7
CisgICAgaWYgKCh4ICYgdXNob3J0KDEgPDwgMSkpICE9IDApCisgICAgICAgIHJldHVybiAxNDsK
KyAgICBpZiAoKHggJiB1c2hvcnQoMSA8PCAwKSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDE1Owor
ICAgIHJldHVybiAxNjsKK30KK3VpbnQgZmlyc3RiaXRoaWdoKHVpbnQgeCkgeworICAgIGlmICgo
eCAmIHVpbnQoMSA8PCAzMSkpICE9IDApCisgICAgICAgIHJldHVybiAwOworICAgIGlmICgoeCAm
IHVpbnQoMSA8PCAzMCkpICE9IDApCisgICAgICAgIHJldHVybiAxOworICAgIGlmICgoeCAmIHVp
bnQoMSA8PCAyOSkpICE9IDApCisgICAgICAgIHJldHVybiAyOworICAgIGlmICgoeCAmIHVpbnQo
MSA8PCAyOCkpICE9IDApCisgICAgICAgIHJldHVybiAzOworICAgIGlmICgoeCAmIHVpbnQoMSA8
PCAyNykpICE9IDApCisgICAgICAgIHJldHVybiA0OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAy
NikpICE9IDApCisgICAgICAgIHJldHVybiA1OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyNSkp
ICE9IDApCisgICAgICAgIHJldHVybiA2OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyNCkpICE9
IDApCisgICAgICAgIHJldHVybiA3OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyMykpICE9IDAp
CisgICAgICAgIHJldHVybiA4OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyMikpICE9IDApCisg
ICAgICAgIHJldHVybiA5OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyMSkpICE9IDApCisgICAg
ICAgIHJldHVybiAxMDsKKyAgICBpZiAoKHggJiB1aW50KDEgPDwgMjApKSAhPSAwKQorICAgICAg
ICByZXR1cm4gMTE7CisgICAgaWYgKCh4ICYgdWludCgxIDw8IDE5KSkgIT0gMCkKKyAgICAgICAg
cmV0dXJuIDEyOworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAxOCkpICE9IDApCisgICAgICAgIHJl
dHVybiAxMzsKKyAgICBpZiAoKHggJiB1aW50KDEgPDwgMTcpKSAhPSAwKQorICAgICAgICByZXR1
cm4gMTQ7CisgICAgaWYgKCh4ICYgdWludCgxIDw8IDE2KSkgIT0gMCkKKyAgICAgICAgcmV0dXJu
IDE1OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAxNSkpICE9IDApCisgICAgICAgIHJldHVybiAx
NjsKKyAgICBpZiAoKHggJiB1aW50KDEgPDwgMTQpKSAhPSAwKQorICAgICAgICByZXR1cm4gMTc7
CisgICAgaWYgKCh4ICYgdWludCgxIDw8IDEzKSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDE4Owor
ICAgIGlmICgoeCAmIHVpbnQoMSA8PCAxMikpICE9IDApCisgICAgICAgIHJldHVybiAxOTsKKyAg
ICBpZiAoKHggJiB1aW50KDEgPDwgMTEpKSAhPSAwKQorICAgICAgICByZXR1cm4gMjA7CisgICAg
aWYgKCh4ICYgdWludCgxIDw8IDEwKSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDIxOworICAgIGlm
ICgoeCAmIHVpbnQoMSA8PCA5KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDIyOworICAgIGlmICgo
eCAmIHVpbnQoMSA8PCA4KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDIzOworICAgIGlmICgoeCAm
IHVpbnQoMSA8PCA3KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDI0OworICAgIGlmICgoeCAmIHVp
bnQoMSA8PCA2KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDI1OworICAgIGlmICgoeCAmIHVpbnQo
MSA8PCA1KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDI2OworICAgIGlmICgoeCAmIHVpbnQoMSA8
PCA0KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDI3OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAz
KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDI4OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyKSkg
IT0gMCkKKyAgICAgICAgcmV0dXJuIDI5OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAxKSkgIT0g
MCkKKyAgICAgICAgcmV0dXJuIDMwOworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAwKSkgIT0gMCkK
KyAgICAgICAgcmV0dXJuIDMxOworICAgIHJldHVybiAzMjsKK30KK3VpbnQgZmlyc3RiaXRoaWdo
KGNoYXIgeCkgeworICAgIHJldHVybiBmaXJzdGJpdGhpZ2godWNoYXIoeCkpOworfQordWludCBm
aXJzdGJpdGhpZ2goc2hvcnQgeCkgeworICAgIHJldHVybiBmaXJzdGJpdGhpZ2godXNob3J0KHgp
KTsKK30KK3VpbnQgZmlyc3RiaXRoaWdoKGludCB4KSB7CisgICAgcmV0dXJuIGZpcnN0Yml0aGln
aCh1aW50KHgpKTsKK30KK3VpbnQgZmlyc3RiaXRsb3codWNoYXIgeCkgeworICAgIGlmICgoeCAm
IHVjaGFyKDEgPDwgMCkpICE9IDApCisgICAgICAgIHJldHVybiA3OworICAgIGlmICgoeCAmIHVj
aGFyKDEgPDwgMSkpICE9IDApCisgICAgICAgIHJldHVybiA2OworICAgIGlmICgoeCAmIHVjaGFy
KDEgPDwgMikpICE9IDApCisgICAgICAgIHJldHVybiA1OworICAgIGlmICgoeCAmIHVjaGFyKDEg
PDwgMykpICE9IDApCisgICAgICAgIHJldHVybiA0OworICAgIGlmICgoeCAmIHVjaGFyKDEgPDwg
NCkpICE9IDApCisgICAgICAgIHJldHVybiAzOworICAgIGlmICgoeCAmIHVjaGFyKDEgPDwgNSkp
ICE9IDApCisgICAgICAgIHJldHVybiAyOworICAgIGlmICgoeCAmIHVjaGFyKDEgPDwgNikpICE9
IDApCisgICAgICAgIHJldHVybiAxOworICAgIGlmICgoeCAmIHVjaGFyKDEgPDwgNykpICE9IDAp
CisgICAgICAgIHJldHVybiAwOworICAgIHJldHVybiA4OworfQordWludCBmaXJzdGJpdGxvdyh1
c2hvcnQgeCkgeworICAgIGlmICgoeCAmIHVzaG9ydCgxIDw8IDApKSAhPSAwKQorICAgICAgICBy
ZXR1cm4gMTU7CisgICAgaWYgKCh4ICYgdXNob3J0KDEgPDwgMSkpICE9IDApCisgICAgICAgIHJl
dHVybiAxNDsKKyAgICBpZiAoKHggJiB1c2hvcnQoMSA8PCAyKSkgIT0gMCkKKyAgICAgICAgcmV0
dXJuIDEzOworICAgIGlmICgoeCAmIHVzaG9ydCgxIDw8IDMpKSAhPSAwKQorICAgICAgICByZXR1
cm4gMTI7CisgICAgaWYgKCh4ICYgdXNob3J0KDEgPDwgNCkpICE9IDApCisgICAgICAgIHJldHVy
biAxMTsKKyAgICBpZiAoKHggJiB1c2hvcnQoMSA8PCA1KSkgIT0gMCkKKyAgICAgICAgcmV0dXJu
IDEwOworICAgIGlmICgoeCAmIHVzaG9ydCgxIDw8IDYpKSAhPSAwKQorICAgICAgICByZXR1cm4g
OTsKKyAgICBpZiAoKHggJiB1c2hvcnQoMSA8PCA3KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDg7
CisgICAgaWYgKCh4ICYgdXNob3J0KDEgPDwgOCkpICE9IDApCisgICAgICAgIHJldHVybiA3Owor
ICAgIGlmICgoeCAmIHVzaG9ydCgxIDw8IDkpKSAhPSAwKQorICAgICAgICByZXR1cm4gNjsKKyAg
ICBpZiAoKHggJiB1c2hvcnQoMSA8PCAxMCkpICE9IDApCisgICAgICAgIHJldHVybiA1OworICAg
IGlmICgoeCAmIHVzaG9ydCgxIDw8IDExKSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDQ7CisgICAg
aWYgKCh4ICYgdXNob3J0KDEgPDwgMTIpKSAhPSAwKQorICAgICAgICByZXR1cm4gMzsKKyAgICBp
ZiAoKHggJiB1c2hvcnQoMSA8PCAxMykpICE9IDApCisgICAgICAgIHJldHVybiAyOworICAgIGlm
ICgoeCAmIHVzaG9ydCgxIDw8IDE0KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDE7CisgICAgaWYg
KCh4ICYgdXNob3J0KDEgPDwgMTUpKSAhPSAwKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1
cm4gMTY7Cit9Cit1aW50IGZpcnN0Yml0bG93KHVpbnQgeCkgeworICAgIGlmICgoeCAmIHVpbnQo
MSA8PCAwKSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDMxOworICAgIGlmICgoeCAmIHVpbnQoMSA8
PCAxKSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDMwOworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAy
KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDI5OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAzKSkg
IT0gMCkKKyAgICAgICAgcmV0dXJuIDI4OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCA0KSkgIT0g
MCkKKyAgICAgICAgcmV0dXJuIDI3OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCA1KSkgIT0gMCkK
KyAgICAgICAgcmV0dXJuIDI2OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCA2KSkgIT0gMCkKKyAg
ICAgICAgcmV0dXJuIDI1OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCA3KSkgIT0gMCkKKyAgICAg
ICAgcmV0dXJuIDI0OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCA4KSkgIT0gMCkKKyAgICAgICAg
cmV0dXJuIDIzOworICAgIGlmICgoeCAmIHVpbnQoMSA8PCA5KSkgIT0gMCkKKyAgICAgICAgcmV0
dXJuIDIyOworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAxMCkpICE9IDApCisgICAgICAgIHJldHVy
biAyMTsKKyAgICBpZiAoKHggJiB1aW50KDEgPDwgMTEpKSAhPSAwKQorICAgICAgICByZXR1cm4g
MjA7CisgICAgaWYgKCh4ICYgdWludCgxIDw8IDEyKSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDE5
OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAxMykpICE9IDApCisgICAgICAgIHJldHVybiAxODsK
KyAgICBpZiAoKHggJiB1aW50KDEgPDwgMTQpKSAhPSAwKQorICAgICAgICByZXR1cm4gMTc7Cisg
ICAgaWYgKCh4ICYgdWludCgxIDw8IDE1KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDE2OworICAg
IGlmICgoeCAmIHVpbnQoMSA8PCAxNikpICE9IDApCisgICAgICAgIHJldHVybiAxNTsKKyAgICBp
ZiAoKHggJiB1aW50KDEgPDwgMTcpKSAhPSAwKQorICAgICAgICByZXR1cm4gMTQ7CisgICAgaWYg
KCh4ICYgdWludCgxIDw8IDE4KSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDEzOworICAgIGlmICgo
eCAmIHVpbnQoMSA8PCAxOSkpICE9IDApCisgICAgICAgIHJldHVybiAxMjsKKyAgICBpZiAoKHgg
JiB1aW50KDEgPDwgMjApKSAhPSAwKQorICAgICAgICByZXR1cm4gMTE7CisgICAgaWYgKCh4ICYg
dWludCgxIDw8IDIxKSkgIT0gMCkKKyAgICAgICAgcmV0dXJuIDEwOworICAgIGlmICgoeCAmIHVp
bnQoMSA8PCAyMikpICE9IDApCisgICAgICAgIHJldHVybiA5OworICAgIGlmICgoeCAmIHVpbnQo
MSA8PCAyMykpICE9IDApCisgICAgICAgIHJldHVybiA4OworICAgIGlmICgoeCAmIHVpbnQoMSA8
PCAyNCkpICE9IDApCisgICAgICAgIHJldHVybiA3OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAy
NSkpICE9IDApCisgICAgICAgIHJldHVybiA2OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyNikp
ICE9IDApCisgICAgICAgIHJldHVybiA1OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyNykpICE9
IDApCisgICAgICAgIHJldHVybiA0OworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyOCkpICE9IDAp
CisgICAgICAgIHJldHVybiAzOworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAyOSkpICE9IDApCisg
ICAgICAgIHJldHVybiAyOworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAzMCkpICE9IDApCisgICAg
ICAgIHJldHVybiAxOworICAgIGlmICgoeCAmIHVpbnQoMSA8PCAzMSkpICE9IDApCisgICAgICAg
IHJldHVybiAwOworICAgIHJldHVybiAzMjsKK30KK3VpbnQgZmlyc3RiaXRsb3coY2hhciB4KSB7
CisgICAgcmV0dXJuIGZpcnN0Yml0bG93KHVjaGFyKHgpKTsKK30KK3VpbnQgZmlyc3RiaXRsb3co
c2hvcnQgeCkgeworICAgIHJldHVybiBmaXJzdGJpdGxvdyh1c2hvcnQoeCkpOworfQordWludCBm
aXJzdGJpdGxvdyhpbnQgeCkgeworICAgIHJldHVybiBmaXJzdGJpdGxvdyh1aW50KHgpKTsKK30K
K3VpbnQyIGZpcnN0Yml0aGlnaCh1Y2hhcjIgeCkgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBmaXJzdGJpdGhpZ2goeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRo
aWdoKHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBmaXJzdGJpdGhpZ2godWNo
YXIzIHgpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmlyc3RiaXRoaWdo
KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGZpcnN0Yml0aGlnaCh4WzFdKTsKKyAgICByZXN1bHRb
Ml0gPSBmaXJzdGJpdGhpZ2goeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IGZp
cnN0Yml0aGlnaCh1Y2hhcjQgeCkgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBmaXJzdGJpdGhpZ2goeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRoaWdoKHhbMV0p
OworICAgIHJlc3VsdFsyXSA9IGZpcnN0Yml0aGlnaCh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBm
aXJzdGJpdGhpZ2goeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIGZpcnN0Yml0
aGlnaCh1c2hvcnQyIHgpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmly
c3RiaXRoaWdoKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGZpcnN0Yml0aGlnaCh4WzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDMgZmlyc3RiaXRoaWdoKHVzaG9ydDMgeCkgeworICAg
IHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmaXJzdGJpdGhpZ2goeFswXSk7CisgICAg
cmVzdWx0WzFdID0gZmlyc3RiaXRoaWdoKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGZpcnN0Yml0
aGlnaCh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgZmlyc3RiaXRoaWdoKHVz
aG9ydDQgeCkgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmaXJzdGJpdGhp
Z2goeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRoaWdoKHhbMV0pOworICAgIHJlc3Vs
dFsyXSA9IGZpcnN0Yml0aGlnaCh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBmaXJzdGJpdGhpZ2go
eFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIGZpcnN0Yml0aGlnaCh1aW50MiB4
KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZpcnN0Yml0aGlnaCh4WzBd
KTsKKyAgICByZXN1bHRbMV0gPSBmaXJzdGJpdGhpZ2goeFsxXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQzIGZpcnN0Yml0aGlnaCh1aW50MyB4KSB7CisgICAgdWludDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGZpcnN0Yml0aGlnaCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmaXJz
dGJpdGhpZ2goeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZmlyc3RiaXRoaWdoKHhbMl0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBmaXJzdGJpdGhpZ2godWludDQgeCkgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmaXJzdGJpdGhpZ2goeFswXSk7CisgICAgcmVz
dWx0WzFdID0gZmlyc3RiaXRoaWdoKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGZpcnN0Yml0aGln
aCh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBmaXJzdGJpdGhpZ2goeFszXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQyIGZpcnN0Yml0aGlnaChjaGFyMiB4KSB7CisgICAgdWludDIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGZpcnN0Yml0aGlnaCh4WzBdKTsKKyAgICByZXN1bHRbMV0g
PSBmaXJzdGJpdGhpZ2goeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIGZpcnN0
Yml0aGlnaChjaGFyMyB4KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZp
cnN0Yml0aGlnaCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmaXJzdGJpdGhpZ2goeFsxXSk7Cisg
ICAgcmVzdWx0WzJdID0gZmlyc3RiaXRoaWdoKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBmaXJzdGJpdGhpZ2goY2hhcjQgeCkgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBmaXJzdGJpdGhpZ2goeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRo
aWdoKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGZpcnN0Yml0aGlnaCh4WzJdKTsKKyAgICByZXN1
bHRbM10gPSBmaXJzdGJpdGhpZ2goeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQy
IGZpcnN0Yml0aGlnaChzaG9ydDIgeCkgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBmaXJzdGJpdGhpZ2goeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRoaWdoKHhb
MV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBmaXJzdGJpdGhpZ2goc2hvcnQzIHgp
IHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmlyc3RiaXRoaWdoKHhbMF0p
OworICAgIHJlc3VsdFsxXSA9IGZpcnN0Yml0aGlnaCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBm
aXJzdGJpdGhpZ2goeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IGZpcnN0Yml0
aGlnaChzaG9ydDQgeCkgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmaXJz
dGJpdGhpZ2goeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRoaWdoKHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IGZpcnN0Yml0aGlnaCh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBmaXJzdGJp
dGhpZ2goeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIGZpcnN0Yml0aGlnaChp
bnQyIHgpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmlyc3RiaXRoaWdo
KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGZpcnN0Yml0aGlnaCh4WzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDMgZmlyc3RiaXRoaWdoKGludDMgeCkgeworICAgIHVpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBmaXJzdGJpdGhpZ2goeFswXSk7CisgICAgcmVzdWx0WzFdID0g
Zmlyc3RiaXRoaWdoKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGZpcnN0Yml0aGlnaCh4WzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgZmlyc3RiaXRoaWdoKGludDQgeCkgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmaXJzdGJpdGhpZ2goeFswXSk7CisgICAg
cmVzdWx0WzFdID0gZmlyc3RiaXRoaWdoKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGZpcnN0Yml0
aGlnaCh4WzJdKTsKKyAgICByZXN1bHRbM10gPSBmaXJzdGJpdGhpZ2goeFszXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQyIGZpcnN0Yml0bG93KHVjaGFyMiB4KSB7CisgICAgdWludDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZpcnN0Yml0bG93KHhbMF0pOworICAgIHJlc3VsdFsx
XSA9IGZpcnN0Yml0bG93KHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBmaXJz
dGJpdGxvdyh1Y2hhcjMgeCkgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBm
aXJzdGJpdGxvdyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmaXJzdGJpdGxvdyh4WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSBmaXJzdGJpdGxvdyh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgZmlyc3RiaXRsb3codWNoYXI0IHgpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gZmlyc3RiaXRsb3coeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRsb3co
eFsxXSk7CisgICAgcmVzdWx0WzJdID0gZmlyc3RiaXRsb3coeFsyXSk7CisgICAgcmVzdWx0WzNd
ID0gZmlyc3RiaXRsb3coeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIGZpcnN0
Yml0bG93KHVzaG9ydDIgeCkgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBm
aXJzdGJpdGxvdyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmaXJzdGJpdGxvdyh4WzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDMgZmlyc3RiaXRsb3codXNob3J0MyB4KSB7CisgICAg
dWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZpcnN0Yml0bG93KHhbMF0pOworICAgIHJl
c3VsdFsxXSA9IGZpcnN0Yml0bG93KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGZpcnN0Yml0bG93
KHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBmaXJzdGJpdGxvdyh1c2hvcnQ0
IHgpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmlyc3RiaXRsb3coeFsw
XSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRsb3coeFsxXSk7CisgICAgcmVzdWx0WzJdID0g
Zmlyc3RiaXRsb3coeFsyXSk7CisgICAgcmVzdWx0WzNdID0gZmlyc3RiaXRsb3coeFszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIGZpcnN0Yml0bG93KHVpbnQyIHgpIHsKKyAgICB1
aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmlyc3RiaXRsb3coeFswXSk7CisgICAgcmVz
dWx0WzFdID0gZmlyc3RiaXRsb3coeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQz
IGZpcnN0Yml0bG93KHVpbnQzIHgpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gZmlyc3RiaXRsb3coeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRsb3coeFsxXSk7
CisgICAgcmVzdWx0WzJdID0gZmlyc3RiaXRsb3coeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IGZpcnN0Yml0bG93KHVpbnQ0IHgpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gZmlyc3RiaXRsb3coeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRs
b3coeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZmlyc3RiaXRsb3coeFsyXSk7CisgICAgcmVzdWx0
WzNdID0gZmlyc3RiaXRsb3coeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIGZp
cnN0Yml0bG93KGNoYXIyIHgpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
Zmlyc3RiaXRsb3coeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRsb3coeFsxXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIGZpcnN0Yml0bG93KGNoYXIzIHgpIHsKKyAgICB1
aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmlyc3RiaXRsb3coeFswXSk7CisgICAgcmVz
dWx0WzFdID0gZmlyc3RiaXRsb3coeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZmlyc3RiaXRsb3co
eFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IGZpcnN0Yml0bG93KGNoYXI0IHgp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmlyc3RiaXRsb3coeFswXSk7
CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRsb3coeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZmly
c3RiaXRsb3coeFsyXSk7CisgICAgcmVzdWx0WzNdID0gZmlyc3RiaXRsb3coeFszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIGZpcnN0Yml0bG93KHNob3J0MiB4KSB7CisgICAgdWlu
dDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZpcnN0Yml0bG93KHhbMF0pOworICAgIHJlc3Vs
dFsxXSA9IGZpcnN0Yml0bG93KHhbMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBm
aXJzdGJpdGxvdyhzaG9ydDMgeCkgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBmaXJzdGJpdGxvdyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmaXJzdGJpdGxvdyh4WzFdKTsK
KyAgICByZXN1bHRbMl0gPSBmaXJzdGJpdGxvdyh4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgZmlyc3RiaXRsb3coc2hvcnQ0IHgpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gZmlyc3RiaXRsb3coeFswXSk7CisgICAgcmVzdWx0WzFdID0gZmlyc3RiaXRs
b3coeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZmlyc3RiaXRsb3coeFsyXSk7CisgICAgcmVzdWx0
WzNdID0gZmlyc3RiaXRsb3coeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIGZp
cnN0Yml0bG93KGludDIgeCkgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBm
aXJzdGJpdGxvdyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmaXJzdGJpdGxvdyh4WzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDMgZmlyc3RiaXRsb3coaW50MyB4KSB7CisgICAgdWlu
dDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGZpcnN0Yml0bG93KHhbMF0pOworICAgIHJlc3Vs
dFsxXSA9IGZpcnN0Yml0bG93KHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGZpcnN0Yml0bG93KHhb
Ml0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBmaXJzdGJpdGxvdyhpbnQ0IHgpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gZmlyc3RiaXRsb3coeFswXSk7Cisg
ICAgcmVzdWx0WzFdID0gZmlyc3RiaXRsb3coeFsxXSk7CisgICAgcmVzdWx0WzJdID0gZmlyc3Ri
aXRsb3coeFsyXSk7CisgICAgcmVzdWx0WzNdID0gZmlyc3RiaXRsb3coeFszXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KKworaGFsZiBkZXRlcm1pbmFudChoYWxmIHgpIHsKKyAgICByZXR1cm4g
eDsKK30KK2hhbGYgZGV0ZXJtaW5hbnQoaGFsZjJ4MiB4KSB7CisgICAgcmV0dXJuIHhbMF1bMF0g
KiB4WzFdWzFdIC0geFswXVsxXSAqIHhbMV1bMF07Cit9CitoYWxmIGRldGVybWluYW50KGhhbGYz
eDMgeCkgeworICAgIHJldHVybiB4WzBdWzBdICogeFsxXVsxXSAqIHhbMl1bMl0gKworICAgICAg
ICAgICB4WzBdWzFdICogeFsxXVsyXSAqIHhbMl1bMF0gKworICAgICAgICAgICB4WzBdWzJdICog
eFsxXVswXSAqIHhbMl1bMV0gLQorICAgICAgICAgICB4WzJdWzBdICogeFsxXVsxXSAqIHhbMF1b
Ml0gLQorICAgICAgICAgICB4WzJdWzFdICogeFsxXVsyXSAqIHhbMF1bMF0gLQorICAgICAgICAg
ICB4WzJdWzJdICogeFsxXVswXSAqIHhbMF1bMV07Cit9CitoYWxmIGRldGVybWluYW50KGhhbGY0
eDQgeCkgeworICAgIGhhbGYgcmVzdWx0OworICAgIGhhbGYzeDMgbWlub3I7CisgICAgbWlub3Jb
MF1bMF0gPSB4WzFdWzFdOworICAgIG1pbm9yWzBdWzFdID0geFsxXVsyXTsKKyAgICBtaW5vclsw
XVsyXSA9IHhbMV1bM107CisgICAgbWlub3JbMV1bMF0gPSB4WzJdWzFdOworICAgIG1pbm9yWzFd
WzFdID0geFsyXVsyXTsKKyAgICBtaW5vclsxXVsyXSA9IHhbMl1bM107CisgICAgbWlub3JbMl1b
MF0gPSB4WzNdWzFdOworICAgIG1pbm9yWzJdWzFdID0geFszXVsyXTsKKyAgICBtaW5vclsyXVsy
XSA9IHhbM11bM107CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgeFswXVswXSAqIGRldGVybWluYW50
KG1pbm9yKTsKKyAgICBtaW5vclswXVswXSA9IHhbMV1bMF07CisgICAgbWlub3JbMF1bMV0gPSB4
WzFdWzJdOworICAgIG1pbm9yWzBdWzJdID0geFsxXVszXTsKKyAgICBtaW5vclsxXVswXSA9IHhb
Ml1bMF07CisgICAgbWlub3JbMV1bMV0gPSB4WzJdWzJdOworICAgIG1pbm9yWzFdWzJdID0geFsy
XVszXTsKKyAgICBtaW5vclsyXVswXSA9IHhbM11bMF07CisgICAgbWlub3JbMl1bMV0gPSB4WzNd
WzJdOworICAgIG1pbm9yWzJdWzJdID0geFszXVszXTsKKyAgICByZXN1bHQgPSByZXN1bHQgLSB4
WzBdWzFdICogZGV0ZXJtaW5hbnQobWlub3IpOworICAgIG1pbm9yWzBdWzBdID0geFsxXVswXTsK
KyAgICBtaW5vclswXVsxXSA9IHhbMV1bMV07CisgICAgbWlub3JbMF1bMl0gPSB4WzFdWzNdOwor
ICAgIG1pbm9yWzFdWzBdID0geFsyXVswXTsKKyAgICBtaW5vclsxXVsxXSA9IHhbMl1bMV07Cisg
ICAgbWlub3JbMV1bMl0gPSB4WzJdWzNdOworICAgIG1pbm9yWzJdWzBdID0geFszXVswXTsKKyAg
ICBtaW5vclsyXVsxXSA9IHhbM11bMV07CisgICAgbWlub3JbMl1bMl0gPSB4WzNdWzNdOworICAg
IHJlc3VsdCA9IHJlc3VsdCArIHhbMF1bMl0gKiBkZXRlcm1pbmFudChtaW5vcik7CisgICAgbWlu
b3JbMF1bMF0gPSB4WzFdWzBdOworICAgIG1pbm9yWzBdWzFdID0geFsxXVsxXTsKKyAgICBtaW5v
clswXVsyXSA9IHhbMV1bMl07CisgICAgbWlub3JbMV1bMF0gPSB4WzJdWzBdOworICAgIG1pbm9y
WzFdWzFdID0geFsyXVsxXTsKKyAgICBtaW5vclsxXVsyXSA9IHhbMl1bMl07CisgICAgbWlub3Jb
Ml1bMF0gPSB4WzNdWzBdOworICAgIG1pbm9yWzJdWzFdID0geFszXVsxXTsKKyAgICBtaW5vclsy
XVsyXSA9IHhbM11bMl07CisgICAgcmVzdWx0ID0gcmVzdWx0IC0geFswXVszXSAqIGRldGVybWlu
YW50KG1pbm9yKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQgZGV0ZXJtaW5hbnQoZmxv
YXQgeCkgeworICAgIHJldHVybiB4OworfQorZmxvYXQgZGV0ZXJtaW5hbnQoZmxvYXQyeDIgeCkg
eworICAgIHJldHVybiB4WzBdWzBdICogeFsxXVsxXSAtIHhbMF1bMV0gKiB4WzFdWzBdOworfQor
ZmxvYXQgZGV0ZXJtaW5hbnQoZmxvYXQzeDMgeCkgeworICAgIHJldHVybiB4WzBdWzBdICogeFsx
XVsxXSAqIHhbMl1bMl0gKworICAgICAgICAgICB4WzBdWzFdICogeFsxXVsyXSAqIHhbMl1bMF0g
KworICAgICAgICAgICB4WzBdWzJdICogeFsxXVswXSAqIHhbMl1bMV0gLQorICAgICAgICAgICB4
WzJdWzBdICogeFsxXVsxXSAqIHhbMF1bMl0gLQorICAgICAgICAgICB4WzJdWzFdICogeFsxXVsy
XSAqIHhbMF1bMF0gLQorICAgICAgICAgICB4WzJdWzJdICogeFsxXVswXSAqIHhbMF1bMV07Cit9
CitmbG9hdCBkZXRlcm1pbmFudChmbG9hdDR4NCB4KSB7CisgICAgZmxvYXQgcmVzdWx0OworICAg
IGZsb2F0M3gzIG1pbm9yOworICAgIG1pbm9yWzBdWzBdID0geFsxXVsxXTsKKyAgICBtaW5vclsw
XVsxXSA9IHhbMV1bMl07CisgICAgbWlub3JbMF1bMl0gPSB4WzFdWzNdOworICAgIG1pbm9yWzFd
WzBdID0geFsyXVsxXTsKKyAgICBtaW5vclsxXVsxXSA9IHhbMl1bMl07CisgICAgbWlub3JbMV1b
Ml0gPSB4WzJdWzNdOworICAgIG1pbm9yWzJdWzBdID0geFszXVsxXTsKKyAgICBtaW5vclsyXVsx
XSA9IHhbM11bMl07CisgICAgbWlub3JbMl1bMl0gPSB4WzNdWzNdOworICAgIHJlc3VsdCA9IHJl
c3VsdCArIHhbMF1bMF0gKiBkZXRlcm1pbmFudChtaW5vcik7CisgICAgbWlub3JbMF1bMF0gPSB4
WzFdWzBdOworICAgIG1pbm9yWzBdWzFdID0geFsxXVsyXTsKKyAgICBtaW5vclswXVsyXSA9IHhb
MV1bM107CisgICAgbWlub3JbMV1bMF0gPSB4WzJdWzBdOworICAgIG1pbm9yWzFdWzFdID0geFsy
XVsyXTsKKyAgICBtaW5vclsxXVsyXSA9IHhbMl1bM107CisgICAgbWlub3JbMl1bMF0gPSB4WzNd
WzBdOworICAgIG1pbm9yWzJdWzFdID0geFszXVsyXTsKKyAgICBtaW5vclsyXVsyXSA9IHhbM11b
M107CisgICAgcmVzdWx0ID0gcmVzdWx0IC0geFswXVsxXSAqIGRldGVybWluYW50KG1pbm9yKTsK
KyAgICBtaW5vclswXVswXSA9IHhbMV1bMF07CisgICAgbWlub3JbMF1bMV0gPSB4WzFdWzFdOwor
ICAgIG1pbm9yWzBdWzJdID0geFsxXVszXTsKKyAgICBtaW5vclsxXVswXSA9IHhbMl1bMF07Cisg
ICAgbWlub3JbMV1bMV0gPSB4WzJdWzFdOworICAgIG1pbm9yWzFdWzJdID0geFsyXVszXTsKKyAg
ICBtaW5vclsyXVswXSA9IHhbM11bMF07CisgICAgbWlub3JbMl1bMV0gPSB4WzNdWzFdOworICAg
IG1pbm9yWzJdWzJdID0geFszXVszXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyB4WzBdWzJdICog
ZGV0ZXJtaW5hbnQobWlub3IpOworICAgIG1pbm9yWzBdWzBdID0geFsxXVswXTsKKyAgICBtaW5v
clswXVsxXSA9IHhbMV1bMV07CisgICAgbWlub3JbMF1bMl0gPSB4WzFdWzJdOworICAgIG1pbm9y
WzFdWzBdID0geFsyXVswXTsKKyAgICBtaW5vclsxXVsxXSA9IHhbMl1bMV07CisgICAgbWlub3Jb
MV1bMl0gPSB4WzJdWzJdOworICAgIG1pbm9yWzJdWzBdID0geFszXVswXTsKKyAgICBtaW5vclsy
XVsxXSA9IHhbM11bMV07CisgICAgbWlub3JbMl1bMl0gPSB4WzNdWzJdOworICAgIHJlc3VsdCA9
IHJlc3VsdCAtIHhbMF1bM10gKiBkZXRlcm1pbmFudChtaW5vcik7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KKwordWNoYXI0IGRzdCh1Y2hhcjQgc3JjMCwgdWNoYXI0IHNyYzEpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gMTsKKyAgICByZXN1bHQueSA9IHNyYzAueSAqIHNy
YzEueTsKKyAgICByZXN1bHQueiA9IHNyYzAuejsKKyAgICByZXN1bHQudyA9IHNyYzEudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBkc3QodXNob3J0NCBzcmMwLCB1c2hvcnQ0IHNy
YzEpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IDE7CisgICAgcmVzdWx0
LnkgPSBzcmMwLnkgKiBzcmMxLnk7CisgICAgcmVzdWx0LnogPSBzcmMwLno7CisgICAgcmVzdWx0
LncgPSBzcmMxLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IGRzdCh1aW50NCBzcmMw
LCB1aW50NCBzcmMxKSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gMTsKKyAg
ICByZXN1bHQueSA9IHNyYzAueSAqIHNyYzEueTsKKyAgICByZXN1bHQueiA9IHNyYzAuejsKKyAg
ICByZXN1bHQudyA9IHNyYzEudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgZHN0KGNo
YXI0IHNyYzAsIGNoYXI0IHNyYzEpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSAxOworICAgIHJlc3VsdC55ID0gc3JjMC55ICogc3JjMS55OworICAgIHJlc3VsdC56ID0gc3Jj
MC56OworICAgIHJlc3VsdC53ID0gc3JjMS53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgZHN0KHNob3J0NCBzcmMwLCBzaG9ydDQgc3JjMSkgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSAxOworICAgIHJlc3VsdC55ID0gc3JjMC55ICogc3JjMS55OworICAgIHJl
c3VsdC56ID0gc3JjMC56OworICAgIHJlc3VsdC53ID0gc3JjMS53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IGRzdChpbnQ0IHNyYzAsIGludDQgc3JjMSkgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gMTsKKyAgICByZXN1bHQueSA9IHNyYzAueSAqIHNyYzEueTsKKyAg
ICByZXN1bHQueiA9IHNyYzAuejsKKyAgICByZXN1bHQudyA9IHNyYzEudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgZHN0KGhhbGY0IHNyYzAsIGhhbGY0IHNyYzEpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSAxOworICAgIHJlc3VsdC55ID0gc3JjMC55ICogc3Jj
MS55OworICAgIHJlc3VsdC56ID0gc3JjMC56OworICAgIHJlc3VsdC53ID0gc3JjMS53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgZHN0KGZsb2F0NCBzcmMwLCBmbG9hdDQgc3JjMSkg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSAxOworICAgIHJlc3VsdC55ID0g
c3JjMC55ICogc3JjMS55OworICAgIHJlc3VsdC56ID0gc3JjMC56OworICAgIHJlc3VsdC53ID0g
c3JjMS53OworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2hhbGYgZGlzdGFuY2UoaGFsZiB4LCBo
YWxmIHkpIHsKKyAgICByZXR1cm4gbGVuZ3RoKHggLSB5KTsKK30KK2hhbGYgZGlzdGFuY2UoaGFs
ZjIgeCwgaGFsZjIgeSkgeworICAgIHJldHVybiBsZW5ndGgoeCAtIHkpOworfQoraGFsZiBkaXN0
YW5jZShoYWxmMyB4LCBoYWxmMyB5KSB7CisgICAgcmV0dXJuIGxlbmd0aCh4IC0geSk7Cit9Cito
YWxmIGRpc3RhbmNlKGhhbGY0IHgsIGhhbGY0IHkpIHsKKyAgICByZXR1cm4gbGVuZ3RoKHggLSB5
KTsKK30KK2Zsb2F0IGRpc3RhbmNlKGZsb2F0IHgsIGZsb2F0IHkpIHsKKyAgICByZXR1cm4gbGVu
Z3RoKHggLSB5KTsKK30KK2Zsb2F0IGRpc3RhbmNlKGZsb2F0MiB4LCBmbG9hdDIgeSkgeworICAg
IHJldHVybiBsZW5ndGgoeCAtIHkpOworfQorZmxvYXQgZGlzdGFuY2UoZmxvYXQzIHgsIGZsb2F0
MyB5KSB7CisgICAgcmV0dXJuIGxlbmd0aCh4IC0geSk7Cit9CitmbG9hdCBkaXN0YW5jZShmbG9h
dDQgeCwgZmxvYXQ0IHkpIHsKKyAgICByZXR1cm4gbGVuZ3RoKHggLSB5KTsKK30KKworaGFsZjMg
Y3Jvc3MoaGFsZjMgdSwgaGFsZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHUueSAqIHYueiAtIHUueiAqIHYueTsKKyAgICByZXN1bHQueSA9IHUueiAqIHYueCAtIHUu
eCAqIHYuejsKKyAgICByZXN1bHQueiA9IHUueCAqIHYueSAtIHUueSAqIHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzIGNyb3NzKGZsb2F0MyB1LCBmbG9hdDMgdikgeworICAgIGZs
b2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB1LnkgKiB2LnogLSB1LnogKiB2Lnk7CisgICAg
cmVzdWx0LnkgPSB1LnogKiB2LnggLSB1LnggKiB2Lno7CisgICAgcmVzdWx0LnogPSB1LnggKiB2
LnkgLSB1LnkgKiB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwordWNoYXIgZG90KHVjaGFy
IGEsIHVjaGFyIGIpIHsKKyAgICByZXR1cm4gYSAqIGI7Cit9Cit1Y2hhciBkb3QodWNoYXIyIGEs
IHVjaGFyMiBiKSB7CisgICAgdWNoYXIgcmVzdWx0ID0gMDsKKyAgICByZXN1bHQgPSByZXN1bHQg
KyBhWzBdICogYlswXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzFdICogYlsxXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIgZG90KHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHVj
aGFyIHJlc3VsdCA9IDA7CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVswXSAqIGJbMF07CisgICAg
cmVzdWx0ID0gcmVzdWx0ICsgYVsxXSAqIGJbMV07CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVsy
XSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyIGRvdCh1Y2hhcjQgYSwgdWNo
YXI0IGIpIHsKKyAgICB1Y2hhciByZXN1bHQgPSAwOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFb
MF0gKiBiWzBdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMV0gKiBiWzFdOworICAgIHJlc3Vs
dCA9IHJlc3VsdCArIGFbMl0gKiBiWzJdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbM10gKiBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQgZG90KHVzaG9ydCBhLCB1c2hvcnQg
YikgeworICAgIHJldHVybiBhICogYjsKK30KK3VzaG9ydCBkb3QodXNob3J0MiBhLCB1c2hvcnQy
IGIpIHsKKyAgICB1c2hvcnQgcmVzdWx0ID0gMDsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzBd
ICogYlswXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzFdICogYlsxXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0IGRvdCh1c2hvcnQzIGEsIHVzaG9ydDMgYikgeworICAgIHVzaG9y
dCByZXN1bHQgPSAwOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMF0gKiBiWzBdOworICAgIHJl
c3VsdCA9IHJlc3VsdCArIGFbMV0gKiBiWzFdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMl0g
KiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQgZG90KHVzaG9ydDQgYSwgdXNo
b3J0NCBiKSB7CisgICAgdXNob3J0IHJlc3VsdCA9IDA7CisgICAgcmVzdWx0ID0gcmVzdWx0ICsg
YVswXSAqIGJbMF07CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVsxXSAqIGJbMV07CisgICAgcmVz
dWx0ID0gcmVzdWx0ICsgYVsyXSAqIGJbMl07CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVszXSAq
IGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQgZG90KHVpbnQgYSwgdWludCBiKSB7
CisgICAgcmV0dXJuIGEgKiBiOworfQordWludCBkb3QodWludDIgYSwgdWludDIgYikgeworICAg
IHVpbnQgcmVzdWx0ID0gMDsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzBdICogYlswXTsKKyAg
ICByZXN1bHQgPSByZXN1bHQgKyBhWzFdICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludCBkb3QodWludDMgYSwgdWludDMgYikgeworICAgIHVpbnQgcmVzdWx0ID0gMDsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgKyBhWzBdICogYlswXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzFd
ICogYlsxXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzJdICogYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludCBkb3QodWludDQgYSwgdWludDQgYikgeworICAgIHVpbnQgcmVzdWx0
ID0gMDsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzBdICogYlswXTsKKyAgICByZXN1bHQgPSBy
ZXN1bHQgKyBhWzFdICogYlsxXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzJdICogYlsyXTsK
KyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhciBkb3QoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gYSAqIGI7Cit9CitjaGFy
IGRvdChjaGFyMiBhLCBjaGFyMiBiKSB7CisgICAgY2hhciByZXN1bHQgPSAwOworICAgIHJlc3Vs
dCA9IHJlc3VsdCArIGFbMF0gKiBiWzBdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMV0gKiBi
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyIGRvdChjaGFyMyBhLCBjaGFyMyBiKSB7
CisgICAgY2hhciByZXN1bHQgPSAwOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMF0gKiBiWzBd
OworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMV0gKiBiWzFdOworICAgIHJlc3VsdCA9IHJlc3Vs
dCArIGFbMl0gKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyIGRvdChjaGFyNCBh
LCBjaGFyNCBiKSB7CisgICAgY2hhciByZXN1bHQgPSAwOworICAgIHJlc3VsdCA9IHJlc3VsdCAr
IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMV0gKiBiWzFdOworICAgIHJl
c3VsdCA9IHJlc3VsdCArIGFbMl0gKiBiWzJdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbM10g
KiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydCBkb3Qoc2hvcnQgYSwgc2hvcnQg
YikgeworICAgIHJldHVybiBhICogYjsKK30KK3Nob3J0IGRvdChzaG9ydDIgYSwgc2hvcnQyIGIp
IHsKKyAgICBzaG9ydCByZXN1bHQgPSAwOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMF0gKiBi
WzBdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydCBkb3Qoc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQgcmVzdWx0
ID0gMDsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzBdICogYlswXTsKKyAgICByZXN1bHQgPSBy
ZXN1bHQgKyBhWzFdICogYlsxXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzJdICogYlsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQgZG90KHNob3J0NCBhLCBzaG9ydDQgYikgewor
ICAgIHNob3J0IHJlc3VsdCA9IDA7CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVswXSAqIGJbMF07
CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVsxXSAqIGJbMV07CisgICAgcmVzdWx0ID0gcmVzdWx0
ICsgYVsyXSAqIGJbMl07CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVszXSAqIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludCBkb3QoaW50IGEsIGludCBiKSB7CisgICAgcmV0dXJuIGEg
KiBiOworfQoraW50IGRvdChpbnQyIGEsIGludDIgYikgeworICAgIGludCByZXN1bHQgPSAwOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMF0gKiBiWzBdOworICAgIHJlc3VsdCA9IHJlc3VsdCAr
IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQgZG90KGludDMgYSwgaW50
MyBiKSB7CisgICAgaW50IHJlc3VsdCA9IDA7CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVswXSAq
IGJbMF07CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVsxXSAqIGJbMV07CisgICAgcmVzdWx0ID0g
cmVzdWx0ICsgYVsyXSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludCBkb3QoaW50
NCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQgcmVzdWx0ID0gMDsKKyAgICByZXN1bHQgPSByZXN1bHQg
KyBhWzBdICogYlswXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzFdICogYlsxXTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgKyBhWzJdICogYlsyXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzNd
ICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZiBkb3QoaGFsZiBhLCBoYWxmIGIp
IHsKKyAgICByZXR1cm4gYSAqIGI7Cit9CitoYWxmIGRvdChoYWxmMiBhLCBoYWxmMiBiKSB7Cisg
ICAgaGFsZiByZXN1bHQgPSAwOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMF0gKiBiWzBdOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmIGRvdChoYWxmMyBhLCBoYWxmMyBiKSB7CisgICAgaGFsZiByZXN1bHQgPSAwOworICAg
IHJlc3VsdCA9IHJlc3VsdCArIGFbMF0gKiBiWzBdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFb
MV0gKiBiWzFdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMl0gKiBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmIGRvdChoYWxmNCBhLCBoYWxmNCBiKSB7CisgICAgaGFsZiByZXN1
bHQgPSAwOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMF0gKiBiWzBdOworICAgIHJlc3VsdCA9
IHJlc3VsdCArIGFbMV0gKiBiWzFdOworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMl0gKiBiWzJd
OworICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbM10gKiBiWzNdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdCBkb3QoZmxvYXQgYSwgZmxvYXQgYikgeworICAgIHJldHVybiBhICogYjsKK30K
K2Zsb2F0IGRvdChmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdCByZXN1bHQgPSAwOwor
ICAgIHJlc3VsdCA9IHJlc3VsdCArIGFbMF0gKiBiWzBdOworICAgIHJlc3VsdCA9IHJlc3VsdCAr
IGFbMV0gKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdCBkb3QoZmxvYXQzIGEs
IGZsb2F0MyBiKSB7CisgICAgZmxvYXQgcmVzdWx0ID0gMDsKKyAgICByZXN1bHQgPSByZXN1bHQg
KyBhWzBdICogYlswXTsKKyAgICByZXN1bHQgPSByZXN1bHQgKyBhWzFdICogYlsxXTsKKyAgICBy
ZXN1bHQgPSByZXN1bHQgKyBhWzJdICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQgZG90KGZsb2F0NCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0IHJlc3VsdCA9IDA7CisgICAg
cmVzdWx0ID0gcmVzdWx0ICsgYVswXSAqIGJbMF07CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVsx
XSAqIGJbMV07CisgICAgcmVzdWx0ID0gcmVzdWx0ICsgYVsyXSAqIGJbMl07CisgICAgcmVzdWx0
ID0gcmVzdWx0ICsgYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworaGFsZiBm
YWNlZm9yd2FyZChoYWxmIG4sIGhhbGYgaSwgaGFsZiBuZykgeworICAgIHJldHVybiAtbiAqIHNp
Z24oZG90KGksIG5nKSk7Cit9CitoYWxmMiBmYWNlZm9yd2FyZChoYWxmMiBuLCBoYWxmMiBpLCBo
YWxmMiBuZykgeworICAgIHJldHVybiAtbiAqIHNpZ24oZG90KGksIG5nKSk7Cit9CitoYWxmMyBm
YWNlZm9yd2FyZChoYWxmMyBuLCBoYWxmMyBpLCBoYWxmMyBuZykgeworICAgIHJldHVybiAtbiAq
IHNpZ24oZG90KGksIG5nKSk7Cit9CitoYWxmNCBmYWNlZm9yd2FyZChoYWxmNCBuLCBoYWxmNCBp
LCBoYWxmNCBuZykgeworICAgIHJldHVybiAtbiAqIHNpZ24oZG90KGksIG5nKSk7Cit9CitmbG9h
dCBmYWNlZm9yd2FyZChmbG9hdCBuLCBmbG9hdCBpLCBmbG9hdCBuZykgeworICAgIHJldHVybiAt
biAqIHNpZ24oZG90KGksIG5nKSk7Cit9CitmbG9hdDIgZmFjZWZvcndhcmQoZmxvYXQyIG4sIGZs
b2F0MiBpLCBmbG9hdDIgbmcpIHsKKyAgICByZXR1cm4gLW4gKiBzaWduKGRvdChpLCBuZykpOwor
fQorZmxvYXQzIGZhY2Vmb3J3YXJkKGZsb2F0MyBuLCBmbG9hdDMgaSwgZmxvYXQzIG5nKSB7Cisg
ICAgcmV0dXJuIC1uICogc2lnbihkb3QoaSwgbmcpKTsKK30KK2Zsb2F0NCBmYWNlZm9yd2FyZChm
bG9hdDQgbiwgZmxvYXQ0IGksIGZsb2F0NCBuZykgeworICAgIHJldHVybiAtbiAqIHNpZ24oZG90
KGksIG5nKSk7Cit9CisKK2hhbGYgbGVuZ3RoKGhhbGYgeCkgeworICAgIHJldHVybiBzcXJ0KGRv
dCh4LCB4KSk7Cit9CitoYWxmIGxlbmd0aChoYWxmMiB4KSB7CisgICAgcmV0dXJuIHNxcnQoZG90
KHgsIHgpKTsKK30KK2hhbGYgbGVuZ3RoKGhhbGYzIHgpIHsKKyAgICByZXR1cm4gc3FydChkb3Qo
eCwgeCkpOworfQoraGFsZiBsZW5ndGgoaGFsZjQgeCkgeworICAgIHJldHVybiBzcXJ0KGRvdCh4
LCB4KSk7Cit9CitmbG9hdCBsZW5ndGgoZmxvYXQgeCkgeworICAgIHJldHVybiBzcXJ0KGRvdCh4
LCB4KSk7Cit9CitmbG9hdCBsZW5ndGgoZmxvYXQyIHgpIHsKKyAgICByZXR1cm4gc3FydChkb3Qo
eCwgeCkpOworfQorZmxvYXQgbGVuZ3RoKGZsb2F0MyB4KSB7CisgICAgcmV0dXJuIHNxcnQoZG90
KHgsIHgpKTsKK30KK2Zsb2F0IGxlbmd0aChmbG9hdDQgeCkgeworICAgIHJldHVybiBzcXJ0KGRv
dCh4LCB4KSk7Cit9CisKK2hhbGY0IGxpdChoYWxmIG5fZG90X2wsIGhhbGYgbl9kb3RfaCwgaGFs
ZiBtKSB7CisgICAgaGFsZiBhbWJpZW50ID0gMTsKKyAgICBoYWxmIGRpZmZ1c2UgPSBtYXgoMCwg
bl9kb3RfbCk7CisgICAgaGFsZiBzcGVjdWxhciA9IG5fZG90X2wgPCAwIHx8IG5fZG90X2ggPCAw
ID8gMCA6IG5fZG90X2ggKiBtOworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IGFt
YmllbnQ7CisgICAgcmVzdWx0LnkgPSBkaWZmdXNlOworICAgIHJlc3VsdC56ID0gc3BlY3VsYXI7
CisgICAgcmVzdWx0LncgPSAxOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgbGl0KGZs
b2F0IG5fZG90X2wsIGZsb2F0IG5fZG90X2gsIGZsb2F0IG0pIHsKKyAgICBmbG9hdCBhbWJpZW50
ID0gMTsKKyAgICBmbG9hdCBkaWZmdXNlID0gbWF4KDAsIG5fZG90X2wpOworICAgIGZsb2F0IHNw
ZWN1bGFyID0gbl9kb3RfbCA8IDAgfHwgbl9kb3RfaCA8IDAgPyAwIDogbl9kb3RfaCAqIG07Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IGFtYmllbnQ7CisgICAgcmVzdWx0Lnkg
PSBkaWZmdXNlOworICAgIHJlc3VsdC56ID0gc3BlY3VsYXI7CisgICAgcmVzdWx0LncgPSAxOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2hhbGYgbm9ybWFsaXplKGhhbGYgeCkgeworICAgIHJl
dHVybiB4IC8gbGVuZ3RoKHgpOworfQoraGFsZjIgbm9ybWFsaXplKGhhbGYyIHgpIHsKKyAgICBy
ZXR1cm4geCAvIGxlbmd0aCh4KTsKK30KK2hhbGYzIG5vcm1hbGl6ZShoYWxmMyB4KSB7CisgICAg
cmV0dXJuIHggLyBsZW5ndGgoeCk7Cit9CitoYWxmNCBub3JtYWxpemUoaGFsZjQgeCkgeworICAg
IHJldHVybiB4IC8gbGVuZ3RoKHgpOworfQorZmxvYXQgbm9ybWFsaXplKGZsb2F0IHgpIHsKKyAg
ICByZXR1cm4geCAvIGxlbmd0aCh4KTsKK30KK2Zsb2F0MiBub3JtYWxpemUoZmxvYXQyIHgpIHsK
KyAgICByZXR1cm4geCAvIGxlbmd0aCh4KTsKK30KK2Zsb2F0MyBub3JtYWxpemUoZmxvYXQzIHgp
IHsKKyAgICByZXR1cm4geCAvIGxlbmd0aCh4KTsKK30KK2Zsb2F0NCBub3JtYWxpemUoZmxvYXQ0
IHgpIHsKKyAgICByZXR1cm4geCAvIGxlbmd0aCh4KTsKK30KKworaGFsZiByZWZsZWN0KGhhbGYg
aSwgaGFsZiBuKSB7CisgICAgcmV0dXJuIGkgLSAyICogbiAqIGRvdChpLCBuKTsKK30KK2hhbGYy
IHJlZmxlY3QoaGFsZjIgaSwgaGFsZjIgbikgeworICAgIHJldHVybiBpIC0gMiAqIG4gKiBkb3Qo
aSwgbik7Cit9CitoYWxmMyByZWZsZWN0KGhhbGYzIGksIGhhbGYzIG4pIHsKKyAgICByZXR1cm4g
aSAtIDIgKiBuICogZG90KGksIG4pOworfQoraGFsZjQgcmVmbGVjdChoYWxmNCBpLCBoYWxmNCBu
KSB7CisgICAgcmV0dXJuIGkgLSAyICogbiAqIGRvdChpLCBuKTsKK30KK2Zsb2F0IHJlZmxlY3Qo
ZmxvYXQgaSwgZmxvYXQgbikgeworICAgIHJldHVybiBpIC0gMiAqIG4gKiBkb3QoaSwgbik7Cit9
CitmbG9hdDIgcmVmbGVjdChmbG9hdDIgaSwgZmxvYXQyIG4pIHsKKyAgICByZXR1cm4gaSAtIDIg
KiBuICogZG90KGksIG4pOworfQorZmxvYXQzIHJlZmxlY3QoZmxvYXQzIGksIGZsb2F0MyBuKSB7
CisgICAgcmV0dXJuIGkgLSAyICogbiAqIGRvdChpLCBuKTsKK30KK2Zsb2F0NCByZWZsZWN0KGZs
b2F0NCBpLCBmbG9hdDQgbikgeworICAgIHJldHVybiBpIC0gMiAqIG4gKiBkb3QoaSwgbik7Cit9
CisKK2hhbGYgcmVmcmFjdChoYWxmIGksIGhhbGYgbiwgaGFsZiBldGEpIHsKKyAgICBoYWxmIHJl
c3VsdDsKKyAgICBoYWxmIGsgPSAxIC0gZXRhICogZXRhICogKDEgLSBkb3QobiwgaSkgKiBkb3Qo
biwgaSkpOworICAgIGlmIChrIDwgMCkKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICByZXR1
cm4gZXRhICogaSAtIChldGEgKiBkb3QobiwgaSkgKyBzcXJ0KGspKSAqIG47Cit9CitoYWxmMiBy
ZWZyYWN0KGhhbGYyIGksIGhhbGYyIG4sIGhhbGYgZXRhKSB7CisgICAgaGFsZjIgcmVzdWx0Owor
ICAgIGhhbGYgayA9IDEgLSBldGEgKiBldGEgKiAoMSAtIGRvdChuLCBpKSAqIGRvdChuLCBpKSk7
CisgICAgaWYgKGsgPCAwKQorICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiBldGEg
KiBpIC0gKGV0YSAqIGRvdChuLCBpKSArIHNxcnQoaykpICogbjsKK30KK2hhbGYzIHJlZnJhY3Qo
aGFsZjMgaSwgaGFsZjMgbiwgaGFsZiBldGEpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgaGFs
ZiBrID0gMSAtIGV0YSAqIGV0YSAqICgxIC0gZG90KG4sIGkpICogZG90KG4sIGkpKTsKKyAgICBp
ZiAoayA8IDApCisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgcmV0dXJuIGV0YSAqIGkgLSAo
ZXRhICogZG90KG4sIGkpICsgc3FydChrKSkgKiBuOworfQoraGFsZjQgcmVmcmFjdChoYWxmNCBp
LCBoYWxmNCBuLCBoYWxmIGV0YSkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBoYWxmIGsgPSAx
IC0gZXRhICogZXRhICogKDEgLSBkb3QobiwgaSkgKiBkb3QobiwgaSkpOworICAgIGlmIChrIDwg
MCkKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICByZXR1cm4gZXRhICogaSAtIChldGEgKiBk
b3QobiwgaSkgKyBzcXJ0KGspKSAqIG47Cit9CitmbG9hdCByZWZyYWN0KGZsb2F0IGksIGZsb2F0
IG4sIGZsb2F0IGV0YSkgeworICAgIGZsb2F0IHJlc3VsdDsKKyAgICBmbG9hdCBrID0gMSAtIGV0
YSAqIGV0YSAqICgxIC0gZG90KG4sIGkpICogZG90KG4sIGkpKTsKKyAgICBpZiAoayA8IDApCisg
ICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgcmV0dXJuIGV0YSAqIGkgLSAoZXRhICogZG90KG4s
IGkpICsgc3FydChrKSkgKiBuOworfQorZmxvYXQyIHJlZnJhY3QoZmxvYXQyIGksIGZsb2F0MiBu
LCBmbG9hdCBldGEpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIGZsb2F0IGsgPSAxIC0gZXRh
ICogZXRhICogKDEgLSBkb3QobiwgaSkgKiBkb3QobiwgaSkpOworICAgIGlmIChrIDwgMCkKKyAg
ICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICByZXR1cm4gZXRhICogaSAtIChldGEgKiBkb3Qobiwg
aSkgKyBzcXJ0KGspKSAqIG47Cit9CitmbG9hdDMgcmVmcmFjdChmbG9hdDMgaSwgZmxvYXQzIG4s
IGZsb2F0IGV0YSkgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgZmxvYXQgayA9IDEgLSBldGEg
KiBldGEgKiAoMSAtIGRvdChuLCBpKSAqIGRvdChuLCBpKSk7CisgICAgaWYgKGsgPCAwKQorICAg
ICAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiBldGEgKiBpIC0gKGV0YSAqIGRvdChuLCBp
KSArIHNxcnQoaykpICogbjsKK30KK2Zsb2F0NCByZWZyYWN0KGZsb2F0NCBpLCBmbG9hdDQgbiwg
ZmxvYXQgZXRhKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBmbG9hdCBrID0gMSAtIGV0YSAq
IGV0YSAqICgxIC0gZG90KG4sIGkpICogZG90KG4sIGkpKTsKKyAgICBpZiAoayA8IDApCisgICAg
ICAgIHJldHVybiByZXN1bHQ7CisgICAgcmV0dXJuIGV0YSAqIGkgLSAoZXRhICogZG90KG4sIGkp
ICsgc3FydChrKSkgKiBuOworfQorCitoYWxmIHRyYW5zcG9zZShoYWxmIHgpIHsKKyAgICByZXR1
cm4geDsKK30KK2hhbGYyeDIgdHJhbnNwb3NlKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IHhbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geFsx
XVswXTsKKyAgICByZXN1bHRbMV1bMF0gPSB4WzBdWzFdOworICAgIHJlc3VsdFsxXVsxXSA9IHhb
MV1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgdHJhbnNwb3NlKGhhbGYzeDIg
eCkgeworICAgIGhhbGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHhbMF1bMF07Cisg
ICAgcmVzdWx0WzBdWzFdID0geFsxXVswXTsKKyAgICByZXN1bHRbMF1bMl0gPSB4WzJdWzBdOwor
ICAgIHJlc3VsdFsxXVswXSA9IHhbMF1bMV07CisgICAgcmVzdWx0WzFdWzFdID0geFsxXVsxXTsK
KyAgICByZXN1bHRbMV1bMl0gPSB4WzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
Mng0IHRyYW5zcG9zZShoYWxmNHgyIHgpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSB4WzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IHhbMV1bMF07CisgICAgcmVz
dWx0WzBdWzJdID0geFsyXVswXTsKKyAgICByZXN1bHRbMF1bM10gPSB4WzNdWzBdOworICAgIHJl
c3VsdFsxXVswXSA9IHhbMF1bMV07CisgICAgcmVzdWx0WzFdWzFdID0geFsxXVsxXTsKKyAgICBy
ZXN1bHRbMV1bMl0gPSB4WzJdWzFdOworICAgIHJlc3VsdFsxXVszXSA9IHhbM11bMV07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgdHJhbnNwb3NlKGhhbGYyeDMgeCkgeworICAgIGhh
bGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHhbMF1bMF07CisgICAgcmVzdWx0WzBd
WzFdID0geFsxXVswXTsKKyAgICByZXN1bHRbMV1bMF0gPSB4WzBdWzFdOworICAgIHJlc3VsdFsx
XVsxXSA9IHhbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0geFswXVsyXTsKKyAgICByZXN1bHRb
Ml1bMV0gPSB4WzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIHRyYW5zcG9z
ZShoYWxmM3gzIHgpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB4
WzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IHhbMV1bMF07CisgICAgcmVzdWx0WzBdWzJdID0g
eFsyXVswXTsKKyAgICByZXN1bHRbMV1bMF0gPSB4WzBdWzFdOworICAgIHJlc3VsdFsxXVsxXSA9
IHhbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0geFsyXVsxXTsKKyAgICByZXN1bHRbMl1bMF0g
PSB4WzBdWzJdOworICAgIHJlc3VsdFsyXVsxXSA9IHhbMV1bMl07CisgICAgcmVzdWx0WzJdWzJd
ID0geFsyXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCB0cmFuc3Bvc2UoaGFs
ZjR4MyB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geFswXVsw
XTsKKyAgICByZXN1bHRbMF1bMV0gPSB4WzFdWzBdOworICAgIHJlc3VsdFswXVsyXSA9IHhbMl1b
MF07CisgICAgcmVzdWx0WzBdWzNdID0geFszXVswXTsKKyAgICByZXN1bHRbMV1bMF0gPSB4WzBd
WzFdOworICAgIHJlc3VsdFsxXVsxXSA9IHhbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0geFsy
XVsxXTsKKyAgICByZXN1bHRbMV1bM10gPSB4WzNdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IHhb
MF1bMl07CisgICAgcmVzdWx0WzJdWzFdID0geFsxXVsyXTsKKyAgICByZXN1bHRbMl1bMl0gPSB4
WzJdWzJdOworICAgIHJlc3VsdFsyXVszXSA9IHhbM11bMl07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0eDIgdHJhbnNwb3NlKGhhbGYyeDQgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IHhbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geFsxXVswXTsK
KyAgICByZXN1bHRbMV1bMF0gPSB4WzBdWzFdOworICAgIHJlc3VsdFsxXVsxXSA9IHhbMV1bMV07
CisgICAgcmVzdWx0WzJdWzBdID0geFswXVsyXTsKKyAgICByZXN1bHRbMl1bMV0gPSB4WzFdWzJd
OworICAgIHJlc3VsdFszXVswXSA9IHhbMF1bM107CisgICAgcmVzdWx0WzNdWzFdID0geFsxXVsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyB0cmFuc3Bvc2UoaGFsZjN4NCB4KSB7
CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geFswXVswXTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSB4WzFdWzBdOworICAgIHJlc3VsdFswXVsyXSA9IHhbMl1bMF07CisgICAg
cmVzdWx0WzFdWzBdID0geFswXVsxXTsKKyAgICByZXN1bHRbMV1bMV0gPSB4WzFdWzFdOworICAg
IHJlc3VsdFsxXVsyXSA9IHhbMl1bMV07CisgICAgcmVzdWx0WzJdWzBdID0geFswXVsyXTsKKyAg
ICByZXN1bHRbMl1bMV0gPSB4WzFdWzJdOworICAgIHJlc3VsdFsyXVsyXSA9IHhbMl1bMl07Cisg
ICAgcmVzdWx0WzNdWzBdID0geFswXVszXTsKKyAgICByZXN1bHRbM11bMV0gPSB4WzFdWzNdOwor
ICAgIHJlc3VsdFszXVsyXSA9IHhbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
eDQgdHJhbnNwb3NlKGhhbGY0eDQgeCkgeworICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IHhbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geFsxXVswXTsKKyAgICByZXN1
bHRbMF1bMl0gPSB4WzJdWzBdOworICAgIHJlc3VsdFswXVszXSA9IHhbM11bMF07CisgICAgcmVz
dWx0WzFdWzBdID0geFswXVsxXTsKKyAgICByZXN1bHRbMV1bMV0gPSB4WzFdWzFdOworICAgIHJl
c3VsdFsxXVsyXSA9IHhbMl1bMV07CisgICAgcmVzdWx0WzFdWzNdID0geFszXVsxXTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSB4WzBdWzJdOworICAgIHJlc3VsdFsyXVsxXSA9IHhbMV1bMl07CisgICAg
cmVzdWx0WzJdWzJdID0geFsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSB4WzNdWzJdOworICAg
IHJlc3VsdFszXVswXSA9IHhbMF1bM107CisgICAgcmVzdWx0WzNdWzFdID0geFsxXVszXTsKKyAg
ICByZXN1bHRbM11bMl0gPSB4WzJdWzNdOworICAgIHJlc3VsdFszXVszXSA9IHhbM11bM107Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0IHRyYW5zcG9zZShmbG9hdCB4KSB7CisgICAgcmV0
dXJuIHg7Cit9CitmbG9hdDJ4MiB0cmFuc3Bvc2UoZmxvYXQyeDIgeCkgeworICAgIGZsb2F0Mngy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB4WzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9
IHhbMV1bMF07CisgICAgcmVzdWx0WzFdWzBdID0geFswXVsxXTsKKyAgICByZXN1bHRbMV1bMV0g
PSB4WzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyB0cmFuc3Bvc2UoZmxv
YXQzeDIgeCkgeworICAgIGZsb2F0MngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB4WzBd
WzBdOworICAgIHJlc3VsdFswXVsxXSA9IHhbMV1bMF07CisgICAgcmVzdWx0WzBdWzJdID0geFsy
XVswXTsKKyAgICByZXN1bHRbMV1bMF0gPSB4WzBdWzFdOworICAgIHJlc3VsdFsxXVsxXSA9IHhb
MV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0geFsyXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQyeDQgdHJhbnNwb3NlKGZsb2F0NHgyIHgpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0geFswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSB4WzFdWzBd
OworICAgIHJlc3VsdFswXVsyXSA9IHhbMl1bMF07CisgICAgcmVzdWx0WzBdWzNdID0geFszXVsw
XTsKKyAgICByZXN1bHRbMV1bMF0gPSB4WzBdWzFdOworICAgIHJlc3VsdFsxXVsxXSA9IHhbMV1b
MV07CisgICAgcmVzdWx0WzFdWzJdID0geFsyXVsxXTsKKyAgICByZXN1bHRbMV1bM10gPSB4WzNd
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiB0cmFuc3Bvc2UoZmxvYXQyeDMg
eCkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB4WzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IHhbMV1bMF07CisgICAgcmVzdWx0WzFdWzBdID0geFswXVsxXTsK
KyAgICByZXN1bHRbMV1bMV0gPSB4WzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IHhbMF1bMl07
CisgICAgcmVzdWx0WzJdWzFdID0geFsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQzeDMgdHJhbnNwb3NlKGZsb2F0M3gzIHgpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0geFswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSB4WzFdWzBdOworICAg
IHJlc3VsdFswXVsyXSA9IHhbMl1bMF07CisgICAgcmVzdWx0WzFdWzBdID0geFswXVsxXTsKKyAg
ICByZXN1bHRbMV1bMV0gPSB4WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IHhbMl1bMV07Cisg
ICAgcmVzdWx0WzJdWzBdID0geFswXVsyXTsKKyAgICByZXN1bHRbMl1bMV0gPSB4WzFdWzJdOwor
ICAgIHJlc3VsdFsyXVsyXSA9IHhbMl1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
M3g0IHRyYW5zcG9zZShmbG9hdDR4MyB4KSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IHhbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geFsxXVswXTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSB4WzJdWzBdOworICAgIHJlc3VsdFswXVszXSA9IHhbM11bMF07CisgICAg
cmVzdWx0WzFdWzBdID0geFswXVsxXTsKKyAgICByZXN1bHRbMV1bMV0gPSB4WzFdWzFdOworICAg
IHJlc3VsdFsxXVsyXSA9IHhbMl1bMV07CisgICAgcmVzdWx0WzFdWzNdID0geFszXVsxXTsKKyAg
ICByZXN1bHRbMl1bMF0gPSB4WzBdWzJdOworICAgIHJlc3VsdFsyXVsxXSA9IHhbMV1bMl07Cisg
ICAgcmVzdWx0WzJdWzJdID0geFsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSB4WzNdWzJdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiB0cmFuc3Bvc2UoZmxvYXQyeDQgeCkgewor
ICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB4WzBdWzBdOworICAgIHJl
c3VsdFswXVsxXSA9IHhbMV1bMF07CisgICAgcmVzdWx0WzFdWzBdID0geFswXVsxXTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSB4WzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IHhbMF1bMl07CisgICAg
cmVzdWx0WzJdWzFdID0geFsxXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSB4WzBdWzNdOworICAg
IHJlc3VsdFszXVsxXSA9IHhbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgz
IHRyYW5zcG9zZShmbG9hdDN4NCB4KSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IHhbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geFsxXVswXTsKKyAgICByZXN1
bHRbMF1bMl0gPSB4WzJdWzBdOworICAgIHJlc3VsdFsxXVswXSA9IHhbMF1bMV07CisgICAgcmVz
dWx0WzFdWzFdID0geFsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSB4WzJdWzFdOworICAgIHJl
c3VsdFsyXVswXSA9IHhbMF1bMl07CisgICAgcmVzdWx0WzJdWzFdID0geFsxXVsyXTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSB4WzJdWzJdOworICAgIHJlc3VsdFszXVswXSA9IHhbMF1bM107CisgICAg
cmVzdWx0WzNdWzFdID0geFsxXVszXTsKKyAgICByZXN1bHRbM11bMl0gPSB4WzJdWzNdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCB0cmFuc3Bvc2UoZmxvYXQ0eDQgeCkgeworICAg
IGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB4WzBdWzBdOworICAgIHJlc3Vs
dFswXVsxXSA9IHhbMV1bMF07CisgICAgcmVzdWx0WzBdWzJdID0geFsyXVswXTsKKyAgICByZXN1
bHRbMF1bM10gPSB4WzNdWzBdOworICAgIHJlc3VsdFsxXVswXSA9IHhbMF1bMV07CisgICAgcmVz
dWx0WzFdWzFdID0geFsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSB4WzJdWzFdOworICAgIHJl
c3VsdFsxXVszXSA9IHhbM11bMV07CisgICAgcmVzdWx0WzJdWzBdID0geFswXVsyXTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSB4WzFdWzJdOworICAgIHJlc3VsdFsyXVsyXSA9IHhbMl1bMl07CisgICAg
cmVzdWx0WzJdWzNdID0geFszXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSB4WzBdWzNdOworICAg
IHJlc3VsdFszXVsxXSA9IHhbMV1bM107CisgICAgcmVzdWx0WzNdWzJdID0geFsyXVszXTsKKyAg
ICByZXN1bHRbM11bM10gPSB4WzNdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2ludCBh
c2ludChpbnQgeCkgeworICAgIHJldHVybiB4OworfQoraW50MiBhc2ludChpbnQyIHgpIHsKKyAg
ICByZXR1cm4geDsKK30KK2ludDMgYXNpbnQoaW50MyB4KSB7CisgICAgcmV0dXJuIHg7Cit9Citp
bnQ0IGFzaW50KGludDQgeCkgeworICAgIHJldHVybiB4OworfQoraW50IGFzaW50KHVpbnQgeCkg
eworICAgIHJldHVybiBpbnQoeCk7Cit9CitpbnQyIGFzaW50KHVpbnQyIHgpIHsKKyAgICBpbnQy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhc2ludCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBh
c2ludCh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBhc2ludCh1aW50MyB4KSB7
CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYXNpbnQoeFswXSk7CisgICAgcmVz
dWx0WzFdID0gYXNpbnQoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gYXNpbnQoeFsyXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgYXNpbnQodWludDQgeCkgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFzaW50KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFzaW50KHhb
MV0pOworICAgIHJlc3VsdFsyXSA9IGFzaW50KHhbMl0pOworICAgIHJlc3VsdFszXSA9IGFzaW50
KHhbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CituYXRpdmUgaW50IGFzaW50KGZsb2F0KTsK
K2ludDIgYXNpbnQoZmxvYXQyIHgpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhc2ludCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhc2ludCh4WzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50MyBhc2ludChmbG9hdDMgeCkgeworICAgIGludDMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFzaW50KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFzaW50KHhbMV0pOwor
ICAgIHJlc3VsdFsyXSA9IGFzaW50KHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IGFzaW50KGZsb2F0NCB4KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYXNp
bnQoeFswXSk7CisgICAgcmVzdWx0WzFdID0gYXNpbnQoeFsxXSk7CisgICAgcmVzdWx0WzJdID0g
YXNpbnQoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYXNpbnQoeFszXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQgYXN1aW50KGludCB4KSB7CisgICAgcmV0dXJuIHVpbnQoeCk7Cit9Cit1
aW50MiBhc3VpbnQoaW50MiB4KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFzdWludCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhc3VpbnQoeFsxXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQzIGFzdWludChpbnQzIHgpIHsKKyAgICB1aW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYXN1aW50KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFzdWludCh4WzFd
KTsKKyAgICByZXN1bHRbMl0gPSBhc3VpbnQoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IGFzdWludChpbnQ0IHgpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYXN1aW50KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFzdWludCh4WzFdKTsKKyAgICByZXN1
bHRbMl0gPSBhc3VpbnQoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYXN1aW50KHhbM10pOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50IGFzdWludCh1aW50IHgpIHsKKyAgICByZXR1cm4geDsK
K30KK3VpbnQyIGFzdWludCh1aW50MiB4KSB7CisgICAgcmV0dXJuIHg7Cit9Cit1aW50MyBhc3Vp
bnQodWludDMgeCkgeworICAgIHJldHVybiB4OworfQordWludDQgYXN1aW50KHVpbnQ0IHgpIHsK
KyAgICByZXR1cm4geDsKK30KK25hdGl2ZSB1aW50IGFzdWludChmbG9hdCk7Cit1aW50MiBhc3Vp
bnQoZmxvYXQyIHgpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYXN1aW50
KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFzdWludCh4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDMgYXN1aW50KGZsb2F0MyB4KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFzdWludCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhc3VpbnQoeFsxXSk7Cisg
ICAgcmVzdWx0WzJdID0gYXN1aW50KHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBhc3VpbnQoZmxvYXQ0IHgpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YXN1aW50KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFzdWludCh4WzFdKTsKKyAgICByZXN1bHRb
Ml0gPSBhc3VpbnQoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYXN1aW50KHhbM10pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CituYXRpdmUgZmxvYXQgYXNmbG9hdChpbnQpOworZmxvYXQyIGFzZmxv
YXQoaW50MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhc2Zsb2F0
KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFzZmxvYXQoeFsxXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MyBhc2Zsb2F0KGludDMgeCkgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYXNmbG9hdCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhc2Zsb2F0KHhbMV0p
OworICAgIHJlc3VsdFsyXSA9IGFzZmxvYXQoeFsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBhc2Zsb2F0KGludDQgeCkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYXNmbG9hdCh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBhc2Zsb2F0KHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IGFzZmxvYXQoeFsyXSk7CisgICAgcmVzdWx0WzNdID0gYXNmbG9hdCh4WzNd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorbmF0aXZlIGZsb2F0IGFzZmxvYXQodWludCk7Citm
bG9hdDIgYXNmbG9hdCh1aW50MiB4KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhc2Zsb2F0KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFzZmxvYXQoeFsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBhc2Zsb2F0KHVpbnQzIHgpIHsKKyAgICBmbG9hdDMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFzZmxvYXQoeFswXSk7CisgICAgcmVzdWx0WzFdID0g
YXNmbG9hdCh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhc2Zsb2F0KHhbMl0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgYXNmbG9hdCh1aW50NCB4KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhc2Zsb2F0KHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGFzZmxv
YXQoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gYXNmbG9hdCh4WzJdKTsKKyAgICByZXN1bHRbM10g
PSBhc2Zsb2F0KHhbM10pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdCBhc2Zsb2F0KGZs
b2F0IHgpIHsKKyAgICByZXR1cm4geDsKK30KK2Zsb2F0MiBhc2Zsb2F0KGZsb2F0MiB4KSB7Cisg
ICAgcmV0dXJuIHg7Cit9CitmbG9hdDMgYXNmbG9hdChmbG9hdDMgeCkgeworICAgIHJldHVybiB4
OworfQorZmxvYXQ0IGFzZmxvYXQoZmxvYXQ0IHgpIHsKKyAgICByZXR1cm4geDsKK30KK2Zsb2F0
MngyIGFzZmxvYXQoZmxvYXQyeDIgeCkgeworICAgIHJldHVybiB4OworfQorZmxvYXQyeDMgYXNm
bG9hdChmbG9hdDJ4MyB4KSB7CisgICAgcmV0dXJuIHg7Cit9CitmbG9hdDJ4NCBhc2Zsb2F0KGZs
b2F0Mng0IHgpIHsKKyAgICByZXR1cm4geDsKK30KK2Zsb2F0M3gyIGFzZmxvYXQoZmxvYXQzeDIg
eCkgeworICAgIHJldHVybiB4OworfQorZmxvYXQzeDMgYXNmbG9hdChmbG9hdDN4MyB4KSB7Cisg
ICAgcmV0dXJuIHg7Cit9CitmbG9hdDN4NCBhc2Zsb2F0KGZsb2F0M3g0IHgpIHsKKyAgICByZXR1
cm4geDsKK30KK2Zsb2F0NHgyIGFzZmxvYXQoZmxvYXQ0eDIgeCkgeworICAgIHJldHVybiB4Owor
fQorZmxvYXQ0eDMgYXNmbG9hdChmbG9hdDR4MyB4KSB7CisgICAgcmV0dXJuIHg7Cit9CitmbG9h
dDR4NCBhc2Zsb2F0KGZsb2F0NHg0IHgpIHsKKyAgICByZXR1cm4geDsKK30KKworbmF0aXZlIGZs
b2F0IGYxNnRvZjMyKHVpbnQpOworbmF0aXZlIHVpbnQgZjMydG9mMTYoZmxvYXQpOworZmxvYXQy
IGYxNnRvZjMyKHVpbnQyIHgpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGYxNnRvZjMyKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGYxNnRvZjMyKHhbMV0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MiBmMzJ0b2YxNihmbG9hdDIgeCkgeworICAgIHVpbnQyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBmMzJ0b2YxNih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBm
MzJ0b2YxNih4WzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIGYxNnRvZjMyKHVp
bnQzIHgpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGYxNnRvZjMyKHhb
MF0pOworICAgIHJlc3VsdFsxXSA9IGYxNnRvZjMyKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGYx
NnRvZjMyKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBmMzJ0b2YxNihmbG9h
dDMgeCkgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBmMzJ0b2YxNih4WzBd
KTsKKyAgICByZXN1bHRbMV0gPSBmMzJ0b2YxNih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBmMzJ0
b2YxNih4WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IGYxNnRvZjMyKHVpbnQ0
IHgpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGYxNnRvZjMyKHhbMF0p
OworICAgIHJlc3VsdFsxXSA9IGYxNnRvZjMyKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGYxNnRv
ZjMyKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGYxNnRvZjMyKHhbM10pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBmMzJ0b2YxNihmbG9hdDQgeCkgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBmMzJ0b2YxNih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBmMzJ0b2Yx
Nih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBmMzJ0b2YxNih4WzJdKTsKKyAgICByZXN1bHRbM10g
PSBmMzJ0b2YxNih4WzNdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCituYXRpdmUgdm9pZCBB
bGxNZW1vcnlCYXJyaWVyV2l0aEdyb3VwU3luYygpOworbmF0aXZlIHZvaWQgRGV2aWNlTWVtb3J5
QmFycmllcldpdGhHcm91cFN5bmMoKTsKK25hdGl2ZSB2b2lkIEdyb3VwTWVtb3J5QmFycmllcldp
dGhHcm91cFN5bmMoKTsKKwordWNoYXIgbXVsKHVjaGFyIHgsIHVjaGFyIHkpIHsKKyAgICByZXR1
cm4geCAqIHk7Cit9Cit1c2hvcnQgbXVsKHVzaG9ydCB4LCB1c2hvcnQgeSkgeworICAgIHJldHVy
biB4ICogeTsKK30KK3VpbnQgbXVsKHVpbnQgeCwgdWludCB5KSB7CisgICAgcmV0dXJuIHggKiB5
OworfQorY2hhciBtdWwoY2hhciB4LCBjaGFyIHkpIHsKKyAgICByZXR1cm4geCAqIHk7Cit9Citz
aG9ydCBtdWwoc2hvcnQgeCwgc2hvcnQgeSkgeworICAgIHJldHVybiB4ICogeTsKK30KK2ludCBt
dWwoaW50IHgsIGludCB5KSB7CisgICAgcmV0dXJuIHggKiB5OworfQoraGFsZiBtdWwoaGFsZiB4
LCBoYWxmIHkpIHsKKyAgICByZXR1cm4geCAqIHk7Cit9CitmbG9hdCBtdWwoZmxvYXQgeCwgZmxv
YXQgeSkgeworICAgIHJldHVybiB4ICogeTsKK30KK3VjaGFyMiBtdWwodWNoYXIgeCwgdWNoYXIy
IHkpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHggKiB5WzBdOworICAg
IHJlc3VsdFsxXSA9IHggKiB5WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgbXVs
KHVjaGFyMiB4LCB1Y2hhciB5KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSB4WzBdICogeTsKKyAgICByZXN1bHRbMV0gPSB4WzFdICogeTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIzIG11bCh1Y2hhciB4LCB1Y2hhcjMgeSkgeworICAgIHVjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07Cisg
ICAgcmVzdWx0WzJdID0geCAqIHlbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBt
dWwodWNoYXIzIHgsIHVjaGFyIHkpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IHhbMF0gKiB5OworICAgIHJlc3VsdFsxXSA9IHhbMV0gKiB5OworICAgIHJlc3VsdFsyXSA9
IHhbMl0gKiB5OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgbXVsKHVjaGFyIHgsIHVj
aGFyNCB5KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB4ICogeVswXTsK
KyAgICByZXN1bHRbMV0gPSB4ICogeVsxXTsKKyAgICByZXN1bHRbMl0gPSB4ICogeVsyXTsKKyAg
ICByZXN1bHRbM10gPSB4ICogeVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG11
bCh1Y2hhcjQgeCwgdWNoYXIgeSkgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsxXSAqIHk7CisgICAgcmVzdWx0WzJdID0g
eFsyXSAqIHk7CisgICAgcmVzdWx0WzNdID0geFszXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDIgbXVsKHVzaG9ydCB4LCB1c2hvcnQyIHkpIHsKKyAgICB1c2hvcnQyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSB4ICogeVswXTsKKyAgICByZXN1bHRbMV0gPSB4ICogeVsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBtdWwodXNob3J0MiB4LCB1c2hvcnQgeSkg
eworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHhbMF0gKiB5OworICAgIHJl
c3VsdFsxXSA9IHhbMV0gKiB5OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG11bCh1
c2hvcnQgeCwgdXNob3J0MyB5KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07CisgICAgcmVzdWx0WzJdID0g
eCAqIHlbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgbXVsKHVzaG9ydDMgeCwg
dXNob3J0IHkpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB4WzBdICog
eTsKKyAgICByZXN1bHRbMV0gPSB4WzFdICogeTsKKyAgICByZXN1bHRbMl0gPSB4WzJdICogeTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBtdWwodXNob3J0IHgsIHVzaG9ydDQgeSkg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHggKiB5WzBdOworICAgIHJl
c3VsdFsxXSA9IHggKiB5WzFdOworICAgIHJlc3VsdFsyXSA9IHggKiB5WzJdOworICAgIHJlc3Vs
dFszXSA9IHggKiB5WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG11bCh1c2hv
cnQ0IHgsIHVzaG9ydCB5KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
eFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsxXSAqIHk7CisgICAgcmVzdWx0WzJdID0geFsy
XSAqIHk7CisgICAgcmVzdWx0WzNdID0geFszXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQyIG11bCh1aW50IHgsIHVpbnQyIHkpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQyIG11bCh1aW50MiB4LCB1aW50IHkpIHsKKyAgICB1aW50MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsxXSAqIHk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG11bCh1aW50IHgsIHVpbnQzIHkpIHsKKyAg
ICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFd
ID0geCAqIHlbMV07CisgICAgcmVzdWx0WzJdID0geCAqIHlbMl07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQzIG11bCh1aW50MyB4LCB1aW50IHkpIHsKKyAgICB1aW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsxXSAqIHk7CisgICAg
cmVzdWx0WzJdID0geFsyXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG11bCh1
aW50IHgsIHVpbnQ0IHkpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geCAq
IHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07CisgICAgcmVzdWx0WzJdID0geCAqIHlb
Ml07CisgICAgcmVzdWx0WzNdID0geCAqIHlbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG11bCh1aW50NCB4LCB1aW50IHkpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsxXSAqIHk7CisgICAgcmVzdWx0WzJd
ID0geFsyXSAqIHk7CisgICAgcmVzdWx0WzNdID0geFszXSAqIHk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXIyIG11bChjaGFyIHgsIGNoYXIyIHkpIHsKKyAgICBjaGFyMiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG11bChjaGFyMiB4LCBjaGFyIHkpIHsKKyAgICBjaGFy
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsx
XSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG11bChjaGFyIHgsIGNoYXIzIHkp
IHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geCAqIHlbMF07CisgICAgcmVz
dWx0WzFdID0geCAqIHlbMV07CisgICAgcmVzdWx0WzJdID0geCAqIHlbMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIzIG11bChjaGFyMyB4LCBjaGFyIHkpIHsKKyAgICBjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsxXSAqIHk7
CisgICAgcmVzdWx0WzJdID0geFsyXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG11bChjaGFyIHgsIGNoYXI0IHkpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07CisgICAgcmVzdWx0WzJdID0g
eCAqIHlbMl07CisgICAgcmVzdWx0WzNdID0geCAqIHlbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG11bChjaGFyNCB4LCBjaGFyIHkpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsxXSAqIHk7CisgICAgcmVz
dWx0WzJdID0geFsyXSAqIHk7CisgICAgcmVzdWx0WzNdID0geFszXSAqIHk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0MiBtdWwoc2hvcnQgeCwgc2hvcnQyIHkpIHsKKyAgICBzaG9ydDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IHggKiB5WzBdOworICAgIHJlc3VsdFsxXSA9IHggKiB5
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgbXVsKHNob3J0MiB4LCBzaG9ydCB5
KSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB4WzBdICogeTsKKyAgICBy
ZXN1bHRbMV0gPSB4WzFdICogeTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG11bChz
aG9ydCB4LCBzaG9ydDMgeSkgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
eCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07CisgICAgcmVzdWx0WzJdID0geCAq
IHlbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBtdWwoc2hvcnQzIHgsIHNob3J0
IHkpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHhbMF0gKiB5OworICAg
IHJlc3VsdFsxXSA9IHhbMV0gKiB5OworICAgIHJlc3VsdFsyXSA9IHhbMl0gKiB5OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgbXVsKHNob3J0IHgsIHNob3J0NCB5KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB4ICogeVswXTsKKyAgICByZXN1bHRbMV0gPSB4
ICogeVsxXTsKKyAgICByZXN1bHRbMl0gPSB4ICogeVsyXTsKKyAgICByZXN1bHRbM10gPSB4ICog
eVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG11bChzaG9ydDQgeCwgc2hvcnQg
eSkgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geFswXSAqIHk7CisgICAg
cmVzdWx0WzFdID0geFsxXSAqIHk7CisgICAgcmVzdWx0WzJdID0geFsyXSAqIHk7CisgICAgcmVz
dWx0WzNdID0geFszXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgbXVsKGludCB4
LCBpbnQyIHkpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB4ICogeVswXTsK
KyAgICByZXN1bHRbMV0gPSB4ICogeVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBt
dWwoaW50MiB4LCBpbnQgeSkgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHhb
MF0gKiB5OworICAgIHJlc3VsdFsxXSA9IHhbMV0gKiB5OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQzIG11bChpbnQgeCwgaW50MyB5KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07CisgICAgcmVzdWx0WzJd
ID0geCAqIHlbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgbXVsKGludDMgeCwgaW50
IHkpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB4WzBdICogeTsKKyAgICBy
ZXN1bHRbMV0gPSB4WzFdICogeTsKKyAgICByZXN1bHRbMl0gPSB4WzJdICogeTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBtdWwoaW50IHgsIGludDQgeSkgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IHggKiB5WzBdOworICAgIHJlc3VsdFsxXSA9IHggKiB5WzFdOwor
ICAgIHJlc3VsdFsyXSA9IHggKiB5WzJdOworICAgIHJlc3VsdFszXSA9IHggKiB5WzNdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG11bChpbnQ0IHgsIGludCB5KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsxXSAq
IHk7CisgICAgcmVzdWx0WzJdID0geFsyXSAqIHk7CisgICAgcmVzdWx0WzNdID0geFszXSAqIHk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG11bChoYWxmIHgsIGhhbGYyIHkpIHsKKyAg
ICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFd
ID0geCAqIHlbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG11bChoYWxmMiB4LCBo
YWxmIHkpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geFswXSAqIHk7Cisg
ICAgcmVzdWx0WzFdID0geFsxXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG11
bChoYWxmIHgsIGhhbGYzIHkpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
eCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07CisgICAgcmVzdWx0WzJdID0geCAq
IHlbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG11bChoYWxmMyB4LCBoYWxmIHkp
IHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geFswXSAqIHk7CisgICAgcmVz
dWx0WzFdID0geFsxXSAqIHk7CisgICAgcmVzdWx0WzJdID0geFsyXSAqIHk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG11bChoYWxmIHgsIGhhbGY0IHkpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07
CisgICAgcmVzdWx0WzJdID0geCAqIHlbMl07CisgICAgcmVzdWx0WzNdID0geCAqIHlbM107Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG11bChoYWxmNCB4LCBoYWxmIHkpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0g
eFsxXSAqIHk7CisgICAgcmVzdWx0WzJdID0geFsyXSAqIHk7CisgICAgcmVzdWx0WzNdID0geFsz
XSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBtdWwoZmxvYXQgeCwgZmxvYXQy
IHkpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHggKiB5WzBdOworICAg
IHJlc3VsdFsxXSA9IHggKiB5WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgbXVs
KGZsb2F0MiB4LCBmbG9hdCB5KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSB4WzBdICogeTsKKyAgICByZXN1bHRbMV0gPSB4WzFdICogeTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzIG11bChmbG9hdCB4LCBmbG9hdDMgeSkgeworICAgIGZsb2F0MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0geCAqIHlbMF07CisgICAgcmVzdWx0WzFdID0geCAqIHlbMV07Cisg
ICAgcmVzdWx0WzJdID0geCAqIHlbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBt
dWwoZmxvYXQzIHgsIGZsb2F0IHkpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IHhbMF0gKiB5OworICAgIHJlc3VsdFsxXSA9IHhbMV0gKiB5OworICAgIHJlc3VsdFsyXSA9
IHhbMl0gKiB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgbXVsKGZsb2F0IHgsIGZs
b2F0NCB5KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB4ICogeVswXTsK
KyAgICByZXN1bHRbMV0gPSB4ICogeVsxXTsKKyAgICByZXN1bHRbMl0gPSB4ICogeVsyXTsKKyAg
ICByZXN1bHRbM10gPSB4ICogeVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG11
bChmbG9hdDQgeCwgZmxvYXQgeSkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0geFswXSAqIHk7CisgICAgcmVzdWx0WzFdID0geFsxXSAqIHk7CisgICAgcmVzdWx0WzJdID0g
eFsyXSAqIHk7CisgICAgcmVzdWx0WzNdID0geFszXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYyeDIgbXVsKGhhbGYgeCwgaGFsZjJ4MiB5KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0geCAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geCAq
IHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0geCAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFd
WzFdID0geCAqIHlbMV1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgbXVsKGhh
bGYyeDIgeCwgaGFsZiB5KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0geFswXVswXSAqIHk7CisgICAgcmVzdWx0WzBdWzFdID0geFswXVsxXSAqIHk7CisgICAgcmVz
dWx0WzFdWzBdID0geFsxXVswXSAqIHk7CisgICAgcmVzdWx0WzFdWzFdID0geFsxXVsxXSAqIHk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgbXVsKGhhbGYgeCwgaGFsZjJ4MyB5KSB7
CisgICAgaGFsZjJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geCAqIHlbMF1bMF07Cisg
ICAgcmVzdWx0WzBdWzFdID0geCAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0geCAqIHlb
MF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0geCAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzFd
ID0geCAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0geCAqIHlbMV1bMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYyeDMgbXVsKGhhbGYyeDMgeCwgaGFsZiB5KSB7CisgICAgaGFs
ZjJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geFswXVswXSAqIHk7CisgICAgcmVzdWx0
WzBdWzFdID0geFswXVsxXSAqIHk7CisgICAgcmVzdWx0WzBdWzJdID0geFswXVsyXSAqIHk7Cisg
ICAgcmVzdWx0WzFdWzBdID0geFsxXVswXSAqIHk7CisgICAgcmVzdWx0WzFdWzFdID0geFsxXVsx
XSAqIHk7CisgICAgcmVzdWx0WzFdWzJdID0geFsxXVsyXSAqIHk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyeDQgbXVsKGhhbGYgeCwgaGFsZjJ4NCB5KSB7CisgICAgaGFsZjJ4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geCAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0g
eCAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0geCAqIHlbMF1bMl07CisgICAgcmVzdWx0
WzBdWzNdID0geCAqIHlbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0geCAqIHlbMV1bMF07Cisg
ICAgcmVzdWx0WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0geCAqIHlb
MV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0geCAqIHlbMV1bM107CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyeDQgbXVsKGhhbGYyeDQgeCwgaGFsZiB5KSB7CisgICAgaGFsZjJ4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geFswXVswXSAqIHk7CisgICAgcmVzdWx0WzBdWzFdID0g
eFswXVsxXSAqIHk7CisgICAgcmVzdWx0WzBdWzJdID0geFswXVsyXSAqIHk7CisgICAgcmVzdWx0
WzBdWzNdID0geFswXVszXSAqIHk7CisgICAgcmVzdWx0WzFdWzBdID0geFsxXVswXSAqIHk7Cisg
ICAgcmVzdWx0WzFdWzFdID0geFsxXVsxXSAqIHk7CisgICAgcmVzdWx0WzFdWzJdID0geFsxXVsy
XSAqIHk7CisgICAgcmVzdWx0WzFdWzNdID0geFsxXVszXSAqIHk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYzeDIgbXVsKGhhbGYgeCwgaGFsZjN4MiB5KSB7CisgICAgaGFsZjN4MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geCAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0g
eCAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0geCAqIHlbMV1bMF07CisgICAgcmVzdWx0
WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0geCAqIHlbMl1bMF07Cisg
ICAgcmVzdWx0WzJdWzFdID0geCAqIHlbMl1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzeDIgbXVsKGhhbGYzeDIgeCwgaGFsZiB5KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0geFswXVswXSAqIHk7CisgICAgcmVzdWx0WzBdWzFdID0geFswXVsxXSAq
IHk7CisgICAgcmVzdWx0WzFdWzBdID0geFsxXVswXSAqIHk7CisgICAgcmVzdWx0WzFdWzFdID0g
eFsxXVsxXSAqIHk7CisgICAgcmVzdWx0WzJdWzBdID0geFsyXVswXSAqIHk7CisgICAgcmVzdWx0
WzJdWzFdID0geFsyXVsxXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgbXVs
KGhhbGYgeCwgaGFsZjN4MyB5KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0geCAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geCAqIHlbMF1bMV07CisgICAg
cmVzdWx0WzBdWzJdID0geCAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0geCAqIHlbMV1b
MF07CisgICAgcmVzdWx0WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0g
eCAqIHlbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0geCAqIHlbMl1bMF07CisgICAgcmVzdWx0
WzJdWzFdID0geCAqIHlbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0geCAqIHlbMl1bMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgbXVsKGhhbGYzeDMgeCwgaGFsZiB5KSB7Cisg
ICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geFswXVswXSAqIHk7CisgICAg
cmVzdWx0WzBdWzFdID0geFswXVsxXSAqIHk7CisgICAgcmVzdWx0WzBdWzJdID0geFswXVsyXSAq
IHk7CisgICAgcmVzdWx0WzFdWzBdID0geFsxXVswXSAqIHk7CisgICAgcmVzdWx0WzFdWzFdID0g
eFsxXVsxXSAqIHk7CisgICAgcmVzdWx0WzFdWzJdID0geFsxXVsyXSAqIHk7CisgICAgcmVzdWx0
WzJdWzBdID0geFsyXVswXSAqIHk7CisgICAgcmVzdWx0WzJdWzFdID0geFsyXVsxXSAqIHk7Cisg
ICAgcmVzdWx0WzJdWzJdID0geFsyXVsyXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzeDQgbXVsKGhhbGYgeCwgaGFsZjN4NCB5KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0geCAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geCAqIHlbMF1b
MV07CisgICAgcmVzdWx0WzBdWzJdID0geCAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0g
eCAqIHlbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0geCAqIHlbMV1bMF07CisgICAgcmVzdWx0
WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0geCAqIHlbMV1bMl07Cisg
ICAgcmVzdWx0WzFdWzNdID0geCAqIHlbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0geCAqIHlb
Ml1bMF07CisgICAgcmVzdWx0WzJdWzFdID0geCAqIHlbMl1bMV07CisgICAgcmVzdWx0WzJdWzJd
ID0geCAqIHlbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0geCAqIHlbMl1bM107CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgbXVsKGhhbGYzeDQgeCwgaGFsZiB5KSB7CisgICAgaGFs
ZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geFswXVswXSAqIHk7CisgICAgcmVzdWx0
WzBdWzFdID0geFswXVsxXSAqIHk7CisgICAgcmVzdWx0WzBdWzJdID0geFswXVsyXSAqIHk7Cisg
ICAgcmVzdWx0WzBdWzNdID0geFswXVszXSAqIHk7CisgICAgcmVzdWx0WzFdWzBdID0geFsxXVsw
XSAqIHk7CisgICAgcmVzdWx0WzFdWzFdID0geFsxXVsxXSAqIHk7CisgICAgcmVzdWx0WzFdWzJd
ID0geFsxXVsyXSAqIHk7CisgICAgcmVzdWx0WzFdWzNdID0geFsxXVszXSAqIHk7CisgICAgcmVz
dWx0WzJdWzBdID0geFsyXVswXSAqIHk7CisgICAgcmVzdWx0WzJdWzFdID0geFsyXVsxXSAqIHk7
CisgICAgcmVzdWx0WzJdWzJdID0geFsyXVsyXSAqIHk7CisgICAgcmVzdWx0WzJdWzNdID0geFsy
XVszXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgbXVsKGhhbGYgeCwgaGFs
ZjR4MiB5KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geCAqIHlb
MF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geCAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzBd
ID0geCAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAgcmVz
dWx0WzJdWzBdID0geCAqIHlbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0geCAqIHlbMl1bMV07
CisgICAgcmVzdWx0WzNdWzBdID0geCAqIHlbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0geCAq
IHlbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgbXVsKGhhbGY0eDIgeCwg
aGFsZiB5KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geFswXVsw
XSAqIHk7CisgICAgcmVzdWx0WzBdWzFdID0geFswXVsxXSAqIHk7CisgICAgcmVzdWx0WzFdWzBd
ID0geFsxXVswXSAqIHk7CisgICAgcmVzdWx0WzFdWzFdID0geFsxXVsxXSAqIHk7CisgICAgcmVz
dWx0WzJdWzBdID0geFsyXVswXSAqIHk7CisgICAgcmVzdWx0WzJdWzFdID0geFsyXVsxXSAqIHk7
CisgICAgcmVzdWx0WzNdWzBdID0geFszXVswXSAqIHk7CisgICAgcmVzdWx0WzNdWzFdID0geFsz
XVsxXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDMgbXVsKGhhbGYgeCwgaGFs
ZjR4MyB5KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geCAqIHlb
MF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geCAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJd
ID0geCAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0geCAqIHlbMV1bMF07CisgICAgcmVz
dWx0WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0geCAqIHlbMV1bMl07
CisgICAgcmVzdWx0WzJdWzBdID0geCAqIHlbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0geCAq
IHlbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0geCAqIHlbMl1bMl07CisgICAgcmVzdWx0WzNd
WzBdID0geCAqIHlbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0geCAqIHlbM11bMV07CisgICAg
cmVzdWx0WzNdWzJdID0geCAqIHlbM11bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
eDMgbXVsKGhhbGY0eDMgeCwgaGFsZiB5KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0geFswXVswXSAqIHk7CisgICAgcmVzdWx0WzBdWzFdID0geFswXVsxXSAqIHk7
CisgICAgcmVzdWx0WzBdWzJdID0geFswXVsyXSAqIHk7CisgICAgcmVzdWx0WzFdWzBdID0geFsx
XVswXSAqIHk7CisgICAgcmVzdWx0WzFdWzFdID0geFsxXVsxXSAqIHk7CisgICAgcmVzdWx0WzFd
WzJdID0geFsxXVsyXSAqIHk7CisgICAgcmVzdWx0WzJdWzBdID0geFsyXVswXSAqIHk7CisgICAg
cmVzdWx0WzJdWzFdID0geFsyXVsxXSAqIHk7CisgICAgcmVzdWx0WzJdWzJdID0geFsyXVsyXSAq
IHk7CisgICAgcmVzdWx0WzNdWzBdID0geFszXVswXSAqIHk7CisgICAgcmVzdWx0WzNdWzFdID0g
eFszXVsxXSAqIHk7CisgICAgcmVzdWx0WzNdWzJdID0geFszXVsyXSAqIHk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0eDQgbXVsKGhhbGYgeCwgaGFsZjR4NCB5KSB7CisgICAgaGFsZjR4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geCAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBd
WzFdID0geCAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0geCAqIHlbMF1bMl07CisgICAg
cmVzdWx0WzBdWzNdID0geCAqIHlbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0geCAqIHlbMV1b
MF07CisgICAgcmVzdWx0WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0g
eCAqIHlbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0geCAqIHlbMV1bM107CisgICAgcmVzdWx0
WzJdWzBdID0geCAqIHlbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0geCAqIHlbMl1bMV07Cisg
ICAgcmVzdWx0WzJdWzJdID0geCAqIHlbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0geCAqIHlb
Ml1bM107CisgICAgcmVzdWx0WzNdWzBdID0geCAqIHlbM11bMF07CisgICAgcmVzdWx0WzNdWzFd
ID0geCAqIHlbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0geCAqIHlbM11bMl07CisgICAgcmVz
dWx0WzNdWzNdID0geCAqIHlbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQg
bXVsKGhhbGY0eDQgeCwgaGFsZiB5KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0geFswXVswXSAqIHk7CisgICAgcmVzdWx0WzBdWzFdID0geFswXVsxXSAqIHk7Cisg
ICAgcmVzdWx0WzBdWzJdID0geFswXVsyXSAqIHk7CisgICAgcmVzdWx0WzBdWzNdID0geFswXVsz
XSAqIHk7CisgICAgcmVzdWx0WzFdWzBdID0geFsxXVswXSAqIHk7CisgICAgcmVzdWx0WzFdWzFd
ID0geFsxXVsxXSAqIHk7CisgICAgcmVzdWx0WzFdWzJdID0geFsxXVsyXSAqIHk7CisgICAgcmVz
dWx0WzFdWzNdID0geFsxXVszXSAqIHk7CisgICAgcmVzdWx0WzJdWzBdID0geFsyXVswXSAqIHk7
CisgICAgcmVzdWx0WzJdWzFdID0geFsyXVsxXSAqIHk7CisgICAgcmVzdWx0WzJdWzJdID0geFsy
XVsyXSAqIHk7CisgICAgcmVzdWx0WzJdWzNdID0geFsyXVszXSAqIHk7CisgICAgcmVzdWx0WzNd
WzBdID0geFszXVswXSAqIHk7CisgICAgcmVzdWx0WzNdWzFdID0geFszXVsxXSAqIHk7CisgICAg
cmVzdWx0WzNdWzJdID0geFszXVsyXSAqIHk7CisgICAgcmVzdWx0WzNdWzNdID0geFszXVszXSAq
IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIG11bChmbG9hdCB4LCBmbG9hdDJ4
MiB5KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHggKiB5WzBd
WzBdOworICAgIHJlc3VsdFswXVsxXSA9IHggKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9
IHggKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IHggKiB5WzFdWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDJ4MiBtdWwoZmxvYXQyeDIgeCwgZmxvYXQgeSkgeworICAgIGZs
b2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB4WzBdWzBdICogeTsKKyAgICByZXN1
bHRbMF1bMV0gPSB4WzBdWzFdICogeTsKKyAgICByZXN1bHRbMV1bMF0gPSB4WzFdWzBdICogeTsK
KyAgICByZXN1bHRbMV1bMV0gPSB4WzFdWzFdICogeTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQyeDMgbXVsKGZsb2F0IHgsIGZsb2F0MngzIHkpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0geCAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geCAq
IHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0geCAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFd
WzBdID0geCAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAg
cmVzdWx0WzFdWzJdID0geCAqIHlbMV1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
MngzIG11bChmbG9hdDJ4MyB4LCBmbG9hdCB5KSB7CisgICAgZmxvYXQyeDMgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IHhbMF1bMF0gKiB5OworICAgIHJlc3VsdFswXVsxXSA9IHhbMF1bMV0g
KiB5OworICAgIHJlc3VsdFswXVsyXSA9IHhbMF1bMl0gKiB5OworICAgIHJlc3VsdFsxXVswXSA9
IHhbMV1bMF0gKiB5OworICAgIHJlc3VsdFsxXVsxXSA9IHhbMV1bMV0gKiB5OworICAgIHJlc3Vs
dFsxXVsyXSA9IHhbMV1bMl0gKiB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBt
dWwoZmxvYXQgeCwgZmxvYXQyeDQgeSkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSB4ICogeVswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSB4ICogeVswXVsxXTsK
KyAgICByZXN1bHRbMF1bMl0gPSB4ICogeVswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gPSB4ICog
eVswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSB4ICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1b
MV0gPSB4ICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSB4ICogeVsxXVsyXTsKKyAgICBy
ZXN1bHRbMV1bM10gPSB4ICogeVsxXVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQy
eDQgbXVsKGZsb2F0Mng0IHgsIGZsb2F0IHkpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0geFswXVswXSAqIHk7CisgICAgcmVzdWx0WzBdWzFdID0geFswXVsxXSAq
IHk7CisgICAgcmVzdWx0WzBdWzJdID0geFswXVsyXSAqIHk7CisgICAgcmVzdWx0WzBdWzNdID0g
eFswXVszXSAqIHk7CisgICAgcmVzdWx0WzFdWzBdID0geFsxXVswXSAqIHk7CisgICAgcmVzdWx0
WzFdWzFdID0geFsxXVsxXSAqIHk7CisgICAgcmVzdWx0WzFdWzJdID0geFsxXVsyXSAqIHk7Cisg
ICAgcmVzdWx0WzFdWzNdID0geFsxXVszXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0M3gyIG11bChmbG9hdCB4LCBmbG9hdDN4MiB5KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IHggKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IHggKiB5
WzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IHggKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVsx
XSA9IHggKiB5WzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IHggKiB5WzJdWzBdOworICAgIHJl
c3VsdFsyXVsxXSA9IHggKiB5WzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4
MiBtdWwoZmxvYXQzeDIgeCwgZmxvYXQgeSkgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSB4WzBdWzBdICogeTsKKyAgICByZXN1bHRbMF1bMV0gPSB4WzBdWzFdICog
eTsKKyAgICByZXN1bHRbMV1bMF0gPSB4WzFdWzBdICogeTsKKyAgICByZXN1bHRbMV1bMV0gPSB4
WzFdWzFdICogeTsKKyAgICByZXN1bHRbMl1bMF0gPSB4WzJdWzBdICogeTsKKyAgICByZXN1bHRb
Ml1bMV0gPSB4WzJdWzFdICogeTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgbXVs
KGZsb2F0IHgsIGZsb2F0M3gzIHkpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0geCAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geCAqIHlbMF1bMV07Cisg
ICAgcmVzdWx0WzBdWzJdID0geCAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0geCAqIHlb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzJd
ID0geCAqIHlbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0geCAqIHlbMl1bMF07CisgICAgcmVz
dWx0WzJdWzFdID0geCAqIHlbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0geCAqIHlbMl1bMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIG11bChmbG9hdDN4MyB4LCBmbG9hdCB5
KSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHhbMF1bMF0gKiB5
OworICAgIHJlc3VsdFswXVsxXSA9IHhbMF1bMV0gKiB5OworICAgIHJlc3VsdFswXVsyXSA9IHhb
MF1bMl0gKiB5OworICAgIHJlc3VsdFsxXVswXSA9IHhbMV1bMF0gKiB5OworICAgIHJlc3VsdFsx
XVsxXSA9IHhbMV1bMV0gKiB5OworICAgIHJlc3VsdFsxXVsyXSA9IHhbMV1bMl0gKiB5OworICAg
IHJlc3VsdFsyXVswXSA9IHhbMl1bMF0gKiB5OworICAgIHJlc3VsdFsyXVsxXSA9IHhbMl1bMV0g
KiB5OworICAgIHJlc3VsdFsyXVsyXSA9IHhbMl1bMl0gKiB5OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDN4NCBtdWwoZmxvYXQgeCwgZmxvYXQzeDQgeSkgeworICAgIGZsb2F0M3g0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB4ICogeVswXVswXTsKKyAgICByZXN1bHRbMF1bMV0g
PSB4ICogeVswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSB4ICogeVswXVsyXTsKKyAgICByZXN1
bHRbMF1bM10gPSB4ICogeVswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSB4ICogeVsxXVswXTsK
KyAgICByZXN1bHRbMV1bMV0gPSB4ICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSB4ICog
eVsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSB4ICogeVsxXVszXTsKKyAgICByZXN1bHRbMl1b
MF0gPSB4ICogeVsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSB4ICogeVsyXVsxXTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSB4ICogeVsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSB4ICogeVsyXVsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgbXVsKGZsb2F0M3g0IHgsIGZsb2F0
IHkpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geFswXVswXSAq
IHk7CisgICAgcmVzdWx0WzBdWzFdID0geFswXVsxXSAqIHk7CisgICAgcmVzdWx0WzBdWzJdID0g
eFswXVsyXSAqIHk7CisgICAgcmVzdWx0WzBdWzNdID0geFswXVszXSAqIHk7CisgICAgcmVzdWx0
WzFdWzBdID0geFsxXVswXSAqIHk7CisgICAgcmVzdWx0WzFdWzFdID0geFsxXVsxXSAqIHk7Cisg
ICAgcmVzdWx0WzFdWzJdID0geFsxXVsyXSAqIHk7CisgICAgcmVzdWx0WzFdWzNdID0geFsxXVsz
XSAqIHk7CisgICAgcmVzdWx0WzJdWzBdID0geFsyXVswXSAqIHk7CisgICAgcmVzdWx0WzJdWzFd
ID0geFsyXVsxXSAqIHk7CisgICAgcmVzdWx0WzJdWzJdID0geFsyXVsyXSAqIHk7CisgICAgcmVz
dWx0WzJdWzNdID0geFsyXVszXSAqIHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgy
IG11bChmbG9hdCB4LCBmbG9hdDR4MiB5KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IHggKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IHggKiB5WzBdWzFd
OworICAgIHJlc3VsdFsxXVswXSA9IHggKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IHgg
KiB5WzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IHggKiB5WzJdWzBdOworICAgIHJlc3VsdFsy
XVsxXSA9IHggKiB5WzJdWzFdOworICAgIHJlc3VsdFszXVswXSA9IHggKiB5WzNdWzBdOworICAg
IHJlc3VsdFszXVsxXSA9IHggKiB5WzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDR4MiBtdWwoZmxvYXQ0eDIgeCwgZmxvYXQgeSkgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSB4WzBdWzBdICogeTsKKyAgICByZXN1bHRbMF1bMV0gPSB4WzBdWzFd
ICogeTsKKyAgICByZXN1bHRbMV1bMF0gPSB4WzFdWzBdICogeTsKKyAgICByZXN1bHRbMV1bMV0g
PSB4WzFdWzFdICogeTsKKyAgICByZXN1bHRbMl1bMF0gPSB4WzJdWzBdICogeTsKKyAgICByZXN1
bHRbMl1bMV0gPSB4WzJdWzFdICogeTsKKyAgICByZXN1bHRbM11bMF0gPSB4WzNdWzBdICogeTsK
KyAgICByZXN1bHRbM11bMV0gPSB4WzNdWzFdICogeTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0eDMgbXVsKGZsb2F0IHgsIGZsb2F0NHgzIHkpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0geCAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0geCAq
IHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0geCAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFd
WzBdID0geCAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0geCAqIHlbMV1bMV07CisgICAg
cmVzdWx0WzFdWzJdID0geCAqIHlbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0geCAqIHlbMl1b
MF07CisgICAgcmVzdWx0WzJdWzFdID0geCAqIHlbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0g
eCAqIHlbMl1bMl07CisgICAgcmVzdWx0WzNdWzBdID0geCAqIHlbM11bMF07CisgICAgcmVzdWx0
WzNdWzFdID0geCAqIHlbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0geCAqIHlbM11bMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIG11bChmbG9hdDR4MyB4LCBmbG9hdCB5KSB7
CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHhbMF1bMF0gKiB5Owor
ICAgIHJlc3VsdFswXVsxXSA9IHhbMF1bMV0gKiB5OworICAgIHJlc3VsdFswXVsyXSA9IHhbMF1b
Ml0gKiB5OworICAgIHJlc3VsdFsxXVswXSA9IHhbMV1bMF0gKiB5OworICAgIHJlc3VsdFsxXVsx
XSA9IHhbMV1bMV0gKiB5OworICAgIHJlc3VsdFsxXVsyXSA9IHhbMV1bMl0gKiB5OworICAgIHJl
c3VsdFsyXVswXSA9IHhbMl1bMF0gKiB5OworICAgIHJlc3VsdFsyXVsxXSA9IHhbMl1bMV0gKiB5
OworICAgIHJlc3VsdFsyXVsyXSA9IHhbMl1bMl0gKiB5OworICAgIHJlc3VsdFszXVswXSA9IHhb
M11bMF0gKiB5OworICAgIHJlc3VsdFszXVsxXSA9IHhbM11bMV0gKiB5OworICAgIHJlc3VsdFsz
XVsyXSA9IHhbM11bMl0gKiB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBtdWwo
ZmxvYXQgeCwgZmxvYXQ0eDQgeSkgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSB4ICogeVswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSB4ICogeVswXVsxXTsKKyAg
ICByZXN1bHRbMF1bMl0gPSB4ICogeVswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gPSB4ICogeVsw
XVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSB4ICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0g
PSB4ICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSB4ICogeVsxXVsyXTsKKyAgICByZXN1
bHRbMV1bM10gPSB4ICogeVsxXVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSB4ICogeVsyXVswXTsK
KyAgICByZXN1bHRbMl1bMV0gPSB4ICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSB4ICog
eVsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSB4ICogeVsyXVszXTsKKyAgICByZXN1bHRbM11b
MF0gPSB4ICogeVszXVswXTsKKyAgICByZXN1bHRbM11bMV0gPSB4ICogeVszXVsxXTsKKyAgICBy
ZXN1bHRbM11bMl0gPSB4ICogeVszXVsyXTsKKyAgICByZXN1bHRbM11bM10gPSB4ICogeVszXVsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgbXVsKGZsb2F0NHg0IHgsIGZsb2F0
IHkpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0geFswXVswXSAq
IHk7CisgICAgcmVzdWx0WzBdWzFdID0geFswXVsxXSAqIHk7CisgICAgcmVzdWx0WzBdWzJdID0g
eFswXVsyXSAqIHk7CisgICAgcmVzdWx0WzBdWzNdID0geFswXVszXSAqIHk7CisgICAgcmVzdWx0
WzFdWzBdID0geFsxXVswXSAqIHk7CisgICAgcmVzdWx0WzFdWzFdID0geFsxXVsxXSAqIHk7Cisg
ICAgcmVzdWx0WzFdWzJdID0geFsxXVsyXSAqIHk7CisgICAgcmVzdWx0WzFdWzNdID0geFsxXVsz
XSAqIHk7CisgICAgcmVzdWx0WzJdWzBdID0geFsyXVswXSAqIHk7CisgICAgcmVzdWx0WzJdWzFd
ID0geFsyXVsxXSAqIHk7CisgICAgcmVzdWx0WzJdWzJdID0geFsyXVsyXSAqIHk7CisgICAgcmVz
dWx0WzJdWzNdID0geFsyXVszXSAqIHk7CisgICAgcmVzdWx0WzNdWzBdID0geFszXVswXSAqIHk7
CisgICAgcmVzdWx0WzNdWzFdID0geFszXVsxXSAqIHk7CisgICAgcmVzdWx0WzNdWzJdID0geFsz
XVsyXSAqIHk7CisgICAgcmVzdWx0WzNdWzNdID0geFszXVszXSAqIHk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyMiBtdWwodWNoYXIyIHgsIHVjaGFyMiB5KSB7CisgICAgcmV0dXJuIGRv
dCh4LCB5KTsKK30KK3VjaGFyMyBtdWwodWNoYXIzIHgsIHVjaGFyMyB5KSB7CisgICAgcmV0dXJu
IGRvdCh4LCB5KTsKK30KK3VjaGFyNCBtdWwodWNoYXI0IHgsIHVjaGFyNCB5KSB7CisgICAgcmV0
dXJuIGRvdCh4LCB5KTsKK30KK3VzaG9ydDIgbXVsKHVzaG9ydDIgeCwgdXNob3J0MiB5KSB7Cisg
ICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK3VzaG9ydDMgbXVsKHVzaG9ydDMgeCwgdXNob3J0MyB5
KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK3VzaG9ydDQgbXVsKHVzaG9ydDQgeCwgdXNo
b3J0NCB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK3VpbnQyIG11bCh1aW50MiB4LCB1
aW50MiB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK3VpbnQzIG11bCh1aW50MyB4LCB1
aW50MyB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK3VpbnQ0IG11bCh1aW50NCB4LCB1
aW50NCB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2NoYXIyIG11bChjaGFyMiB4LCBj
aGFyMiB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2NoYXIzIG11bChjaGFyMyB4LCBj
aGFyMyB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2NoYXI0IG11bChjaGFyNCB4LCBj
aGFyNCB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK3Nob3J0MiBtdWwoc2hvcnQyIHgs
IHNob3J0MiB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK3Nob3J0MyBtdWwoc2hvcnQz
IHgsIHNob3J0MyB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK3Nob3J0NCBtdWwoc2hv
cnQ0IHgsIHNob3J0NCB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2ludDIgbXVsKGlu
dDIgeCwgaW50MiB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2ludDMgbXVsKGludDMg
eCwgaW50MyB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2ludDQgbXVsKGludDQgeCwg
aW50NCB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2hhbGYyIG11bChoYWxmMiB4LCBo
YWxmMiB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2hhbGYzIG11bChoYWxmMyB4LCBo
YWxmMyB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2hhbGY0IG11bChoYWxmNCB4LCBo
YWxmNCB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2Zsb2F0MiBtdWwoZmxvYXQyIHgs
IGZsb2F0MiB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2Zsb2F0MyBtdWwoZmxvYXQz
IHgsIGZsb2F0MyB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2Zsb2F0NCBtdWwoZmxv
YXQ0IHgsIGZsb2F0NCB5KSB7CisgICAgcmV0dXJuIGRvdCh4LCB5KTsKK30KK2hhbGYyIG11bCho
YWxmMiB4LCBoYWxmMngyIHkpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
MDsKKyAgICByZXN1bHRbMF0gKz0geFswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdICs9IHhb
MV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXSA9IDA7CisgICAgcmVzdWx0WzFdICs9IHhbMF0g
KiB5WzBdWzFdOworICAgIHJlc3VsdFsxXSArPSB4WzFdICogeVsxXVsxXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjIgbXVsKGhhbGYyeDIgeCwgaGFsZjIgeSkgeworICAgIGhhbGYyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSAwOworICAgIHJlc3VsdFswXSArPSB4WzBdWzBdICogeVsw
XTsKKyAgICByZXN1bHRbMF0gKz0geFswXVsxXSAqIHlbMV07CisgICAgcmVzdWx0WzFdID0gMDsK
KyAgICByZXN1bHRbMV0gKz0geFsxXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzFdICs9IHhbMV1b
MV0gKiB5WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBtdWwoaGFsZjIgeCwgaGFs
ZjJ4MyB5KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IDA7CisgICAgcmVz
dWx0WzBdICs9IHhbMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXSArPSB4WzFdICogeVsxXVsw
XTsKKyAgICByZXN1bHRbMV0gPSAwOworICAgIHJlc3VsdFsxXSArPSB4WzBdICogeVswXVsxXTsK
KyAgICByZXN1bHRbMV0gKz0geFsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzJdID0gMDsKKyAg
ICByZXN1bHRbMl0gKz0geFswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzJdICs9IHhbMV0gKiB5
WzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBtdWwoaGFsZjJ4MyB4LCBoYWxm
MyB5KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IDA7CisgICAgcmVzdWx0
WzBdICs9IHhbMF1bMF0gKiB5WzBdOworICAgIHJlc3VsdFswXSArPSB4WzBdWzFdICogeVsxXTsK
KyAgICByZXN1bHRbMF0gKz0geFswXVsyXSAqIHlbMl07CisgICAgcmVzdWx0WzFdID0gMDsKKyAg
ICByZXN1bHRbMV0gKz0geFsxXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzFdICs9IHhbMV1bMV0g
KiB5WzFdOworICAgIHJlc3VsdFsxXSArPSB4WzFdWzJdICogeVsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgbXVsKGhhbGYyIHgsIGhhbGYyeDQgeSkgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSAwOworICAgIHJlc3VsdFswXSArPSB4WzBdICogeVswXVswXTsK
KyAgICByZXN1bHRbMF0gKz0geFsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdID0gMDsKKyAg
ICByZXN1bHRbMV0gKz0geFswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdICs9IHhbMV0gKiB5
WzFdWzFdOworICAgIHJlc3VsdFsyXSA9IDA7CisgICAgcmVzdWx0WzJdICs9IHhbMF0gKiB5WzBd
WzJdOworICAgIHJlc3VsdFsyXSArPSB4WzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbM10gPSAw
OworICAgIHJlc3VsdFszXSArPSB4WzBdICogeVswXVszXTsKKyAgICByZXN1bHRbM10gKz0geFsx
XSAqIHlbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG11bChoYWxmMng0IHgs
IGhhbGY0IHkpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gMDsKKyAgICBy
ZXN1bHRbMF0gKz0geFswXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMV0gKiB5
WzFdOworICAgIHJlc3VsdFswXSArPSB4WzBdWzJdICogeVsyXTsKKyAgICByZXN1bHRbMF0gKz0g
eFswXVszXSAqIHlbM107CisgICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFsx
XVswXSAqIHlbMF07CisgICAgcmVzdWx0WzFdICs9IHhbMV1bMV0gKiB5WzFdOworICAgIHJlc3Vs
dFsxXSArPSB4WzFdWzJdICogeVsyXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXVszXSAqIHlbM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG11bChoYWxmMyB4LCBoYWxmM3gyIHkpIHsK
KyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gMDsKKyAgICByZXN1bHRbMF0gKz0g
eFswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdICs9IHhbMV0gKiB5WzFdWzBdOworICAgIHJl
c3VsdFswXSArPSB4WzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV0gPSAwOworICAgIHJlc3Vs
dFsxXSArPSB4WzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXSAqIHlbMV1bMV07
CisgICAgcmVzdWx0WzFdICs9IHhbMl0gKiB5WzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmMyBtdWwoaGFsZjN4MiB4LCBoYWxmMiB5KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IDA7CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMF0gKiB5WzBdOworICAgIHJl
c3VsdFswXSArPSB4WzBdWzFdICogeVsxXTsKKyAgICByZXN1bHRbMV0gPSAwOworICAgIHJlc3Vs
dFsxXSArPSB4WzFdWzBdICogeVswXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXVsxXSAqIHlbMV07
CisgICAgcmVzdWx0WzJdID0gMDsKKyAgICByZXN1bHRbMl0gKz0geFsyXVswXSAqIHlbMF07Cisg
ICAgcmVzdWx0WzJdICs9IHhbMl1bMV0gKiB5WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMyBtdWwoaGFsZjMgeCwgaGFsZjN4MyB5KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IDA7CisgICAgcmVzdWx0WzBdICs9IHhbMF0gKiB5WzBdWzBdOworICAgIHJlc3Vs
dFswXSArPSB4WzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF0gKz0geFsyXSAqIHlbMl1bMF07
CisgICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFswXSAqIHlbMF1bMV07Cisg
ICAgcmVzdWx0WzFdICs9IHhbMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXSArPSB4WzJdICog
eVsyXVsxXTsKKyAgICByZXN1bHRbMl0gPSAwOworICAgIHJlc3VsdFsyXSArPSB4WzBdICogeVsw
XVsyXTsKKyAgICByZXN1bHRbMl0gKz0geFsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzJdICs9
IHhbMl0gKiB5WzJdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBtdWwoaGFsZjN4
MyB4LCBoYWxmMyB5KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IDA7Cisg
ICAgcmVzdWx0WzBdICs9IHhbMF1bMF0gKiB5WzBdOworICAgIHJlc3VsdFswXSArPSB4WzBdWzFd
ICogeVsxXTsKKyAgICByZXN1bHRbMF0gKz0geFswXVsyXSAqIHlbMl07CisgICAgcmVzdWx0WzFd
ID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFsxXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzFdICs9
IHhbMV1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsxXSArPSB4WzFdWzJdICogeVsyXTsKKyAgICBy
ZXN1bHRbMl0gPSAwOworICAgIHJlc3VsdFsyXSArPSB4WzJdWzBdICogeVswXTsKKyAgICByZXN1
bHRbMl0gKz0geFsyXVsxXSAqIHlbMV07CisgICAgcmVzdWx0WzJdICs9IHhbMl1bMl0gKiB5WzJd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBtdWwoaGFsZjMgeCwgaGFsZjN4NCB5KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IDA7CisgICAgcmVzdWx0WzBdICs9
IHhbMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXSArPSB4WzFdICogeVsxXVswXTsKKyAgICBy
ZXN1bHRbMF0gKz0geFsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1
bHRbMV0gKz0geFswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdICs9IHhbMV0gKiB5WzFdWzFd
OworICAgIHJlc3VsdFsxXSArPSB4WzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl0gPSAwOwor
ICAgIHJlc3VsdFsyXSArPSB4WzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMl0gKz0geFsxXSAq
IHlbMV1bMl07CisgICAgcmVzdWx0WzJdICs9IHhbMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFsz
XSA9IDA7CisgICAgcmVzdWx0WzNdICs9IHhbMF0gKiB5WzBdWzNdOworICAgIHJlc3VsdFszXSAr
PSB4WzFdICogeVsxXVszXTsKKyAgICByZXN1bHRbM10gKz0geFsyXSAqIHlbMl1bM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG11bChoYWxmM3g0IHgsIGhhbGY0IHkpIHsKKyAgICBo
YWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gMDsKKyAgICByZXN1bHRbMF0gKz0geFswXVsw
XSAqIHlbMF07CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsw
XSArPSB4WzBdWzJdICogeVsyXTsKKyAgICByZXN1bHRbMF0gKz0geFswXVszXSAqIHlbM107Cisg
ICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFsxXVswXSAqIHlbMF07CisgICAg
cmVzdWx0WzFdICs9IHhbMV1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsxXSArPSB4WzFdWzJdICog
eVsyXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXVszXSAqIHlbM107CisgICAgcmVzdWx0WzJdID0g
MDsKKyAgICByZXN1bHRbMl0gKz0geFsyXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzJdICs9IHhb
Ml1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsyXSArPSB4WzJdWzJdICogeVsyXTsKKyAgICByZXN1
bHRbMl0gKz0geFsyXVszXSAqIHlbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG11
bChoYWxmNCB4LCBoYWxmNHgyIHkpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gMDsKKyAgICByZXN1bHRbMF0gKz0geFswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdICs9
IHhbMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXSArPSB4WzJdICogeVsyXVswXTsKKyAgICBy
ZXN1bHRbMF0gKz0geFszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1
bHRbMV0gKz0geFswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdICs9IHhbMV0gKiB5WzFdWzFd
OworICAgIHJlc3VsdFsxXSArPSB4WzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsz
XSAqIHlbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG11bChoYWxmNHgyIHgs
IGhhbGYyIHkpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gMDsKKyAgICBy
ZXN1bHRbMF0gKz0geFswXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMV0gKiB5
WzFdOworICAgIHJlc3VsdFsxXSA9IDA7CisgICAgcmVzdWx0WzFdICs9IHhbMV1bMF0gKiB5WzBd
OworICAgIHJlc3VsdFsxXSArPSB4WzFdWzFdICogeVsxXTsKKyAgICByZXN1bHRbMl0gPSAwOwor
ICAgIHJlc3VsdFsyXSArPSB4WzJdWzBdICogeVswXTsKKyAgICByZXN1bHRbMl0gKz0geFsyXVsx
XSAqIHlbMV07CisgICAgcmVzdWx0WzNdID0gMDsKKyAgICByZXN1bHRbM10gKz0geFszXVswXSAq
IHlbMF07CisgICAgcmVzdWx0WzNdICs9IHhbM11bMV0gKiB5WzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMyBtdWwoaGFsZjQgeCwgaGFsZjR4MyB5KSB7CisgICAgaGFsZjMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IDA7CisgICAgcmVzdWx0WzBdICs9IHhbMF0gKiB5WzBdWzBdOwor
ICAgIHJlc3VsdFswXSArPSB4WzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF0gKz0geFsyXSAq
IHlbMl1bMF07CisgICAgcmVzdWx0WzBdICs9IHhbM10gKiB5WzNdWzBdOworICAgIHJlc3VsdFsx
XSA9IDA7CisgICAgcmVzdWx0WzFdICs9IHhbMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXSAr
PSB4WzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsyXSAqIHlbMl1bMV07CisgICAg
cmVzdWx0WzFdICs9IHhbM10gKiB5WzNdWzFdOworICAgIHJlc3VsdFsyXSA9IDA7CisgICAgcmVz
dWx0WzJdICs9IHhbMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsyXSArPSB4WzFdICogeVsxXVsy
XTsKKyAgICByZXN1bHRbMl0gKz0geFsyXSAqIHlbMl1bMl07CisgICAgcmVzdWx0WzJdICs9IHhb
M10gKiB5WzNdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBtdWwoaGFsZjR4MyB4
LCBoYWxmMyB5KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IDA7CisgICAg
cmVzdWx0WzBdICs9IHhbMF1bMF0gKiB5WzBdOworICAgIHJlc3VsdFswXSArPSB4WzBdWzFdICog
eVsxXTsKKyAgICByZXN1bHRbMF0gKz0geFswXVsyXSAqIHlbMl07CisgICAgcmVzdWx0WzFdID0g
MDsKKyAgICByZXN1bHRbMV0gKz0geFsxXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzFdICs9IHhb
MV1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsxXSArPSB4WzFdWzJdICogeVsyXTsKKyAgICByZXN1
bHRbMl0gPSAwOworICAgIHJlc3VsdFsyXSArPSB4WzJdWzBdICogeVswXTsKKyAgICByZXN1bHRb
Ml0gKz0geFsyXVsxXSAqIHlbMV07CisgICAgcmVzdWx0WzJdICs9IHhbMl1bMl0gKiB5WzJdOwor
ICAgIHJlc3VsdFszXSA9IDA7CisgICAgcmVzdWx0WzNdICs9IHhbM11bMF0gKiB5WzBdOworICAg
IHJlc3VsdFszXSArPSB4WzNdWzFdICogeVsxXTsKKyAgICByZXN1bHRbM10gKz0geFszXVsyXSAq
IHlbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG11bChoYWxmNCB4LCBoYWxmNHg0
IHkpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gMDsKKyAgICByZXN1bHRb
MF0gKz0geFswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdICs9IHhbMV0gKiB5WzFdWzBdOwor
ICAgIHJlc3VsdFswXSArPSB4WzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF0gKz0geFszXSAq
IHlbM11bMF07CisgICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFswXSAqIHlb
MF1bMV07CisgICAgcmVzdWx0WzFdICs9IHhbMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXSAr
PSB4WzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFszXSAqIHlbM11bMV07CisgICAg
cmVzdWx0WzJdID0gMDsKKyAgICByZXN1bHRbMl0gKz0geFswXSAqIHlbMF1bMl07CisgICAgcmVz
dWx0WzJdICs9IHhbMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsyXSArPSB4WzJdICogeVsyXVsy
XTsKKyAgICByZXN1bHRbMl0gKz0geFszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzNdID0gMDsK
KyAgICByZXN1bHRbM10gKz0geFswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzNdICs9IHhbMV0g
KiB5WzFdWzNdOworICAgIHJlc3VsdFszXSArPSB4WzJdICogeVsyXVszXTsKKyAgICByZXN1bHRb
M10gKz0geFszXSAqIHlbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG11bCho
YWxmNHg0IHgsIGhhbGY0IHkpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
MDsKKyAgICByZXN1bHRbMF0gKz0geFswXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzBdICs9IHhb
MF1bMV0gKiB5WzFdOworICAgIHJlc3VsdFswXSArPSB4WzBdWzJdICogeVsyXTsKKyAgICByZXN1
bHRbMF0gKz0geFswXVszXSAqIHlbM107CisgICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRb
MV0gKz0geFsxXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzFdICs9IHhbMV1bMV0gKiB5WzFdOwor
ICAgIHJlc3VsdFsxXSArPSB4WzFdWzJdICogeVsyXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXVsz
XSAqIHlbM107CisgICAgcmVzdWx0WzJdID0gMDsKKyAgICByZXN1bHRbMl0gKz0geFsyXVswXSAq
IHlbMF07CisgICAgcmVzdWx0WzJdICs9IHhbMl1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsyXSAr
PSB4WzJdWzJdICogeVsyXTsKKyAgICByZXN1bHRbMl0gKz0geFsyXVszXSAqIHlbM107CisgICAg
cmVzdWx0WzNdID0gMDsKKyAgICByZXN1bHRbM10gKz0geFszXVswXSAqIHlbMF07CisgICAgcmVz
dWx0WzNdICs9IHhbM11bMV0gKiB5WzFdOworICAgIHJlc3VsdFszXSArPSB4WzNdWzJdICogeVsy
XTsKKyAgICByZXN1bHRbM10gKz0geFszXVszXSAqIHlbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MiBtdWwoZmxvYXQyIHgsIGZsb2F0MngyIHkpIHsKKyAgICBmbG9hdDIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IDA7CisgICAgcmVzdWx0WzBdICs9IHhbMF0gKiB5WzBdWzBdOwor
ICAgIHJlc3VsdFswXSArPSB4WzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV0gPSAwOworICAg
IHJlc3VsdFsxXSArPSB4WzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXSAqIHlb
MV1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBtdWwoZmxvYXQyeDIgeCwgZmxv
YXQyIHkpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IDA7CisgICAgcmVz
dWx0WzBdICs9IHhbMF1bMF0gKiB5WzBdOworICAgIHJlc3VsdFswXSArPSB4WzBdWzFdICogeVsx
XTsKKyAgICByZXN1bHRbMV0gPSAwOworICAgIHJlc3VsdFsxXSArPSB4WzFdWzBdICogeVswXTsK
KyAgICByZXN1bHRbMV0gKz0geFsxXVsxXSAqIHlbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MyBtdWwoZmxvYXQyIHgsIGZsb2F0MngzIHkpIHsKKyAgICBmbG9hdDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IDA7CisgICAgcmVzdWx0WzBdICs9IHhbMF0gKiB5WzBdWzBdOworICAg
IHJlc3VsdFswXSArPSB4WzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV0gPSAwOworICAgIHJl
c3VsdFsxXSArPSB4WzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXSAqIHlbMV1b
MV07CisgICAgcmVzdWx0WzJdID0gMDsKKyAgICByZXN1bHRbMl0gKz0geFswXSAqIHlbMF1bMl07
CisgICAgcmVzdWx0WzJdICs9IHhbMV0gKiB5WzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDIgbXVsKGZsb2F0MngzIHgsIGZsb2F0MyB5KSB7CisgICAgZmxvYXQyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSAwOworICAgIHJlc3VsdFswXSArPSB4WzBdWzBdICogeVswXTsKKyAg
ICByZXN1bHRbMF0gKz0geFswXVsxXSAqIHlbMV07CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMl0g
KiB5WzJdOworICAgIHJlc3VsdFsxXSA9IDA7CisgICAgcmVzdWx0WzFdICs9IHhbMV1bMF0gKiB5
WzBdOworICAgIHJlc3VsdFsxXSArPSB4WzFdWzFdICogeVsxXTsKKyAgICByZXN1bHRbMV0gKz0g
eFsxXVsyXSAqIHlbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBtdWwoZmxvYXQy
IHgsIGZsb2F0Mng0IHkpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IDA7
CisgICAgcmVzdWx0WzBdICs9IHhbMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXSArPSB4WzFd
ICogeVsxXVswXTsKKyAgICByZXN1bHRbMV0gPSAwOworICAgIHJlc3VsdFsxXSArPSB4WzBdICog
eVswXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzJd
ID0gMDsKKyAgICByZXN1bHRbMl0gKz0geFswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzJdICs9
IHhbMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFszXSA9IDA7CisgICAgcmVzdWx0WzNdICs9IHhb
MF0gKiB5WzBdWzNdOworICAgIHJlc3VsdFszXSArPSB4WzFdICogeVsxXVszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQyIG11bChmbG9hdDJ4NCB4LCBmbG9hdDQgeSkgeworICAgIGZs
b2F0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gMDsKKyAgICByZXN1bHRbMF0gKz0geFswXVsw
XSAqIHlbMF07CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsw
XSArPSB4WzBdWzJdICogeVsyXTsKKyAgICByZXN1bHRbMF0gKz0geFswXVszXSAqIHlbM107Cisg
ICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFsxXVswXSAqIHlbMF07CisgICAg
cmVzdWx0WzFdICs9IHhbMV1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsxXSArPSB4WzFdWzJdICog
eVsyXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXVszXSAqIHlbM107CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MiBtdWwoZmxvYXQzIHgsIGZsb2F0M3gyIHkpIHsKKyAgICBmbG9hdDIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IDA7CisgICAgcmVzdWx0WzBdICs9IHhbMF0gKiB5WzBdWzBd
OworICAgIHJlc3VsdFswXSArPSB4WzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF0gKz0geFsy
XSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFswXSAq
IHlbMF1bMV07CisgICAgcmVzdWx0WzFdICs9IHhbMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsx
XSArPSB4WzJdICogeVsyXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG11bChm
bG9hdDN4MiB4LCBmbG9hdDIgeSkgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gMDsKKyAgICByZXN1bHRbMF0gKz0geFswXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzBdICs9
IHhbMF1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsxXSA9IDA7CisgICAgcmVzdWx0WzFdICs9IHhb
MV1bMF0gKiB5WzBdOworICAgIHJlc3VsdFsxXSArPSB4WzFdWzFdICogeVsxXTsKKyAgICByZXN1
bHRbMl0gPSAwOworICAgIHJlc3VsdFsyXSArPSB4WzJdWzBdICogeVswXTsKKyAgICByZXN1bHRb
Ml0gKz0geFsyXVsxXSAqIHlbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBtdWwo
ZmxvYXQzIHgsIGZsb2F0M3gzIHkpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IDA7CisgICAgcmVzdWx0WzBdICs9IHhbMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXSAr
PSB4WzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF0gKz0geFsyXSAqIHlbMl1bMF07CisgICAg
cmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFswXSAqIHlbMF1bMV07CisgICAgcmVz
dWx0WzFdICs9IHhbMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXSArPSB4WzJdICogeVsyXVsx
XTsKKyAgICByZXN1bHRbMl0gPSAwOworICAgIHJlc3VsdFsyXSArPSB4WzBdICogeVswXVsyXTsK
KyAgICByZXN1bHRbMl0gKz0geFsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzJdICs9IHhbMl0g
KiB5WzJdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgbXVsKGZsb2F0M3gzIHgs
IGZsb2F0MyB5KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAwOworICAg
IHJlc3VsdFswXSArPSB4WzBdWzBdICogeVswXTsKKyAgICByZXN1bHRbMF0gKz0geFswXVsxXSAq
IHlbMV07CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMl0gKiB5WzJdOworICAgIHJlc3VsdFsxXSA9
IDA7CisgICAgcmVzdWx0WzFdICs9IHhbMV1bMF0gKiB5WzBdOworICAgIHJlc3VsdFsxXSArPSB4
WzFdWzFdICogeVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXVsyXSAqIHlbMl07CisgICAgcmVz
dWx0WzJdID0gMDsKKyAgICByZXN1bHRbMl0gKz0geFsyXVswXSAqIHlbMF07CisgICAgcmVzdWx0
WzJdICs9IHhbMl1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsyXSArPSB4WzJdWzJdICogeVsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG11bChmbG9hdDMgeCwgZmxvYXQzeDQgeSkg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gMDsKKyAgICByZXN1bHRbMF0g
Kz0geFswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdICs9IHhbMV0gKiB5WzFdWzBdOworICAg
IHJlc3VsdFswXSArPSB4WzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV0gPSAwOworICAgIHJl
c3VsdFsxXSArPSB4WzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXSAqIHlbMV1b
MV07CisgICAgcmVzdWx0WzFdICs9IHhbMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFsyXSA9IDA7
CisgICAgcmVzdWx0WzJdICs9IHhbMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsyXSArPSB4WzFd
ICogeVsxXVsyXTsKKyAgICByZXN1bHRbMl0gKz0geFsyXSAqIHlbMl1bMl07CisgICAgcmVzdWx0
WzNdID0gMDsKKyAgICByZXN1bHRbM10gKz0geFswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzNd
ICs9IHhbMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFszXSArPSB4WzJdICogeVsyXVszXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG11bChmbG9hdDN4NCB4LCBmbG9hdDQgeSkgewor
ICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gMDsKKyAgICByZXN1bHRbMF0gKz0g
eFswXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMV0gKiB5WzFdOworICAgIHJl
c3VsdFswXSArPSB4WzBdWzJdICogeVsyXTsKKyAgICByZXN1bHRbMF0gKz0geFswXVszXSAqIHlb
M107CisgICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFsxXVswXSAqIHlbMF07
CisgICAgcmVzdWx0WzFdICs9IHhbMV1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsxXSArPSB4WzFd
WzJdICogeVsyXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXVszXSAqIHlbM107CisgICAgcmVzdWx0
WzJdID0gMDsKKyAgICByZXN1bHRbMl0gKz0geFsyXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzJd
ICs9IHhbMl1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsyXSArPSB4WzJdWzJdICogeVsyXTsKKyAg
ICByZXN1bHRbMl0gKz0geFsyXVszXSAqIHlbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MiBtdWwoZmxvYXQ0IHgsIGZsb2F0NHgyIHkpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IDA7CisgICAgcmVzdWx0WzBdICs9IHhbMF0gKiB5WzBdWzBdOworICAgIHJl
c3VsdFswXSArPSB4WzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF0gKz0geFsyXSAqIHlbMl1b
MF07CisgICAgcmVzdWx0WzBdICs9IHhbM10gKiB5WzNdWzBdOworICAgIHJlc3VsdFsxXSA9IDA7
CisgICAgcmVzdWx0WzFdICs9IHhbMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXSArPSB4WzFd
ICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0
WzFdICs9IHhbM10gKiB5WzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgbXVs
KGZsb2F0NHgyIHgsIGZsb2F0MiB5KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSAwOworICAgIHJlc3VsdFswXSArPSB4WzBdWzBdICogeVswXTsKKyAgICByZXN1bHRbMF0g
Kz0geFswXVsxXSAqIHlbMV07CisgICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0g
eFsxXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzFdICs9IHhbMV1bMV0gKiB5WzFdOworICAgIHJl
c3VsdFsyXSA9IDA7CisgICAgcmVzdWx0WzJdICs9IHhbMl1bMF0gKiB5WzBdOworICAgIHJlc3Vs
dFsyXSArPSB4WzJdWzFdICogeVsxXTsKKyAgICByZXN1bHRbM10gPSAwOworICAgIHJlc3VsdFsz
XSArPSB4WzNdWzBdICogeVswXTsKKyAgICByZXN1bHRbM10gKz0geFszXVsxXSAqIHlbMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBtdWwoZmxvYXQ0IHgsIGZsb2F0NHgzIHkpIHsK
KyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IDA7CisgICAgcmVzdWx0WzBdICs9
IHhbMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXSArPSB4WzFdICogeVsxXVswXTsKKyAgICBy
ZXN1bHRbMF0gKz0geFsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzBdICs9IHhbM10gKiB5WzNd
WzBdOworICAgIHJlc3VsdFsxXSA9IDA7CisgICAgcmVzdWx0WzFdICs9IHhbMF0gKiB5WzBdWzFd
OworICAgIHJlc3VsdFsxXSArPSB4WzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsy
XSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzFdICs9IHhbM10gKiB5WzNdWzFdOworICAgIHJlc3Vs
dFsyXSA9IDA7CisgICAgcmVzdWx0WzJdICs9IHhbMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsy
XSArPSB4WzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMl0gKz0geFsyXSAqIHlbMl1bMl07Cisg
ICAgcmVzdWx0WzJdICs9IHhbM10gKiB5WzNdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgbXVsKGZsb2F0NHgzIHgsIGZsb2F0MyB5KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSAwOworICAgIHJlc3VsdFswXSArPSB4WzBdWzBdICogeVswXTsKKyAgICBy
ZXN1bHRbMF0gKz0geFswXVsxXSAqIHlbMV07CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMl0gKiB5
WzJdOworICAgIHJlc3VsdFsxXSA9IDA7CisgICAgcmVzdWx0WzFdICs9IHhbMV1bMF0gKiB5WzBd
OworICAgIHJlc3VsdFsxXSArPSB4WzFdWzFdICogeVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsx
XVsyXSAqIHlbMl07CisgICAgcmVzdWx0WzJdID0gMDsKKyAgICByZXN1bHRbMl0gKz0geFsyXVsw
XSAqIHlbMF07CisgICAgcmVzdWx0WzJdICs9IHhbMl1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsy
XSArPSB4WzJdWzJdICogeVsyXTsKKyAgICByZXN1bHRbM10gPSAwOworICAgIHJlc3VsdFszXSAr
PSB4WzNdWzBdICogeVswXTsKKyAgICByZXN1bHRbM10gKz0geFszXVsxXSAqIHlbMV07CisgICAg
cmVzdWx0WzNdICs9IHhbM11bMl0gKiB5WzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgbXVsKGZsb2F0NCB4LCBmbG9hdDR4NCB5KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSAwOworICAgIHJlc3VsdFswXSArPSB4WzBdICogeVswXVswXTsKKyAgICByZXN1
bHRbMF0gKz0geFsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzBdICs9IHhbMl0gKiB5WzJdWzBd
OworICAgIHJlc3VsdFswXSArPSB4WzNdICogeVszXVswXTsKKyAgICByZXN1bHRbMV0gPSAwOwor
ICAgIHJlc3VsdFsxXSArPSB4WzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXSAq
IHlbMV1bMV07CisgICAgcmVzdWx0WzFdICs9IHhbMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFsx
XSArPSB4WzNdICogeVszXVsxXTsKKyAgICByZXN1bHRbMl0gPSAwOworICAgIHJlc3VsdFsyXSAr
PSB4WzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMl0gKz0geFsxXSAqIHlbMV1bMl07CisgICAg
cmVzdWx0WzJdICs9IHhbMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFsyXSArPSB4WzNdICogeVsz
XVsyXTsKKyAgICByZXN1bHRbM10gPSAwOworICAgIHJlc3VsdFszXSArPSB4WzBdICogeVswXVsz
XTsKKyAgICByZXN1bHRbM10gKz0geFsxXSAqIHlbMV1bM107CisgICAgcmVzdWx0WzNdICs9IHhb
Ml0gKiB5WzJdWzNdOworICAgIHJlc3VsdFszXSArPSB4WzNdICogeVszXVszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG11bChmbG9hdDR4NCB4LCBmbG9hdDQgeSkgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gMDsKKyAgICByZXN1bHRbMF0gKz0geFswXVsw
XSAqIHlbMF07CisgICAgcmVzdWx0WzBdICs9IHhbMF1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsw
XSArPSB4WzBdWzJdICogeVsyXTsKKyAgICByZXN1bHRbMF0gKz0geFswXVszXSAqIHlbM107Cisg
ICAgcmVzdWx0WzFdID0gMDsKKyAgICByZXN1bHRbMV0gKz0geFsxXVswXSAqIHlbMF07CisgICAg
cmVzdWx0WzFdICs9IHhbMV1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsxXSArPSB4WzFdWzJdICog
eVsyXTsKKyAgICByZXN1bHRbMV0gKz0geFsxXVszXSAqIHlbM107CisgICAgcmVzdWx0WzJdID0g
MDsKKyAgICByZXN1bHRbMl0gKz0geFsyXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzJdICs9IHhb
Ml1bMV0gKiB5WzFdOworICAgIHJlc3VsdFsyXSArPSB4WzJdWzJdICogeVsyXTsKKyAgICByZXN1
bHRbMl0gKz0geFsyXVszXSAqIHlbM107CisgICAgcmVzdWx0WzNdID0gMDsKKyAgICByZXN1bHRb
M10gKz0geFszXVswXSAqIHlbMF07CisgICAgcmVzdWx0WzNdICs9IHhbM11bMV0gKiB5WzFdOwor
ICAgIHJlc3VsdFszXSArPSB4WzNdWzJdICogeVsyXTsKKyAgICByZXN1bHRbM10gKz0geFszXVsz
XSAqIHlbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgbXVsKGhhbGYyeDIgeCwg
aGFsZjJ4MiB5KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzJdID0gMDsK
KyAgICByZXN1bHRbMF1bMl0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzJd
ICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVsyXSA9IDA7CisgICAgcmVzdWx0
WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzFd
ICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSAwOworICAgIHJlc3VsdFsxXVsyXSArPSB4
WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVsxXSAqIHlbMV1bMF07
CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVswXSAqIHlb
MF1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmMngzIG11bChoYWxmMngyIHgsIGhhbGYyeDMgeSkgeworICAgIGhh
bGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0WzBdWzNdICs9
IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFdICogeVsxXVsw
XTsKKyAgICByZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICog
eVswXVsxXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVz
dWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMl07Cisg
ICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVszXSA9
IDA7CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsx
XVszXSArPSB4WzFdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJl
c3VsdFsxXVszXSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsx
XVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10g
Kz0geFsxXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFd
WzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMng0IG11bChoYWxmMngyIHgsIGhhbGYy
eDQgeSkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVs0XSA9IDA7CisgICAg
cmVzdWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVs0XSArPSB4
WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0
XSArPSB4WzBdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlb
MV1bMV07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsw
XSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzJdOworICAg
IHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzNd
OworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzFdICogeVsxXVszXTsKKyAgICByZXN1bHRbMV1b
NF0gPSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1
bHRbMV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAg
ICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzRdICs9
IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFd
WzRdICs9IHhbMV1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICog
eVsxXVsyXTsKKyAgICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFd
WzBdICogeVswXVszXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bM107Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgbXVsKGhhbGYyeDMgeCwgaGFsZjN4MiB5KSB7
CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRb
MF1bMl0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0g
KiB5WzFdWzBdOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSAwOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzBdICogeVswXVsxXTsK
KyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBdWzJd
ICs9IHhbMF1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0
WzFdWzJdICs9IHhbMV1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFd
ICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVsyXSAqIHlbMl1bMF07CisgICAg
cmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVswXSAqIHlbMF1bMV07
CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVsy
XSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBt
dWwoaGFsZjJ4MyB4LCBoYWxmM3gzIHkpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVswXTsKKyAg
ICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9
IHhbMF1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0WzBd
WzNdICs9IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFdICog
eVsxXVsxXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsyXSAqIHlbMl1bMV07CisgICAgcmVz
dWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMl07Cisg
ICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFswXVszXSAr
PSB4WzBdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsx
XVszXSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAq
IHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5WzJdWzBdOworICAgIHJl
c3VsdFsxXVszXSA9IDA7CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzFdOwor
ICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bM10g
Kz0geFsxXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRb
MV1bM10gKz0geFsxXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0g
KiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBtdWwoaGFsZjJ4MyB4LCBoYWxmM3g0IHkpIHsKKyAg
ICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0
XSArPSB4WzBdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlb
MV1bMF07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMl0gKiB5WzJdWzBdOworICAgIHJlc3Vs
dFswXVs0XSA9IDA7CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzFdOworICAg
IHJlc3VsdFswXVs0XSArPSB4WzBdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gKz0g
eFswXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1b
NF0gKz0geFswXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5
WzFdWzJdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsyXTsKKyAgICByZXN1
bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzBdICogeVswXVszXTsKKyAg
ICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1bM107CisgICAgcmVzdWx0WzBdWzRdICs9
IHhbMF1bMl0gKiB5WzJdWzNdOworICAgIHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFd
WzRdICs9IHhbMV1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICog
eVsxXVswXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsyXSAqIHlbMl1bMF07CisgICAgcmVz
dWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMV07Cisg
ICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVs0XSAr
PSB4WzFdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJlc3VsdFsx
XVs0XSArPSB4WzFdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsxXSAq
IHlbMV1bMl07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMl0gKiB5WzJdWzJdOworICAgIHJl
c3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5WzBdWzNdOwor
ICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsxXVszXTsKKyAgICByZXN1bHRbMV1bNF0g
Kz0geFsxXVsyXSAqIHlbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgbXVs
KGhhbGYyeDQgeCwgaGFsZjR4MiB5KSB7CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAg
cmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVsyXSArPSB4
WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVszXSAqIHlbM11bMF07
CisgICAgcmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVswXSAqIHlb
MF1bMV07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3Vs
dFswXVsyXSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsz
XSAqIHlbM11bMV07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1bMl0gKz0g
eFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFdWzBd
OworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1b
Ml0gKz0geFsxXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1
bHRbMV1bMl0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1b
MV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gKz0geFsxXVszXSAqIHlbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYyeDMgbXVsKGhhbGYyeDQgeCwgaGFsZjR4MyB5KSB7CisgICAgaGFsZjJ4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAq
IHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJl
c3VsdFswXVszXSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFsw
XVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10g
Kz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFd
WzFdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRb
MF1bM10gKz0geFswXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICBy
ZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdICs9IHhb
MF1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzJdICogeVsyXVsyXTsK
KyAgICByZXN1bHRbMF1bM10gKz0geFswXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzFdWzNd
ID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0
WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzJd
ICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVszXSAqIHlbM11bMF07CisgICAg
cmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMV07
CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVsz
XSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVszXSAqIHlb
M11bMV07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsw
XSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzJdOworICAg
IHJlc3VsdFsxXVszXSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMV1bM10gKz0g
eFsxXVszXSAqIHlbM11bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgbXVsKGhh
bGYyeDQgeCwgaGFsZjR4NCB5KSB7CisgICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVz
dWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBd
WzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bMF07Cisg
ICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1b
MV07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsw
XVs0XSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAq
IHlbM11bMV07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFsw
XVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzJdOwor
ICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMF1bNF0g
Kz0geFswXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRb
MF1bNF0gKz0geFswXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0g
KiB5WzFdWzNdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVszXTsKKyAgICBy
ZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bM107CisgICAgcmVzdWx0WzFdWzRdID0gMDsK
KyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzRd
ICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsy
XVswXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0
WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAg
cmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVs0XSArPSB4
WzFdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bMV07
CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlb
MF1bMl07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzJdOworICAgIHJlc3Vs
dFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsz
XSAqIHlbM11bMl07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0g
eFsxXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzNd
OworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMV1b
NF0gKz0geFsxXVszXSAqIHlbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIg
bXVsKGhhbGYzeDIgeCwgaGFsZjJ4MiB5KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVswXSAqIHlbMF1bMF07Cisg
ICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVsyXSA9
IDA7CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsw
XVsyXSArPSB4WzBdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSAwOworICAgIHJl
c3VsdFsxXVsyXSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsx
XVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1bMl0g
Kz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFd
WzFdOworICAgIHJlc3VsdFsyXVsyXSA9IDA7CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMF0g
KiB5WzBdWzBdOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzFdICogeVsxXVswXTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSAwOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzBdICogeVswXVsxXTsK
KyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsxXSAqIHlbMV1bMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYzeDMgbXVsKGhhbGYzeDIgeCwgaGFsZjJ4MyB5KSB7CisgICAgaGFsZjN4MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsw
XSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAg
IHJlc3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMF0gKiB5WzBdWzFd
OworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMF1b
M10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVsyXTsKKyAgICByZXN1
bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAg
ICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzNdICs9
IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVszXSA9IDA7CisgICAgcmVzdWx0WzFd
WzNdICs9IHhbMV1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzFdICog
eVsxXVsxXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFd
WzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAqIHlbMV1bMl07Cisg
ICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVswXSAqIHlbMF1b
MF07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsy
XVszXSA9IDA7CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMF0gKiB5WzBdWzFdOworICAgIHJl
c3VsdFsyXVszXSArPSB4WzJdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMl1bM10gPSAwOwor
ICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMl1bM10g
Kz0geFsyXVsxXSAqIHlbMV1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgbXVs
KGhhbGYzeDIgeCwgaGFsZjJ4NCB5KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAg
cmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVs0XSA9IDA7
CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFswXVs0
XSArPSB4WzBdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3Vs
dFswXVs0XSArPSB4WzBdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsx
XSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0g
eFswXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzNd
OworICAgIHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5
WzBdWzBdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsxXVswXTsKKyAgICByZXN1
bHRbMV1bNF0gPSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAg
ICByZXN1bHRbMV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzRdID0g
MDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFd
WzRdICs9IHhbMV1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVz
dWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5WzBdWzNdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFd
WzFdICogeVsxXVszXTsKKyAgICByZXN1bHRbMl1bNF0gPSAwOworICAgIHJlc3VsdFsyXVs0XSAr
PSB4WzJdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsxXSAqIHlbMV1b
MF07CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAq
IHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJl
c3VsdFsyXVs0XSA9IDA7CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5WzBdWzJdOwor
ICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMl1bNF0g
PSAwOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzBdICogeVswXVszXTsKKyAgICByZXN1bHRb
Ml1bNF0gKz0geFsyXVsxXSAqIHlbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
eDIgbXVsKGhhbGYzeDMgeCwgaGFsZjN4MiB5KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVswXSAqIHlbMF1bMF07
CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVsy
XSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bMl0gPSAwOworICAgIHJlc3Vs
dFswXVsyXSArPSB4WzBdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsx
XSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMl0gKiB5WzJdWzFdOworICAg
IHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMF0gKiB5WzBdWzBd
OworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1b
Ml0gKz0geFsxXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1
bHRbMV1bMl0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1b
MV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAg
ICByZXN1bHRbMl1bMl0gPSAwOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzBdICogeVswXVsw
XTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzJd
WzJdICs9IHhbMl1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsyXVsyXSA9IDA7CisgICAgcmVz
dWx0WzJdWzJdICs9IHhbMl1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJd
WzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsyXSAqIHlbMl1bMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgbXVsKGhhbGYzeDMgeCwgaGFsZjN4MyB5KSB7
CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRb
MF1bM10gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0g
KiB5WzFdWzBdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICBy
ZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVsxXTsK
KyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBdWzNd
ICs9IHhbMF1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0
WzBdWzNdICs9IHhbMF1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFd
ICogeVsxXVsyXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsyXSAqIHlbMl1bMl07CisgICAg
cmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMF07
CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVsz
XSArPSB4WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3Vs
dFsxXVszXSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsx
XSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5WzJdWzFdOworICAg
IHJlc3VsdFsxXVszXSA9IDA7CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzJd
OworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMV1b
M10gKz0geFsxXVsyXSAqIHlbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1
bHRbMl1bM10gKz0geFsyXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1b
MV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzJdICogeVsyXVswXTsKKyAg
ICByZXN1bHRbMl1bM10gPSAwOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzBdICogeVswXVsx
XTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzJd
WzNdICs9IHhbMl1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFsyXVszXSA9IDA7CisgICAgcmVz
dWx0WzJdWzNdICs9IHhbMl1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJd
WzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsyXSAqIHlbMl1bMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgbXVsKGhhbGYzeDMgeCwgaGFsZjN4NCB5KSB7
CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRb
MF1bNF0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0g
KiB5WzFdWzBdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICBy
ZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzBdICogeVswXVsxXTsK
KyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBdWzRd
ICs9IHhbMF1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVzdWx0
WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzFd
ICogeVsxXVsyXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsyXSAqIHlbMl1bMl07CisgICAg
cmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bM107
CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFswXVs0
XSArPSB4WzBdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJlc3Vs
dFsxXVs0XSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsx
XSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMl0gKiB5WzJdWzBdOworICAg
IHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5WzBdWzFd
OworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1b
NF0gKz0geFsxXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1
bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1b
MV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAg
ICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVswXVsz
XTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bM107CisgICAgcmVzdWx0WzFd
WzRdICs9IHhbMV1bMl0gKiB5WzJdWzNdOworICAgIHJlc3VsdFsyXVs0XSA9IDA7CisgICAgcmVz
dWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJd
WzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsyXSAqIHlbMl1bMF07Cisg
ICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1b
MV07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsy
XVs0XSArPSB4WzJdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bNF0gPSAwOworICAgIHJl
c3VsdFsyXVs0XSArPSB4WzJdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsy
XVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMl0gKiB5WzJdWzJdOwor
ICAgIHJlc3VsdFsyXVs0XSA9IDA7CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5WzBd
WzNdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzFdICogeVsxXVszXTsKKyAgICByZXN1bHRb
Ml1bNF0gKz0geFsyXVsyXSAqIHlbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
eDIgbXVsKGhhbGYzeDQgeCwgaGFsZjR4MiB5KSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVswXSAqIHlbMF1bMF07
CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVsy
XSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVszXSAqIHlb
M11bMF07CisgICAgcmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsw
XSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAg
IHJlc3VsdFswXVsyXSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gKz0g
eFswXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1b
Ml0gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5
WzFdWzBdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1
bHRbMV1bMl0gKz0geFsxXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAg
ICByZXN1bHRbMV1bMl0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9
IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzJdICogeVsyXVsx
XTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzJd
WzJdID0gMDsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVswXSAqIHlbMF1bMF07CisgICAgcmVz
dWx0WzJdWzJdICs9IHhbMl1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJd
WzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVszXSAqIHlbM11bMF07Cisg
ICAgcmVzdWx0WzJdWzJdID0gMDsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVswXSAqIHlbMF1b
MV07CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsy
XVsyXSArPSB4WzJdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVszXSAq
IHlbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDMgbXVsKGhhbGYzeDQgeCwg
aGFsZjR4MyB5KSB7CisgICAgaGFsZjN4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzNdID0gMDsK
KyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzNd
ICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzJdICogeVsy
XVswXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0
WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAg
cmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFswXVszXSArPSB4
WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVszXSAqIHlbM11bMV07
CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlb
MF1bMl07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzJdOworICAgIHJlc3Vs
dFswXVszXSArPSB4WzBdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsz
XSAqIHlbM11bMl07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0g
eFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzBd
OworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1b
M10gKz0geFsxXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1
bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1b
MV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAg
ICByZXN1bHRbMV1bM10gKz0geFsxXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzFdWzNdID0g
MDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFd
WzNdICs9IHhbMV1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzJdICog
eVsyXVsyXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVszXSAqIHlbM11bMl07CisgICAgcmVz
dWx0WzJdWzNdID0gMDsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVswXSAqIHlbMF1bMF07Cisg
ICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVszXSAr
PSB4WzJdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVszXSAqIHlbM11b
MF07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVswXSAq
IHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJl
c3VsdFsyXVszXSArPSB4WzJdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsy
XVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1bHRbMl1bM10g
Kz0geFsyXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMV0gKiB5WzFd
WzJdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRb
Ml1bM10gKz0geFsyXVszXSAqIHlbM11bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
eDQgbXVsKGhhbGYzeDQgeCwgaGFsZjR4NCB5KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMF07
CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVs0
XSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlb
M11bMF07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsw
XSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAg
IHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gKz0g
eFswXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1b
NF0gKz0geFswXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5
WzFdWzJdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsyXTsKKyAgICByZXN1
bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAg
ICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzBdWzRdICs9
IHhbMF1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsz
XTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bM107CisgICAgcmVzdWx0WzFd
WzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVz
dWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFd
WzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bMF07Cisg
ICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1b
MV07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsx
XVs0XSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAq
IHlbM11bMV07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsx
XVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzJdOwor
ICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMV1bNF0g
Kz0geFsxXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRb
MV1bNF0gKz0geFsxXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0g
KiB5WzFdWzNdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVszXTsKKyAgICBy
ZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bM107CisgICAgcmVzdWx0WzJdWzRdID0gMDsK
KyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzJdWzRd
ICs9IHhbMl1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsy
XVswXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0
WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMV07CisgICAg
cmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsyXVs0XSArPSB4
WzJdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlbM11bMV07
CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlb
MF1bMl07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzJdOworICAgIHJlc3Vs
dFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsz
XSAqIHlbM11bMl07CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0g
eFsyXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzNd
OworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMl1b
NF0gKz0geFsyXVszXSAqIHlbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIg
bXVsKGhhbGY0eDIgeCwgaGFsZjJ4MiB5KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVswXSAqIHlbMF1bMF07Cisg
ICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVsyXSA9
IDA7CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsw
XVsyXSArPSB4WzBdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSAwOworICAgIHJl
c3VsdFsxXVsyXSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsx
XVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1bMl0g
Kz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFd
WzFdOworICAgIHJlc3VsdFsyXVsyXSA9IDA7CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMF0g
KiB5WzBdWzBdOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzFdICogeVsxXVswXTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSAwOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzBdICogeVswXVsxXTsK
KyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzNdWzJd
ID0gMDsKKyAgICByZXN1bHRbM11bMl0gKz0geFszXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0
WzNdWzJdICs9IHhbM11bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFszXVsyXSA9IDA7CisgICAg
cmVzdWx0WzNdWzJdICs9IHhbM11bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFszXVsyXSArPSB4
WzNdWzFdICogeVsxXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBtdWwoaGFs
ZjR4MiB4LCBoYWxmMngzIHkpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
M10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVswXTsKKyAgICByZXN1
bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAg
ICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzNdICs9
IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0WzBd
WzNdICs9IHhbMF1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFdICog
eVsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFd
WzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAqIHlbMV1bMF07Cisg
ICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1b
MV07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsx
XVszXSA9IDA7CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzJdOworICAgIHJl
c3VsdFsxXVszXSArPSB4WzFdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSAwOwor
ICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMl1bM10g
Kz0geFsyXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1bHRb
Ml1bM10gKz0geFsyXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMV0g
KiB5WzFdWzFdOworICAgIHJlc3VsdFsyXVszXSA9IDA7CisgICAgcmVzdWx0WzJdWzNdICs9IHhb
Ml1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzFdICogeVsxXVsyXTsK
KyAgICByZXN1bHRbM11bM10gPSAwOworICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzBdICogeVsw
XVswXTsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0
WzNdWzNdID0gMDsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVswXSAqIHlbMF1bMV07CisgICAg
cmVzdWx0WzNdWzNdICs9IHhbM11bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFszXVszXSA9IDA7
CisgICAgcmVzdWx0WzNdWzNdICs9IHhbM11bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFszXVsz
XSArPSB4WzNdWzFdICogeVsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBt
dWwoaGFsZjR4MiB4LCBoYWxmMng0IHkpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzBdICogeVswXVswXTsKKyAg
ICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzBdWzRdID0g
MDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBd
WzRdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVz
dWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBd
WzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0XSAr
PSB4WzBdWzBdICogeVswXVszXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1b
M107CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAq
IHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJl
c3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5WzBdWzFdOwor
ICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bNF0g
PSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRb
MV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICBy
ZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzFdWzRdICs9IHhb
MV1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFsyXVs0XSA9IDA7CisgICAgcmVzdWx0WzJdWzRd
ICs9IHhbMl1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzFdICogeVsx
XVswXTsKKyAgICByZXN1bHRbMl1bNF0gPSAwOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzBd
ICogeVswXVsxXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsxXSAqIHlbMV1bMV07CisgICAg
cmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMl07
CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsyXVs0
XSA9IDA7CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5WzBdWzNdOworICAgIHJlc3Vs
dFsyXVs0XSArPSB4WzJdWzFdICogeVsxXVszXTsKKyAgICByZXN1bHRbM11bNF0gPSAwOworICAg
IHJlc3VsdFszXVs0XSArPSB4WzNdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbM11bNF0gKz0g
eFszXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzNdWzRdID0gMDsKKyAgICByZXN1bHRbM11b
NF0gKz0geFszXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11bMV0gKiB5
WzFdWzFdOworICAgIHJlc3VsdFszXVs0XSA9IDA7CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11b
MF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzFdICogeVsxXVsyXTsKKyAg
ICByZXN1bHRbM11bNF0gPSAwOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzBdICogeVswXVsz
XTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVsxXSAqIHlbMV1bM107CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0eDIgbXVsKGhhbGY0eDMgeCwgaGFsZjN4MiB5KSB7CisgICAgaGFsZjR4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFsw
XVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzBdOwor
ICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bMl0g
PSAwOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRb
MF1bMl0gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMl0g
KiB5WzJdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhb
MV1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVswXTsK
KyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzFdWzJd
ID0gMDsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0
WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzJd
ICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSAwOworICAgIHJlc3VsdFsyXVsyXSArPSB4
WzJdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsxXSAqIHlbMV1bMF07
CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsyXVsy
XSA9IDA7CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMF0gKiB5WzBdWzFdOworICAgIHJlc3Vs
dFsyXVsyXSArPSB4WzJdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsy
XSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzNdWzJdID0gMDsKKyAgICByZXN1bHRbM11bMl0gKz0g
eFszXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bMV0gKiB5WzFdWzBd
OworICAgIHJlc3VsdFszXVsyXSArPSB4WzNdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbM11b
Ml0gPSAwOworICAgIHJlc3VsdFszXVsyXSArPSB4WzNdWzBdICogeVswXVsxXTsKKyAgICByZXN1
bHRbM11bMl0gKz0geFszXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11b
Ml0gKiB5WzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIG11bChoYWxmNHgz
IHgsIGhhbGYzeDMgeSkgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVszXSA9
IDA7CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsw
XVszXSArPSB4WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsyXSAq
IHlbMl1bMF07CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFsw
XVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzFdOwor
ICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bM10g
PSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRb
MF1bM10gKz0geFswXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMl0g
KiB5WzJdWzJdOworICAgIHJlc3VsdFsxXVszXSA9IDA7CisgICAgcmVzdWx0WzFdWzNdICs9IHhb
MV1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzFdICogeVsxXVswXTsK
KyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzFdWzNd
ID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0
WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzJd
ICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsxXVszXSArPSB4
WzFdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAqIHlbMV1bMl07
CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFsyXVsz
XSA9IDA7CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMF0gKiB5WzBdWzBdOworICAgIHJlc3Vs
dFsyXVszXSArPSB4WzJdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsy
XSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1bHRbMl1bM10gKz0g
eFsyXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMV0gKiB5WzFdWzFd
OworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1b
M10gPSAwOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzBdICogeVswXVsyXTsKKyAgICByZXN1
bHRbMl1bM10gKz0geFsyXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1b
Ml0gKiB5WzJdWzJdOworICAgIHJlc3VsdFszXVszXSA9IDA7CisgICAgcmVzdWx0WzNdWzNdICs9
IHhbM11bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzFdICogeVsxXVsw
XTsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzNd
WzNdID0gMDsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVswXSAqIHlbMF1bMV07CisgICAgcmVz
dWx0WzNdWzNdICs9IHhbM11bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFszXVszXSArPSB4WzNd
WzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbM11bM10gPSAwOworICAgIHJlc3VsdFszXVszXSAr
PSB4WzNdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVsxXSAqIHlbMV1b
Ml07CisgICAgcmVzdWx0WzNdWzNdICs9IHhbM11bMl0gKiB5WzJdWzJdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNHg0IG11bChoYWxmNHgzIHgsIGhhbGYzeDQgeSkgeworICAgIGhhbGY0
eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVzdWx0WzBdWzRdICs9IHhb
MF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzFdICogeVsxXVswXTsK
KyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzBdWzRd
ID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0
WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJd
ICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0XSArPSB4
WzBdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1bMl07
CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFswXVs0
XSA9IDA7CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzNdOworICAgIHJlc3Vs
dFswXVs0XSArPSB4WzBdWzFdICogeVsxXVszXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsy
XSAqIHlbMl1bM107CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0g
eFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzBd
OworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1b
NF0gPSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1
bHRbMV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1b
Ml0gKiB5WzJdWzFdOworICAgIHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRdICs9
IHhbMV1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsxXVsy
XTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsyXSAqIHlbMl1bMl07CisgICAgcmVzdWx0WzFd
WzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bM107CisgICAgcmVz
dWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFd
WzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMl1bNF0gPSAwOworICAgIHJlc3VsdFsyXVs0XSAr
PSB4WzJdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsxXSAqIHlbMV1b
MF07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsy
XVs0XSA9IDA7CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5WzBdWzFdOworICAgIHJl
c3VsdFsyXVs0XSArPSB4WzJdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsy
XVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0g
Kz0geFsyXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFd
WzJdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRb
Ml1bNF0gPSAwOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzBdICogeVswXVszXTsKKyAgICBy
ZXN1bHRbMl1bNF0gKz0geFsyXVsxXSAqIHlbMV1bM107CisgICAgcmVzdWx0WzJdWzRdICs9IHhb
Ml1bMl0gKiB5WzJdWzNdOworICAgIHJlc3VsdFszXVs0XSA9IDA7CisgICAgcmVzdWx0WzNdWzRd
ICs9IHhbM11bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzFdICogeVsx
XVswXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0
WzNdWzRdID0gMDsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVswXSAqIHlbMF1bMV07CisgICAg
cmVzdWx0WzNdWzRdICs9IHhbM11bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFszXVs0XSArPSB4
WzNdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbM11bNF0gPSAwOworICAgIHJlc3VsdFszXVs0
XSArPSB4WzNdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVsxXSAqIHlb
MV1bMl07CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11bMl0gKiB5WzJdWzJdOworICAgIHJlc3Vs
dFszXVs0XSA9IDA7CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11bMF0gKiB5WzBdWzNdOworICAg
IHJlc3VsdFszXVs0XSArPSB4WzNdWzFdICogeVsxXVszXTsKKyAgICByZXN1bHRbM11bNF0gKz0g
eFszXVsyXSAqIHlbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgbXVsKGhh
bGY0eDQgeCwgaGFsZjR4MiB5KSB7CisgICAgaGFsZjR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVz
dWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBd
WzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVszXSAqIHlbM11bMF07Cisg
ICAgcmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVswXSAqIHlbMF1b
MV07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsw
XVsyXSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVszXSAq
IHlbM11bMV07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsx
XVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFdWzBdOwor
ICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1bMl0g
Kz0geFsxXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRb
MV1bMl0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0g
KiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAgICBy
ZXN1bHRbMV1bMl0gKz0geFsxXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzJdWzJdID0gMDsK
KyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzJdWzJd
ICs9IHhbMl1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzJdICogeVsy
XVswXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0
WzJdWzJdID0gMDsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVswXSAqIHlbMF1bMV07CisgICAg
cmVzdWx0WzJdWzJdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsyXVsyXSArPSB4
WzJdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVszXSAqIHlbM11bMV07
CisgICAgcmVzdWx0WzNdWzJdID0gMDsKKyAgICByZXN1bHRbM11bMl0gKz0geFszXVswXSAqIHlb
MF1bMF07CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bMV0gKiB5WzFdWzBdOworICAgIHJlc3Vs
dFszXVsyXSArPSB4WzNdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbM11bMl0gKz0geFszXVsz
XSAqIHlbM11bMF07CisgICAgcmVzdWx0WzNdWzJdID0gMDsKKyAgICByZXN1bHRbM11bMl0gKz0g
eFszXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bMV0gKiB5WzFdWzFd
OworICAgIHJlc3VsdFszXVsyXSArPSB4WzNdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbM11b
Ml0gKz0geFszXVszXSAqIHlbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDMg
bXVsKGhhbGY0eDQgeCwgaGFsZjR4MyB5KSB7CisgICAgaGFsZjR4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMF07Cisg
ICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVszXSAr
PSB4WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVszXSAqIHlbM11b
MF07CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAq
IHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJl
c3VsdFswXVszXSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFsw
XVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10g
Kz0geFswXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFd
WzJdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRb
MF1bM10gKz0geFswXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICBy
ZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzNdICs9IHhb
MV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzJdICogeVsyXVswXTsK
KyAgICByZXN1bHRbMV1bM10gKz0geFsxXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzFdWzNd
ID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0
WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzJd
ICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVszXSAqIHlbM11bMV07CisgICAg
cmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMl07
CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVsz
XSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVszXSAqIHlb
M11bMl07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsw
XSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMV0gKiB5WzFdWzBdOworICAg
IHJlc3VsdFsyXVszXSArPSB4WzJdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMl1bM10gKz0g
eFsyXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1bHRbMl1b
M10gKz0geFsyXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMV0gKiB5
WzFdWzFdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzJdICogeVsyXVsxXTsKKyAgICByZXN1
bHRbMl1bM10gKz0geFsyXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAg
ICByZXN1bHRbMl1bM10gKz0geFsyXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzJdWzNdICs9
IHhbMl1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzJdICogeVsyXVsy
XTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzNd
WzNdID0gMDsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVswXSAqIHlbMF1bMF07CisgICAgcmVz
dWx0WzNdWzNdICs9IHhbM11bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFszXVszXSArPSB4WzNd
WzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVszXSAqIHlbM11bMF07Cisg
ICAgcmVzdWx0WzNdWzNdID0gMDsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVswXSAqIHlbMF1b
MV07CisgICAgcmVzdWx0WzNdWzNdICs9IHhbM11bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsz
XVszXSArPSB4WzNdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVszXSAq
IHlbM11bMV07CisgICAgcmVzdWx0WzNdWzNdID0gMDsKKyAgICByZXN1bHRbM11bM10gKz0geFsz
XVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzNdWzNdICs9IHhbM11bMV0gKiB5WzFdWzJdOwor
ICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbM11bM10g
Kz0geFszXVszXSAqIHlbM11bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgbXVs
KGhhbGY0eDQgeCwgaGFsZjR4NCB5KSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAg
cmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVs0XSArPSB4
WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bMF07
CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlb
MF1bMV07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3Vs
dFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsz
XSAqIHlbM11bMV07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0g
eFswXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzJd
OworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMF1b
NF0gKz0geFswXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1
bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1b
MV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVszXTsKKyAg
ICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bM107CisgICAgcmVzdWx0WzFdWzRdID0g
MDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFd
WzRdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICog
eVsyXVswXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bMF07CisgICAgcmVz
dWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMV07Cisg
ICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVs0XSAr
PSB4WzFdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11b
MV07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAq
IHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzJdOworICAgIHJl
c3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsx
XVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0g
Kz0geFsxXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFd
WzNdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRb
MV1bNF0gKz0geFsxXVszXSAqIHlbM11bM107CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICBy
ZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzJdWzRdICs9IHhb
Ml1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVswXTsK
KyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzJdWzRd
ID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0
WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzJd
ICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlbM11bMV07CisgICAg
cmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMl07
CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsyXVs0
XSArPSB4WzJdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlb
M11bMl07CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsw
XSAqIHlbMF1bM107CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzNdOworICAg
IHJlc3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMl1bNF0gKz0g
eFsyXVszXSAqIHlbM11bM107CisgICAgcmVzdWx0WzNdWzRdID0gMDsKKyAgICByZXN1bHRbM11b
NF0gKz0geFszXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11bMV0gKiB5
WzFdWzBdOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzJdICogeVsyXVswXTsKKyAgICByZXN1
bHRbM11bNF0gKz0geFszXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzNdWzRdID0gMDsKKyAg
ICByZXN1bHRbM11bNF0gKz0geFszXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzNdWzRdICs9
IHhbM11bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzJdICogeVsyXVsx
XTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzNd
WzRdID0gMDsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVswXSAqIHlbMF1bMl07CisgICAgcmVz
dWx0WzNdWzRdICs9IHhbM11bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNd
WzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVszXSAqIHlbM11bMl07Cisg
ICAgcmVzdWx0WzNdWzRdID0gMDsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVswXSAqIHlbMF1b
M107CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFsz
XVs0XSArPSB4WzNdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVszXSAq
IHlbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIG11bChmbG9hdDJ4MiB4
LCBmbG9hdDJ4MiB5KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsyXSA9
IDA7CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsw
XVsyXSArPSB4WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bMl0gPSAwOworICAgIHJl
c3VsdFswXVsyXSArPSB4WzBdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFsw
XVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1bMl0g
Kz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFd
WzBdOworICAgIHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMF0g
KiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgbXVsKGZsb2F0MngyIHgsIGZsb2F0MngzIHkpIHsK
KyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRb
MF1bM10gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0g
KiB5WzFdWzBdOworICAgIHJlc3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0WzBdWzNdICs9IHhb
MF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFdICogeVsxXVsxXTsK
KyAgICByZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVsw
XVsyXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0
WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAg
cmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVszXSA9IDA7
CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVsz
XSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3Vs
dFsxXVszXSArPSB4WzFdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsx
XSAqIHlbMV1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IG11bChmbG9hdDJ4
MiB4LCBmbG9hdDJ4NCB5KSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVs0
XSA9IDA7CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3Vs
dFswXVs0XSArPSB4WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bNF0gPSAwOworICAg
IHJlc3VsdFswXVs0XSArPSB4WzBdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gKz0g
eFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1b
NF0gKz0geFswXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5
WzFdWzJdOworICAgIHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1b
MF0gKiB5WzBdWzNdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzFdICogeVsxXVszXTsKKyAg
ICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVswXVsw
XTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFd
WzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVz
dWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVs0XSA9IDA7Cisg
ICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsxXVs0XSAr
PSB4WzFdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJlc3VsdFsx
XVs0XSArPSB4WzFdWzBdICogeVswXVszXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsxXSAq
IHlbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MngyIG11bChmbG9hdDJ4MyB4
LCBmbG9hdDN4MiB5KSB7CisgICAgZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsyXSA9
IDA7CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsw
XVsyXSArPSB4WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsyXSAq
IHlbMl1bMF07CisgICAgcmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0geFsw
XVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzFdOwor
ICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1bMl0g
PSAwOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRb
MV1bMl0gKz0geFsxXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMl0g
KiB5WzJdWzBdOworICAgIHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhb
MV1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVsxXTsK
KyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVsyXSAqIHlbMl1bMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngzIG11bChmbG9hdDJ4MyB4LCBmbG9hdDN4MyB5KSB7CisgICAgZmxvYXQy
eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0WzBdWzNdICs9IHhb
MF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFdICogeVsxXVswXTsK
KyAgICByZXN1bHRbMF1bM10gKz0geFswXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzBdWzNd
ID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0
WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzJd
ICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4
WzBdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMl07
CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFsxXVsz
XSA9IDA7CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzBdOworICAgIHJlc3Vs
dFsxXVszXSArPSB4WzFdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsy
XSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0g
eFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzFd
OworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1b
M10gPSAwOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzBdICogeVswXVsyXTsKKyAgICByZXN1
bHRbMV1bM10gKz0geFsxXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1b
Ml0gKiB5WzJdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBtdWwoZmxvYXQy
eDMgeCwgZmxvYXQzeDQgeSkgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
NF0gPSAwOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzBdICogeVswXVswXTsKKyAgICByZXN1
bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1b
Ml0gKiB5WzJdWzBdOworICAgIHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVzdWx0WzBdWzRdICs9
IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzFdICogeVsxXVsx
XTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzBd
WzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMl07CisgICAgcmVz
dWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBd
WzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0XSAr
PSB4WzBdWzBdICogeVswXVszXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1b
M107CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMl0gKiB5WzJdWzNdOworICAgIHJlc3VsdFsx
XVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5WzBdWzBdOworICAgIHJl
c3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsx
XVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0g
Kz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFd
WzFdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRb
MV1bNF0gPSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVswXVsyXTsKKyAgICBy
ZXN1bHRbMV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzFdWzRdICs9IHhb
MV1bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRd
ICs9IHhbMV1bMF0gKiB5WzBdWzNdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsx
XVszXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsyXSAqIHlbMl1bM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0MngyIG11bChmbG9hdDJ4NCB4LCBmbG9hdDR4MiB5KSB7CisgICAg
ZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsyXSA9IDA7CisgICAgcmVzdWx0WzBdWzJd
ICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzFdICogeVsx
XVswXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0
WzBdWzJdICs9IHhbMF1bM10gKiB5WzNdWzBdOworICAgIHJlc3VsdFswXVsyXSA9IDA7CisgICAg
cmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFswXVsyXSArPSB4
WzBdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsyXSAqIHlbMl1bMV07
CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bM10gKiB5WzNdWzFdOworICAgIHJlc3VsdFsxXVsy
XSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMF0gKiB5WzBdWzBdOworICAgIHJlc3Vs
dFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVsy
XSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bM10gKiB5WzNdWzBdOworICAg
IHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMF0gKiB5WzBdWzFd
OworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1b
Ml0gKz0geFsxXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bM10gKiB5
WzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBtdWwoZmxvYXQyeDQgeCwg
ZmxvYXQ0eDMgeSkgeworICAgIGZsb2F0MngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bM10gPSAw
OworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMF1b
M10gKz0geFswXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMl0gKiB5
WzJdWzBdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzNdICogeVszXVswXTsKKyAgICByZXN1
bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVsxXTsKKyAg
ICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBdWzNdICs9
IHhbMF1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzNdICogeVszXVsx
XTsKKyAgICByZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICog
eVswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMl07CisgICAgcmVz
dWx0WzBdWzNdICs9IHhbMF1bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBd
WzNdICogeVszXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsxXVszXSAr
PSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAqIHlbMV1b
MF07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsx
XVszXSArPSB4WzFdWzNdICogeVszXVswXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJl
c3VsdFsxXVszXSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsx
XVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5WzJdWzFdOwor
ICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzNdICogeVszXVsxXTsKKyAgICByZXN1bHRbMV1bM10g
PSAwOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRb
MV1bM10gKz0geFsxXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0g
KiB5WzJdWzJdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzNdICogeVszXVsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDQgbXVsKGZsb2F0Mng0IHgsIGZsb2F0NHg0IHkpIHsK
KyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRb
MF1bNF0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0g
KiB5WzFdWzBdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICBy
ZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzBdWzRdID0gMDsK
KyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzRd
ICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsy
XVsxXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0
WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMl07CisgICAg
cmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFswXVs0XSArPSB4
WzBdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bMl07
CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlb
MF1bM107CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzNdOworICAgIHJlc3Vs
dFswXVs0XSArPSB4WzBdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsz
XSAqIHlbM11bM107CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0g
eFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzBd
OworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1b
NF0gKz0geFsxXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1
bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1b
MV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAg
ICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzFdWzRdID0g
MDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFd
WzRdICs9IHhbMV1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICog
eVsyXVsyXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bMl07CisgICAgcmVz
dWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bM107Cisg
ICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFsxXVs0XSAr
PSB4WzFdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11b
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIG11bChmbG9hdDN4MiB4LCBmbG9h
dDJ4MiB5KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsyXSA9IDA7Cisg
ICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVsyXSAr
PSB4WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bMl0gPSAwOworICAgIHJlc3VsdFsw
XVsyXSArPSB4WzBdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsxXSAq
IHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsx
XVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFdWzBdOwor
ICAgIHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMF0gKiB5WzBd
WzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRb
Ml1bMl0gPSAwOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzBdICogeVswXVswXTsKKyAgICBy
ZXN1bHRbMl1bMl0gKz0geFsyXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzJdWzJdID0gMDsK
KyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzJd
ICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBt
dWwoZmxvYXQzeDIgeCwgZmxvYXQyeDMgeSkgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVswXTsK
KyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzBdWzNd
ID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0
WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFswXVszXSA9IDA7CisgICAg
cmVzdWx0WzBdWzNdICs9IHhbMF1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFswXVszXSArPSB4
WzBdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsxXVsz
XSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAqIHlb
MV1bMF07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsw
XSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAg
IHJlc3VsdFsxXVszXSA9IDA7CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzJd
OworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMl1b
M10gPSAwOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzBdICogeVswXVswXTsKKyAgICByZXN1
bHRbMl1bM10gKz0geFsyXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAg
ICByZXN1bHRbMl1bM10gKz0geFsyXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzNdICs9
IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsyXVszXSA9IDA7CisgICAgcmVzdWx0WzJd
WzNdICs9IHhbMl1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzFdICog
eVsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgbXVsKGZsb2F0M3gyIHgs
IGZsb2F0Mng0IHkpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzRdID0g
MDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBd
WzRdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVz
dWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBd
WzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0XSAr
PSB4WzBdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1b
Ml07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAq
IHlbMF1bM107CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzNdOworICAgIHJl
c3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5WzBdWzBdOwor
ICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1bNF0g
PSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRb
MV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICBy
ZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzRdICs9IHhb
MV1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRd
ICs9IHhbMV1bMF0gKiB5WzBdWzNdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsx
XVszXTsKKyAgICByZXN1bHRbMl1bNF0gPSAwOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzBd
ICogeVswXVswXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsxXSAqIHlbMV1bMF07CisgICAg
cmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMV07
CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsyXVs0
XSA9IDA7CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5WzBdWzJdOworICAgIHJlc3Vs
dFsyXVs0XSArPSB4WzJdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMl1bNF0gPSAwOworICAg
IHJlc3VsdFsyXVs0XSArPSB4WzJdWzBdICogeVswXVszXTsKKyAgICByZXN1bHRbMl1bNF0gKz0g
eFsyXVsxXSAqIHlbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gyIG11bChm
bG9hdDN4MyB4LCBmbG9hdDN4MiB5KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVsyXSA9IDA7CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAg
IHJlc3VsdFswXVsyXSArPSB4WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bMl0gKz0g
eFswXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1b
Ml0gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5
WzFdWzFdOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1
bHRbMV1bMl0gPSAwOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzBdICogeVswXVswXTsKKyAg
ICByZXN1bHRbMV1bMl0gKz0geFsxXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9
IHhbMV1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFd
WzJdICs9IHhbMV1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICog
eVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVsyXSAqIHlbMl1bMV07CisgICAgcmVz
dWx0WzJdWzJdID0gMDsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVswXSAqIHlbMF1bMF07Cisg
ICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVsyXSAr
PSB4WzJdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMl1bMl0gPSAwOworICAgIHJlc3VsdFsy
XVsyXSArPSB4WzJdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsxXSAq
IHlbMV1bMV07CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMl0gKiB5WzJdWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBtdWwoZmxvYXQzeDMgeCwgZmxvYXQzeDMgeSkgewor
ICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFsw
XVszXSArPSB4WzBdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAq
IHlbMV1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMl0gKiB5WzJdWzBdOworICAgIHJl
c3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMF0gKiB5WzBdWzFdOwor
ICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMF1bM10g
Kz0geFswXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRb
MF1bM10gKz0geFswXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0g
KiB5WzFdWzJdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzJdICogeVsyXVsyXTsKKyAgICBy
ZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzBdICogeVswXVswXTsK
KyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzNd
ICs9IHhbMV1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsxXVszXSA9IDA7CisgICAgcmVzdWx0
WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzFd
ICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsyXSAqIHlbMl1bMV07CisgICAg
cmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMl07
CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVsz
XSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSAwOworICAgIHJlc3Vs
dFsyXVszXSArPSB4WzJdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsx
XSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMl0gKiB5WzJdWzBdOworICAg
IHJlc3VsdFsyXVszXSA9IDA7CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMF0gKiB5WzBdWzFd
OworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMl1b
M10gKz0geFsyXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1
bHRbMl1bM10gKz0geFsyXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1b
MV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzJdICogeVsyXVsyXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgbXVsKGZsb2F0M3gzIHgsIGZsb2F0M3g0IHkp
IHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1
bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1b
MV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAg
ICByZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzBdICogeVswXVsx
XTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBd
WzRdICs9IHhbMF1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVz
dWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBd
WzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsyXSAqIHlbMl1bMl07Cisg
ICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1b
M107CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFsw
XVs0XSArPSB4WzBdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJl
c3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsx
XVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMl0gKiB5WzJdWzBdOwor
ICAgIHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5WzBd
WzFdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRb
MV1bNF0gKz0geFsxXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICBy
ZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzRdICs9IHhb
MV1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsyXTsK
KyAgICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzBdICogeVsw
XVszXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bM107CisgICAgcmVzdWx0
WzFdWzRdICs9IHhbMV1bMl0gKiB5WzJdWzNdOworICAgIHJlc3VsdFsyXVs0XSA9IDA7CisgICAg
cmVzdWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsyXVs0XSArPSB4
WzJdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsyXSAqIHlbMl1bMF07
CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlb
MF1bMV07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJlc3Vs
dFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bNF0gPSAwOworICAg
IHJlc3VsdFsyXVs0XSArPSB4WzJdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMl1bNF0gKz0g
eFsyXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMl0gKiB5WzJdWzJd
OworICAgIHJlc3VsdFsyXVs0XSA9IDA7CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5
WzBdWzNdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzFdICogeVsxXVszXTsKKyAgICByZXN1
bHRbMl1bNF0gKz0geFsyXVsyXSAqIHlbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0M3gyIG11bChmbG9hdDN4NCB4LCBmbG9hdDR4MiB5KSB7CisgICAgZmxvYXQzeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVsyXSA9IDA7CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5
WzBdWzBdOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1
bHRbMF1bMl0gKz0geFswXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1b
M10gKiB5WzNdWzBdOworICAgIHJlc3VsdFswXVsyXSA9IDA7CisgICAgcmVzdWx0WzBdWzJdICs9
IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzFdICogeVsxXVsx
XTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzBd
WzJdICs9IHhbMF1bM10gKiB5WzNdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVz
dWx0WzFdWzJdICs9IHhbMV1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFd
WzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVsyXSAqIHlbMl1bMF07Cisg
ICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bM10gKiB5WzNdWzBdOworICAgIHJlc3VsdFsxXVsyXSA9
IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsx
XVsyXSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVsyXSAq
IHlbMl1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bM10gKiB5WzNdWzFdOworICAgIHJl
c3VsdFsyXVsyXSA9IDA7CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMF0gKiB5WzBdWzBdOwor
ICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMl1bMl0g
Kz0geFsyXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bM10gKiB5WzNd
WzBdOworICAgIHJlc3VsdFsyXVsyXSA9IDA7CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMF0g
KiB5WzBdWzFdOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzFdICogeVsxXVsxXTsKKyAgICBy
ZXN1bHRbMl1bMl0gKz0geFsyXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdICs9IHhb
Ml1bM10gKiB5WzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBtdWwoZmxv
YXQzeDQgeCwgZmxvYXQ0eDMgeSkgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVswXTsKKyAgICBy
ZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9IHhb
MF1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzNdICogeVszXVswXTsK
KyAgICByZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVsw
XVsxXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0
WzBdWzNdICs9IHhbMF1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzNd
ICogeVszXVsxXTsKKyAgICByZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4
WzBdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMl07
CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFswXVsz
XSArPSB4WzBdWzNdICogeVszXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3Vs
dFsxXVszXSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsx
XSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5WzJdWzBdOworICAg
IHJlc3VsdFsxXVszXSArPSB4WzFdWzNdICogeVszXVswXTsKKyAgICByZXN1bHRbMV1bM10gPSAw
OworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV1b
M10gKz0geFsxXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5
WzJdWzFdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzNdICogeVszXVsxXTsKKyAgICByZXN1
bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzBdICogeVswXVsyXTsKKyAg
ICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdICs9
IHhbMV1bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzNdICogeVszXVsy
XTsKKyAgICByZXN1bHRbMl1bM10gPSAwOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzBdICog
eVswXVswXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsxXSAqIHlbMV1bMF07CisgICAgcmVz
dWx0WzJdWzNdICs9IHhbMl1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJd
WzNdICogeVszXVswXTsKKyAgICByZXN1bHRbMl1bM10gPSAwOworICAgIHJlc3VsdFsyXVszXSAr
PSB4WzJdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsxXSAqIHlbMV1b
MV07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFsy
XVszXSArPSB4WzJdWzNdICogeVszXVsxXTsKKyAgICByZXN1bHRbMl1bM10gPSAwOworICAgIHJl
c3VsdFsyXVszXSArPSB4WzJdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsy
XVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMl0gKiB5WzJdWzJdOwor
ICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzNdICogeVszXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzeDQgbXVsKGZsb2F0M3g0IHgsIGZsb2F0NHg0IHkpIHsKKyAgICBmbG9hdDN4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFsw
XVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzBdOwor
ICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bNF0g
Kz0geFswXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRb
MF1bNF0gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0g
KiB5WzFdWzFdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICBy
ZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzBdWzRdID0gMDsK
KyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzRd
ICs9IHhbMF1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsy
XVsyXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0
WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bM107CisgICAg
cmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFswXVs0XSArPSB4
WzBdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bM107
CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlb
MF1bMF07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3Vs
dFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsz
XSAqIHlbM11bMF07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0g
eFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzFd
OworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1b
NF0gKz0geFsxXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1
bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1b
MV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAg
ICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzFdWzRdID0g
MDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzFd
WzRdICs9IHhbMV1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICog
eVsyXVszXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bM107CisgICAgcmVz
dWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMF07Cisg
ICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVs0XSAr
PSB4WzJdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlbM11b
MF07CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAq
IHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJl
c3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsy
XVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0g
Kz0geFsyXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFd
WzJdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRb
Ml1bNF0gKz0geFsyXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICBy
ZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzJdWzRdICs9IHhb
Ml1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVszXTsK
KyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlbM11bM107CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NHgyIG11bChmbG9hdDR4MiB4LCBmbG9hdDJ4MiB5KSB7CisgICAgZmxvYXQ0
eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsyXSA9IDA7CisgICAgcmVzdWx0WzBdWzJdICs9IHhb
MF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzFdICogeVsxXVswXTsK
KyAgICByZXN1bHRbMF1bMl0gPSAwOworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzBdICogeVsw
XVsxXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0
WzFdWzJdID0gMDsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAg
cmVzdWx0WzFdWzJdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVsyXSA9IDA7
CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVsy
XSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSAwOworICAgIHJlc3Vs
dFsyXVsyXSArPSB4WzJdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsx
XSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzJdWzJdID0gMDsKKyAgICByZXN1bHRbMl1bMl0gKz0g
eFsyXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMV0gKiB5WzFdWzFd
OworICAgIHJlc3VsdFszXVsyXSA9IDA7CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bMF0gKiB5
WzBdWzBdOworICAgIHJlc3VsdFszXVsyXSArPSB4WzNdWzFdICogeVsxXVswXTsKKyAgICByZXN1
bHRbM11bMl0gPSAwOworICAgIHJlc3VsdFszXVsyXSArPSB4WzNdWzBdICogeVswXVsxXTsKKyAg
ICByZXN1bHRbM11bMl0gKz0geFszXVsxXSAqIHlbMV1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NHgzIG11bChmbG9hdDR4MiB4LCBmbG9hdDJ4MyB5KSB7CisgICAgZmxvYXQ0eDMg
cmVzdWx0OworICAgIHJlc3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1b
MF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFdICogeVsxXVswXTsKKyAg
ICByZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVsx
XTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBd
WzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVswXSAqIHlbMF1bMl07CisgICAgcmVz
dWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsxXVszXSA9IDA7Cisg
ICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsxXVszXSAr
PSB4WzFdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsx
XVszXSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAq
IHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsx
XVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzJdOwor
ICAgIHJlc3VsdFsyXVszXSA9IDA7CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMF0gKiB5WzBd
WzBdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRb
Ml1bM10gPSAwOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzBdICogeVswXVsxXTsKKyAgICBy
ZXN1bHRbMl1bM10gKz0geFsyXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzJdWzNdID0gMDsK
KyAgICByZXN1bHRbMl1bM10gKz0geFsyXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzJdWzNd
ICs9IHhbMl1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFszXVszXSA9IDA7CisgICAgcmVzdWx0
WzNdWzNdICs9IHhbM11bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzFd
ICogeVsxXVswXTsKKyAgICByZXN1bHRbM11bM10gPSAwOworICAgIHJlc3VsdFszXVszXSArPSB4
WzNdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVsxXSAqIHlbMV1bMV07
CisgICAgcmVzdWx0WzNdWzNdID0gMDsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVswXSAqIHlb
MF1bMl07CisgICAgcmVzdWx0WzNdWzNdICs9IHhbM11bMV0gKiB5WzFdWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDR4NCBtdWwoZmxvYXQ0eDIgeCwgZmxvYXQyeDQgeSkgeworICAg
IGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0
XSArPSB4WzBdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlb
MV1bMF07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsw
XSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAg
IHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzJd
OworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMF1b
NF0gPSAwOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzBdICogeVswXVszXTsKKyAgICByZXN1
bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1bM107CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAg
ICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzRdICs9
IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFd
WzRdICs9IHhbMV1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICog
eVsxXVsxXTsKKyAgICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFd
WzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsxXSAqIHlbMV1bMl07Cisg
ICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1b
M107CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFsy
XVs0XSA9IDA7CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5WzBdWzBdOworICAgIHJl
c3VsdFsyXVs0XSArPSB4WzJdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMl1bNF0gPSAwOwor
ICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMl1bNF0g
Kz0geFsyXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRb
Ml1bNF0gKz0geFsyXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0g
KiB5WzFdWzJdOworICAgIHJlc3VsdFsyXVs0XSA9IDA7CisgICAgcmVzdWx0WzJdWzRdICs9IHhb
Ml1bMF0gKiB5WzBdWzNdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzFdICogeVsxXVszXTsK
KyAgICByZXN1bHRbM11bNF0gPSAwOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzBdICogeVsw
XVswXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0
WzNdWzRdID0gMDsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVswXSAqIHlbMF1bMV07CisgICAg
cmVzdWx0WzNdWzRdICs9IHhbM11bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFszXVs0XSA9IDA7
CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFszXVs0
XSArPSB4WzNdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbM11bNF0gPSAwOworICAgIHJlc3Vs
dFszXVs0XSArPSB4WzNdWzBdICogeVswXVszXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVsx
XSAqIHlbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIG11bChmbG9hdDR4
MyB4LCBmbG9hdDN4MiB5KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsy
XSA9IDA7CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3Vs
dFswXVsyXSArPSB4WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsy
XSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzBdWzJdID0gMDsKKyAgICByZXN1bHRbMF1bMl0gKz0g
eFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMV0gKiB5WzFdWzFd
OworICAgIHJlc3VsdFswXVsyXSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1b
Ml0gPSAwOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1
bHRbMV1bMl0gKz0geFsxXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1b
Ml0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9
IHhbMV1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVsx
XTsKKyAgICByZXN1bHRbMV1bMl0gKz0geFsxXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzJd
WzJdID0gMDsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVswXSAqIHlbMF1bMF07CisgICAgcmVz
dWx0WzJdWzJdICs9IHhbMl1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJd
WzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMl1bMl0gPSAwOworICAgIHJlc3VsdFsyXVsyXSAr
PSB4WzJdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsxXSAqIHlbMV1b
MV07CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFsz
XVsyXSA9IDA7CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bMF0gKiB5WzBdWzBdOworICAgIHJl
c3VsdFszXVsyXSArPSB4WzNdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbM11bMl0gKz0geFsz
XVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzNdWzJdID0gMDsKKyAgICByZXN1bHRbM11bMl0g
Kz0geFszXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bMV0gKiB5WzFd
WzFdOworICAgIHJlc3VsdFszXVsyXSArPSB4WzNdWzJdICogeVsyXVsxXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0eDMgbXVsKGZsb2F0NHgzIHgsIGZsb2F0M3gzIHkpIHsKKyAgICBm
bG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzNdID0gMDsKKyAgICByZXN1bHRbMF1bM10g
Kz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMV0gKiB5WzFd
WzBdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRb
MF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVsxXTsKKyAgICBy
ZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBdWzNdICs9IHhb
MF1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFswXVszXSA9IDA7CisgICAgcmVzdWx0WzBdWzNd
ICs9IHhbMF1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzFdICogeVsx
XVsyXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsyXSAqIHlbMl1bMl07CisgICAgcmVzdWx0
WzFdWzNdID0gMDsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAg
cmVzdWx0WzFdWzNdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVszXSArPSB4
WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsxXVsz
XSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAqIHlb
MV1bMV07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5WzJdWzFdOworICAgIHJlc3Vs
dFsxXVszXSA9IDA7CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMF0gKiB5WzBdWzJdOworICAg
IHJlc3VsdFsxXVszXSArPSB4WzFdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gKz0g
eFsxXVsyXSAqIHlbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gMDsKKyAgICByZXN1bHRbMl1b
M10gKz0geFsyXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMV0gKiB5
WzFdWzBdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzJdICogeVsyXVswXTsKKyAgICByZXN1
bHRbMl1bM10gPSAwOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzBdICogeVswXVsxXTsKKyAg
ICByZXN1bHRbMl1bM10gKz0geFsyXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzJdWzNdICs9
IHhbMl1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFsyXVszXSA9IDA7CisgICAgcmVzdWx0WzJd
WzNdICs9IHhbMl1bMF0gKiB5WzBdWzJdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzFdICog
eVsxXVsyXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsyXSAqIHlbMl1bMl07CisgICAgcmVz
dWx0WzNdWzNdID0gMDsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVswXSAqIHlbMF1bMF07Cisg
ICAgcmVzdWx0WzNdWzNdICs9IHhbM11bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFszXVszXSAr
PSB4WzNdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbM11bM10gPSAwOworICAgIHJlc3VsdFsz
XVszXSArPSB4WzNdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVsxXSAq
IHlbMV1bMV07CisgICAgcmVzdWx0WzNdWzNdICs9IHhbM11bMl0gKiB5WzJdWzFdOworICAgIHJl
c3VsdFszXVszXSA9IDA7CisgICAgcmVzdWx0WzNdWzNdICs9IHhbM11bMF0gKiB5WzBdWzJdOwor
ICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbM11bM10g
Kz0geFszXVsyXSAqIHlbMl1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHg0IG11
bChmbG9hdDR4MyB4LCBmbG9hdDN4NCB5KSB7CisgICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJl
c3VsdFswXVs0XSA9IDA7CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzBdOwor
ICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bNF0g
Kz0geFswXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRb
MF1bNF0gKz0geFswXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0g
KiB5WzFdWzFdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICBy
ZXN1bHRbMF1bNF0gPSAwOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzBdICogeVswXVsyXTsK
KyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzBdWzRd
ICs9IHhbMF1bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFswXVs0XSA9IDA7CisgICAgcmVzdWx0
WzBdWzRdICs9IHhbMF1bMF0gKiB5WzBdWzNdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzFd
ICogeVsxXVszXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsyXSAqIHlbMl1bM107CisgICAg
cmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMF07
CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVs0
XSArPSB4WzFdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbMV1bNF0gPSAwOworICAgIHJlc3Vs
dFsxXVs0XSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVsx
XSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMl0gKiB5WzJdWzFdOworICAg
IHJlc3VsdFsxXVs0XSA9IDA7CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMF0gKiB5WzBdWzJd
OworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzFdICogeVsxXVsyXTsKKyAgICByZXN1bHRbMV1b
NF0gKz0geFsxXVsyXSAqIHlbMl1bMl07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1
bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1b
MV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVszXTsKKyAg
ICByZXN1bHRbMl1bNF0gPSAwOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzBdICogeVswXVsw
XTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzJd
WzRdICs9IHhbMl1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsyXVs0XSA9IDA7CisgICAgcmVz
dWx0WzJdWzRdICs9IHhbMl1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJd
WzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsyXSAqIHlbMl1bMV07Cisg
ICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1b
Ml07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsy
XVs0XSArPSB4WzJdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMl1bNF0gPSAwOworICAgIHJl
c3VsdFsyXVs0XSArPSB4WzJdWzBdICogeVswXVszXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsy
XVsxXSAqIHlbMV1bM107CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMl0gKiB5WzJdWzNdOwor
ICAgIHJlc3VsdFszXVs0XSA9IDA7CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11bMF0gKiB5WzBd
WzBdOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRb
M11bNF0gKz0geFszXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzNdWzRdID0gMDsKKyAgICBy
ZXN1bHRbM11bNF0gKz0geFszXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzNdWzRdICs9IHhb
M11bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzJdICogeVsyXVsxXTsK
KyAgICByZXN1bHRbM11bNF0gPSAwOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzBdICogeVsw
XVsyXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0
WzNdWzRdICs9IHhbM11bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFszXVs0XSA9IDA7CisgICAg
cmVzdWx0WzNdWzRdICs9IHhbM11bMF0gKiB5WzBdWzNdOworICAgIHJlc3VsdFszXVs0XSArPSB4
WzNdWzFdICogeVsxXVszXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVsyXSAqIHlbMl1bM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIG11bChmbG9hdDR4NCB4LCBmbG9hdDR4
MiB5KSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsyXSA9IDA7CisgICAg
cmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFswXVsyXSArPSB4
WzBdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsyXSAqIHlbMl1bMF07
CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bM10gKiB5WzNdWzBdOworICAgIHJlc3VsdFswXVsy
XSA9IDA7CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bMF0gKiB5WzBdWzFdOworICAgIHJlc3Vs
dFswXVsyXSArPSB4WzBdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gKz0geFswXVsy
XSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzBdWzJdICs9IHhbMF1bM10gKiB5WzNdWzFdOworICAg
IHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bMF0gKiB5WzBdWzBd
OworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbMV1b
Ml0gKz0geFsxXVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1bM10gKiB5
WzNdWzBdOworICAgIHJlc3VsdFsxXVsyXSA9IDA7CisgICAgcmVzdWx0WzFdWzJdICs9IHhbMV1b
MF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsxXVsyXSArPSB4WzFdWzFdICogeVsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gKz0geFsxXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzFdWzJdICs9
IHhbMV1bM10gKiB5WzNdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IDA7CisgICAgcmVzdWx0WzJd
WzJdICs9IHhbMl1bMF0gKiB5WzBdWzBdOworICAgIHJlc3VsdFsyXVsyXSArPSB4WzJdWzFdICog
eVsxXVswXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsyXSAqIHlbMl1bMF07CisgICAgcmVz
dWx0WzJdWzJdICs9IHhbMl1bM10gKiB5WzNdWzBdOworICAgIHJlc3VsdFsyXVsyXSA9IDA7Cisg
ICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bMF0gKiB5WzBdWzFdOworICAgIHJlc3VsdFsyXVsyXSAr
PSB4WzJdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gKz0geFsyXVsyXSAqIHlbMl1b
MV07CisgICAgcmVzdWx0WzJdWzJdICs9IHhbMl1bM10gKiB5WzNdWzFdOworICAgIHJlc3VsdFsz
XVsyXSA9IDA7CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bMF0gKiB5WzBdWzBdOworICAgIHJl
c3VsdFszXVsyXSArPSB4WzNdWzFdICogeVsxXVswXTsKKyAgICByZXN1bHRbM11bMl0gKz0geFsz
XVsyXSAqIHlbMl1bMF07CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bM10gKiB5WzNdWzBdOwor
ICAgIHJlc3VsdFszXVsyXSA9IDA7CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bMF0gKiB5WzBd
WzFdOworICAgIHJlc3VsdFszXVsyXSArPSB4WzNdWzFdICogeVsxXVsxXTsKKyAgICByZXN1bHRb
M11bMl0gKz0geFszXVsyXSAqIHlbMl1bMV07CisgICAgcmVzdWx0WzNdWzJdICs9IHhbM11bM10g
KiB5WzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MyBtdWwoZmxvYXQ0eDQg
eCwgZmxvYXQ0eDMgeSkgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bM10g
PSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRb
MF1bM10gKz0geFswXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzBdWzNdICs9IHhbMF1bMl0g
KiB5WzJdWzBdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzNdICogeVszXVswXTsKKyAgICBy
ZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBdICogeVswXVsxXTsK
KyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzBdWzNd
ICs9IHhbMF1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzNdICogeVsz
XVsxXTsKKyAgICByZXN1bHRbMF1bM10gPSAwOworICAgIHJlc3VsdFswXVszXSArPSB4WzBdWzBd
ICogeVswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gKz0geFswXVsxXSAqIHlbMV1bMl07CisgICAg
cmVzdWx0WzBdWzNdICs9IHhbMF1bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFswXVszXSArPSB4
WzBdWzNdICogeVszXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAgIHJlc3VsdFsxXVsz
XSArPSB4WzFdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbMV1bM10gKz0geFsxXVsxXSAqIHlb
MV1bMF07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5WzJdWzBdOworICAgIHJlc3Vs
dFsxXVszXSArPSB4WzFdWzNdICogeVszXVswXTsKKyAgICByZXN1bHRbMV1bM10gPSAwOworICAg
IHJlc3VsdFsxXVszXSArPSB4WzFdWzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMV1bM10gKz0g
eFsxXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1bMl0gKiB5WzJdWzFd
OworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzNdICogeVszXVsxXTsKKyAgICByZXN1bHRbMV1b
M10gPSAwOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzBdICogeVswXVsyXTsKKyAgICByZXN1
bHRbMV1bM10gKz0geFsxXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdICs9IHhbMV1b
Ml0gKiB5WzJdWzJdOworICAgIHJlc3VsdFsxXVszXSArPSB4WzFdWzNdICogeVszXVsyXTsKKyAg
ICByZXN1bHRbMl1bM10gPSAwOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzBdICogeVswXVsw
XTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzJd
WzNdICs9IHhbMl1bMl0gKiB5WzJdWzBdOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJdWzNdICog
eVszXVswXTsKKyAgICByZXN1bHRbMl1bM10gPSAwOworICAgIHJlc3VsdFsyXVszXSArPSB4WzJd
WzBdICogeVswXVsxXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsxXSAqIHlbMV1bMV07Cisg
ICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFsyXVszXSAr
PSB4WzJdWzNdICogeVszXVsxXTsKKyAgICByZXN1bHRbMl1bM10gPSAwOworICAgIHJlc3VsdFsy
XVszXSArPSB4WzJdWzBdICogeVswXVsyXTsKKyAgICByZXN1bHRbMl1bM10gKz0geFsyXVsxXSAq
IHlbMV1bMl07CisgICAgcmVzdWx0WzJdWzNdICs9IHhbMl1bMl0gKiB5WzJdWzJdOworICAgIHJl
c3VsdFsyXVszXSArPSB4WzJdWzNdICogeVszXVsyXTsKKyAgICByZXN1bHRbM11bM10gPSAwOwor
ICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzBdICogeVswXVswXTsKKyAgICByZXN1bHRbM11bM10g
Kz0geFszXVsxXSAqIHlbMV1bMF07CisgICAgcmVzdWx0WzNdWzNdICs9IHhbM11bMl0gKiB5WzJd
WzBdOworICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzNdICogeVszXVswXTsKKyAgICByZXN1bHRb
M11bM10gPSAwOworICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzBdICogeVswXVsxXTsKKyAgICBy
ZXN1bHRbM11bM10gKz0geFszXVsxXSAqIHlbMV1bMV07CisgICAgcmVzdWx0WzNdWzNdICs9IHhb
M11bMl0gKiB5WzJdWzFdOworICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzNdICogeVszXVsxXTsK
KyAgICByZXN1bHRbM11bM10gPSAwOworICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzBdICogeVsw
XVsyXTsKKyAgICByZXN1bHRbM11bM10gKz0geFszXVsxXSAqIHlbMV1bMl07CisgICAgcmVzdWx0
WzNdWzNdICs9IHhbM11bMl0gKiB5WzJdWzJdOworICAgIHJlc3VsdFszXVszXSArPSB4WzNdWzNd
ICogeVszXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgbXVsKGZsb2F0NHg0
IHgsIGZsb2F0NHg0IHkpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzRd
ID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0
WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJd
ICogeVsyXVswXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bMF07CisgICAg
cmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVswXSAqIHlbMF1bMV07
CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFswXVs0
XSArPSB4WzBdWzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVszXSAqIHlb
M11bMV07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1bNF0gKz0geFswXVsw
XSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5WzFdWzJdOworICAg
IHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMF1bNF0gKz0g
eFswXVszXSAqIHlbM11bMl07CisgICAgcmVzdWx0WzBdWzRdID0gMDsKKyAgICByZXN1bHRbMF1b
NF0gKz0geFswXVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzBdWzRdICs9IHhbMF1bMV0gKiB5
WzFdWzNdOworICAgIHJlc3VsdFswXVs0XSArPSB4WzBdWzJdICogeVsyXVszXTsKKyAgICByZXN1
bHRbMF1bNF0gKz0geFswXVszXSAqIHlbM11bM107CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAg
ICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzFdWzRdICs9
IHhbMV1bMV0gKiB5WzFdWzBdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVsw
XTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzFd
WzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1bMV07CisgICAgcmVz
dWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsxXVs0XSArPSB4WzFd
WzJdICogeVsyXVsxXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAqIHlbM11bMV07Cisg
ICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVswXSAqIHlbMF1b
Ml07CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsx
XVs0XSArPSB4WzFdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsxXVszXSAq
IHlbM11bMl07CisgICAgcmVzdWx0WzFdWzRdID0gMDsKKyAgICByZXN1bHRbMV1bNF0gKz0geFsx
XVswXSAqIHlbMF1bM107CisgICAgcmVzdWx0WzFdWzRdICs9IHhbMV1bMV0gKiB5WzFdWzNdOwor
ICAgIHJlc3VsdFsxXVs0XSArPSB4WzFdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMV1bNF0g
Kz0geFsxXVszXSAqIHlbM11bM107CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRb
Ml1bNF0gKz0geFsyXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0g
KiB5WzFdWzBdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVswXTsKKyAgICBy
ZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzJdWzRdID0gMDsK
KyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzJdWzRd
ICs9IHhbMl1bMV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFsyXVs0XSArPSB4WzJdWzJdICogeVsy
XVsxXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0
WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlbMF1bMl07CisgICAg
cmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFsyXVs0XSArPSB4
WzJdWzJdICogeVsyXVsyXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVszXSAqIHlbM11bMl07
CisgICAgcmVzdWx0WzJdWzRdID0gMDsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVswXSAqIHlb
MF1bM107CisgICAgcmVzdWx0WzJdWzRdICs9IHhbMl1bMV0gKiB5WzFdWzNdOworICAgIHJlc3Vs
dFsyXVs0XSArPSB4WzJdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbMl1bNF0gKz0geFsyXVsz
XSAqIHlbM11bM107CisgICAgcmVzdWx0WzNdWzRdID0gMDsKKyAgICByZXN1bHRbM11bNF0gKz0g
eFszXVswXSAqIHlbMF1bMF07CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11bMV0gKiB5WzFdWzBd
OworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzJdICogeVsyXVswXTsKKyAgICByZXN1bHRbM11b
NF0gKz0geFszXVszXSAqIHlbM11bMF07CisgICAgcmVzdWx0WzNdWzRdID0gMDsKKyAgICByZXN1
bHRbM11bNF0gKz0geFszXVswXSAqIHlbMF1bMV07CisgICAgcmVzdWx0WzNdWzRdICs9IHhbM11b
MV0gKiB5WzFdWzFdOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzJdICogeVsyXVsxXTsKKyAg
ICByZXN1bHRbM11bNF0gKz0geFszXVszXSAqIHlbM11bMV07CisgICAgcmVzdWx0WzNdWzRdID0g
MDsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVswXSAqIHlbMF1bMl07CisgICAgcmVzdWx0WzNd
WzRdICs9IHhbM11bMV0gKiB5WzFdWzJdOworICAgIHJlc3VsdFszXVs0XSArPSB4WzNdWzJdICog
eVsyXVsyXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVszXSAqIHlbM11bMl07CisgICAgcmVz
dWx0WzNdWzRdID0gMDsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVswXSAqIHlbMF1bM107Cisg
ICAgcmVzdWx0WzNdWzRdICs9IHhbM11bMV0gKiB5WzFdWzNdOworICAgIHJlc3VsdFszXVs0XSAr
PSB4WzNdWzJdICogeVsyXVszXTsKKyAgICByZXN1bHRbM11bNF0gKz0geFszXVszXSAqIHlbM11b
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworCitgOworCisvLyBGSVhNRTogT25jZSB0aGUg
c3RhbmRhcmQgbGlicmFyeSBoYXMgYmVlbiByZXBsYWNlZCB3aXRoIGEgbmV3IHZlcnNpb24sIHRo
aXMgY29tbWVudHMgc2hvdWxkIGJlIHJlbW92ZWQuCisvLyBUaGlzIGxpc3QgaXMgdXNlZCB0byBy
ZXN0cmljdCB0aGUgYXZhaWxhYmlsaXR5IG9mIHZlY3RvciB0eXBlcyBhdmFpbGFibGUgaW4gdGhl
IGxhbmdhdWdlLgorLy8gUGVybWlzc2libGUgdmVjdG9yIGVsZW1lbnQgdHlwZXMgbXVzdCBhcHBl
YXIgaW4gdGhpcyBsaXN0IGFuZCBpbiB0aGUgc3RhbmRhcmQgbGlicmFyeQorY29uc3QgVmVjdG9y
RWxlbWVudFR5cGVzID0gWyAiYm9vbCIsICJ1Y2hhciIsICJjaGFyIiwgInVzaG9ydCIsICJzaG9y
dCIsICJ1aW50IiwgImludCIsICJoYWxmIiwgImZsb2F0IiBdOworY29uc3QgVmVjdG9yRWxlbWVu
dFNpemVzID0gWyAyLCAzLCA0IF07CisKK2Z1bmN0aW9uIGFsbFZlY3RvclR5cGVOYW1lcygpCit7
CisgICAgY29uc3QgbmFtZXMgPSBbXTsKKyAgICBmb3IgKGxldCBlbGVtZW50VHlwZSBvZiBWZWN0
b3JFbGVtZW50VHlwZXMpIHsKKyAgICAgICAgZm9yIChsZXQgc2l6ZSBvZiBWZWN0b3JFbGVtZW50
U2l6ZXMpCisgICAgICAgICAgICBuYW1lcy5wdXNoKGAke2VsZW1lbnRUeXBlfSR7c2l6ZX1gKTsK
KyAgICB9CisgICAgcmV0dXJuIG5hbWVzOworfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvU3dpenpsZU9wLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvU3dpenpsZU9wLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyNTk5OGVmNzlk
OThhNTI4ODIwOTg3NWQzNDZjZjU1MDllOWJhNzI2Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N3aXp6
bGVPcC5qcworKysgL2Rldi9udWxsCkBAIC0xLDEwNyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0
IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ugc3RyaWN0IjsKLQotY2xhc3MgU3dpenps
ZU9wIHsKLSAgICBjb25zdHJ1Y3RvcihiYXNlVHlwZU5hbWUsIG91dFNpemUsIGNvbXBvbmVudHMs
IGluU2l6ZSkKLSAgICB7Ci0gICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJhc2VUeXBlTmFt
ZTsKLSAgICAgICAgdGhpcy5fb3V0U2l6ZSA9IG91dFNpemU7Ci0gICAgICAgIHRoaXMuX2NvbXBv
bmVudHMgPSBjb21wb25lbnRzLnNsaWNlKCk7IC8vIFNoYWxsb3cgY2xvbmUKLSAgICAgICAgdGhp
cy5faW5TaXplID0gaW5TaXplOwotICAgIH0KLQotICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7IHJl
dHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KLSAgICBnZXQgb3V0U2l6ZSgpIHsgcmV0dXJuIHRo
aXMuX291dFNpemU7IH0KLSAgICBnZXQgY29tcG9uZW50cygpIHsgcmV0dXJuIHRoaXMuX2NvbXBv
bmVudHM7IH0KLSAgICBnZXQgaW5TaXplKCkgeyByZXR1cm4gdGhpcy5faW5TaXplOyB9Ci0KLSAg
ICB0b1N0cmluZygpCi0gICAgewotICAgICAgICByZXR1cm4gYG5hdGl2ZSAke3RoaXMuYmFzZVR5
cGVOYW1lfSR7dGhpcy5vdXRTaXplfSBvcGVyYXRvci4ke3RoaXMuY29tcG9uZW50cy5qb2luKCIi
KX0oJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuaW5TaXplfSB2KWA7Ci0gICAgfQotCi0gICAg
c3RhdGljIGludFRvU3RyaW5nKHgpCi0gICAgewotICAgICAgICBzd2l0Y2ggKHgpIHsKLSAgICAg
ICAgY2FzZSAwOgotICAgICAgICAgICAgcmV0dXJuICJ4IjsKLSAgICAgICAgY2FzZSAxOgotICAg
ICAgICAgICAgcmV0dXJuICJ5IjsKLSAgICAgICAgY2FzZSAyOgotICAgICAgICAgICAgcmV0dXJu
ICJ6IjsKLSAgICAgICAgY2FzZSAzOgotICAgICAgICAgICAgcmV0dXJuICJ3IjsKLSAgICAgICAg
ZGVmYXVsdDoKLSAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiQ291bGQgbm90IGdlbmVyYXRl
IHN0YW5kYXJkIGxpYnJhcnkuIik7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBzdGF0aWMgZnVu
Y3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fZnVuY3Rpb25zKSB7Ci0gICAgICAg
ICAgICAvLyBXZSBjYW4ndCBkaXJlY3RseSB1c2UgdGhpcy5fZnVuY3Rpb25zIGluIF9nZW5lcmF0
ZVN3aXp6bGVzLgotICAgICAgICAgICAgY29uc3QgZnVuY3Rpb25zID0gW107Ci0KLSAgICAgICAg
ICAgIGZ1bmN0aW9uIF9nZW5lcmF0ZVN3aXp6bGUoYmFzZVR5cGVOYW1lLCBtYXhEZXB0aCwgbWF4
SXRlbXMsIGFycmF5KSB7Ci0gICAgICAgICAgICAgICAgaWYgKCFhcnJheSkKLSAgICAgICAgICAg
ICAgICAgICAgYXJyYXkgPSBbXTsKLSAgICAgICAgICAgICAgICBpZiAoYXJyYXkubGVuZ3RoID09
IG1heERlcHRoKSB7Ci0gICAgICAgICAgICAgICAgICAgIGZ1bmN0aW9ucy5wdXNoKG5ldyBTd2l6
emxlT3AoYmFzZVR5cGVOYW1lLCBhcnJheS5sZW5ndGgsIGFycmF5LCBtYXhJdGVtcykpOwotICAg
ICAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAg
ICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbWF4SXRlbXM7ICsraSkgewotICAgICAgICAgICAgICAg
ICAgICBhcnJheS5wdXNoKFN3aXp6bGVPcC5pbnRUb1N0cmluZyhpKSk7Ci0gICAgICAgICAgICAg
ICAgICAgIF9nZW5lcmF0ZVN3aXp6bGUoYmFzZVR5cGVOYW1lLCBtYXhEZXB0aCwgbWF4SXRlbXMs
IGFycmF5KTsKLSAgICAgICAgICAgICAgICAgICAgYXJyYXkucG9wKCk7Ci0gICAgICAgICAgICAg
ICAgfQotICAgICAgICAgICAgfTsKLQotICAgICAgICAgICAgZm9yIChsZXQgdHlwZU5hbWUgb2Yg
VmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0gICAgICAgICAgICAgICAgZm9yIChsZXQgbWF4RGVwdGgg
b2YgVmVjdG9yRWxlbWVudFNpemVzKSB7Ci0gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IG1h
eEl0ZW1zID0gMjsgbWF4SXRlbXMgPD0gNDsgbWF4SXRlbXMrKykKLSAgICAgICAgICAgICAgICAg
ICAgICAgIF9nZW5lcmF0ZVN3aXp6bGUodHlwZU5hbWUsIG1heERlcHRoLCBtYXhJdGVtcyk7Ci0g
ICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICB0aGlzLl9mdW5j
dGlvbnMgPSBmdW5jdGlvbnM7Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIHRoaXMuX2Z1bmN0
aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCi0gICAg
ewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2ZWNdLCBub2RlKSA9PiB7Ci0gICAg
ICAgICAgICBjb25zdCBvdXRwdXRCdWZmZXIgPSBuZXcgRUJ1ZmZlcih0aGlzLm91dFNpemUpOwot
ICAgICAgICAgICAgY29uc3QgcmVhZEluZGljZXMgPSB7ICd4JzogMCwgJ3knOiAxLCAneic6IDIs
ICd3JzogMyB9OwotICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLm91dFNpemU7
IGkrKykKLSAgICAgICAgICAgICAgICBvdXRwdXRCdWZmZXIuc2V0KGksIHZlYy5nZXQocmVhZElu
ZGljZXNbdGhpcy5jb21wb25lbnRzW2ldXSkpOwotCi0KLSAgICAgICAgICAgIHJldHVybiBuZXcg
RVB0cihvdXRwdXRCdWZmZXIsIDApOwotICAgICAgICB9OwotICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uRGF0YSA9IHRoaXM7Ci0gICAgfQotfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVEZWZh
dWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1N5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5qcwppbmRleCAzYTNmNzY3Mzg2
N2I5YWFiMDEzMjIxODAzNTY4NzM4YzE2M2E1NjdlLi5kYzUwNjUzOGQxYzZjNzEwOWIxYWQxZWNi
YTNjZWMyNzhkMGY3YjVjIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9TeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanMKKysrIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9y
LmpzCkBAIC01MSw2ICs1MSwxMiBAQCBmdW5jdGlvbiBzeW50aGVzaXplRGVmYXVsdENvbnN0cnVj
dG9yT3BlcmF0b3IocHJvZ3JhbSkKICAgICAgICAgICAgIHR5cGVzLmFkZChub2RlKTsKICAgICAg
ICAgICAgIHN1cGVyLnZpc2l0VmVjdG9yVHlwZShub2RlKTsKICAgICAgICAgfQorCisgICAgICAg
IHZpc2l0TWF0cml4VHlwZShub2RlKQorICAgICAgICB7CisgICAgICAgICAgICB0eXBlcy5hZGQo
bm9kZSk7CisgICAgICAgICAgICBzdXBlci52aXNpdE1hdHJpeFR5cGUobm9kZSk7CisgICAgICAg
IH0KICAgICB9CiAKICAgICBwcm9ncmFtLnZpc2l0KG5ldyBGaW5kQWxsVHlwZXMoKSk7CmRpZmYg
LS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplT3BlcmF0b3JC
b29sLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3ludGhlc2l6ZU9wZXJhdG9y
Qm9vbC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjk1ZmUxMzc1M2QwYTI2NDNi
MDk1YjUzNGIxMTkyMTdmNjI1MzhiMy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXplT3Bl
cmF0b3JCb29sLmpzCisrKyAvZGV2L251bGwKQEAgLTEsMzcgKzAsMCBAQAotLyoKLSAqIENvcHly
aWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBB
TkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0g
KiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKLSAqLwotInVzZSBzdHJpY3QiOwotCi1mdW5jdGlv
biBzeW50aGVzaXplT3BlcmF0b3JCb29sKHByb2dyYW0pCi17Ci0gICAgZm9yIChsZXQgdHlwZSBv
ZiBwcm9ncmFtLnR5cGVzLnZhbHVlcygpKSB7Ci0gICAgICAgIGlmICghKHR5cGUgaW5zdGFuY2Vv
ZiBTdHJ1Y3RUeXBlKSAmJiAhKHR5cGUgaW5zdGFuY2VvZiBFbnVtVHlwZSkpCi0gICAgICAgICAg
ICBjb250aW51ZTsKLSAgICAgICAgY29uc3QgZnVuYyA9IG5ldyBOYXRpdmVGdW5jKHR5cGUub3Jp
Z2luLCAib3BlcmF0b3IgY2FzdCIsIFR5cGVSZWYud3JhcChwcm9ncmFtLnR5cGVzLmdldCgiYm9v
bCIpKSwgWyBuZXcgRnVuY1BhcmFtZXRlcih0eXBlLm9yaWdpbiwgbnVsbCwgVHlwZVJlZi53cmFw
KHR5cGUpKSBdLCB0cnVlLCBudWxsKTsKLSAgICAgICAgY29uc3Qgb3BlcmF0b3JCb29sID0gbmV3
IE9wZXJhdG9yQm9vbCh0eXBlLm5hbWUpOwotICAgICAgICBvcGVyYXRvckJvb2wuaW5zdGFudGlh
dGVJbXBsZW1lbnRhdGlvbihmdW5jKTsKLSAgICAgICAgcHJvZ3JhbS5hZGQoZnVuYyk7Ci0gICAg
fQotfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5odG1s
IGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5odG1sCmluZGV4IDdkMjZkMjYw
N2E5NWY5YmY2NGRmMWJjYTkxNjU4ZjJlNzQ4YzA0M2QuLjYwN2E2OTUzMjUzZGE3MjdiMWRlMzc2
NzhlYzM4OGI0ZmEyNDA0MDUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL1Rlc3QuaHRtbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0Lmh0
bWwKQEAgLTExLDcgKzExLDYgQEAKIDxzY3JpcHQgc3JjPSJDcmVhdGVMaXRlcmFsLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJDcmVhdGVMaXRlcmFsVHlwZS5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0iUHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQg
c3JjPSJTd2l6emxlT3AuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik5hdGl2ZVR5cGUuanMi
Pjwvc2NyaXB0PgogCiA8c2NyaXB0IHNyYz0iQWRkcmVzc1NwYWNlLmpzIj48L3NjcmlwdD4KQEAg
LTIzLDEyICsyMiwxMCBAQAogPHNjcmlwdCBzcmM9IkJsb2NrLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJCb29sTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQnJlYWsuanMi
Pjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuanMiPjwv
c2NyaXB0PgorPHNjcmlwdCBzcmM9IkJ1aWx0aW5NYXRyaXhHZXR0ZXIuanMiPjwvc2NyaXB0Pgor
PHNjcmlwdCBzcmM9IkJ1aWx0aW5NYXRyaXhTZXR0ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBz
cmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkJ1aWx0
aW5WZWN0b3JTZXR0ZXIuanMiPjwvc2NyaXB0PgotPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JJ
bmRleEdldHRlci5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4
U2V0dGVyLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9yRXF1YWxpdHlP
cGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQ2FsbEV4cHJlc3Npb24uanMiPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9IkNhbGxGdW5jdGlvbi5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iQ2hlY2suanMiPjwvc2NyaXB0PgpAQCAtOTAsNiArODcsNyBAQAogPHNjcmlwdCBzcmM9
Ikxvb3BDaGVja2VyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJNYWtlQXJyYXlSZWZFeHBy
ZXNzaW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJNYWtlUHRyRXhwcmVzc2lvbi5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iTWF0cml4VHlwZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz0iTmFtZUNvbnRleHQuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik5hbWVGaW5kZXIu
anMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik5hbWVSZXNvbHZlci5qcyI+PC9zY3JpcHQ+CkBA
IC05Nyw5ICs5NSw4IEBACiA8c2NyaXB0IHNyYz0iTm9ybWFsVXNlUHJvcGVydHlSZXNvbHZlci5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iTnVsbExpdGVyYWwuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9Ik51bGxUeXBlLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJPcGVyYXRvckFu
ZGVySW5kZXguanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQW5kZXJJbmRleGVy
LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFycmF5UmVmTGVuZ3RoLmpzIj48
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJPcGVyYXRvckJvb2wuanMiPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9Ik9yaWdpbktpbmQuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik92ZXJsb2FkUmVz
b2x1dGlvbkZhaWx1cmUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlBhcnNlLmpzIj48L3Nj
cmlwdD4KQEAgLTEyNyw3ICsxMjQsNiBAQAogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVBcnJheU9w
ZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplRW51bUZ1
bmN0aW9ucy5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZVN0cnVjdEFjY2Vz
c29ycy5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUNvcHlDb25zdHJ1Y3Rvck9wZXJh
dG9yLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplRGVmYXVsdENvbnN0cnVj
dG9yT3BlcmF0b3IuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlRlcm5hcnlFeHByZXNzaW9u
LmpzIj48L3NjcmlwdD4KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1Rlc3QuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCmluZGV4IDFk
MGZhOWZjMmIxMTM5YjI5MTQ0YWNjODFkMDNkZTI2NmNhYjk2MDkuLjcxZTc5MThjYTM4OWE4MzFj
MzNjMDdjNDUzM2JjZDU3YWJiY2RhZTAgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL1Rlc3QuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVz
dC5qcwpAQCAtMjIxNSw0MSArMjIxNSw2IEBAIHRlc3RzLm9wZXJhdG9yQm9vbCA9IGZ1bmN0aW9u
KCkKIAogICAgICAgICBib29sIGJvb2xGcm9tRmxvYXRGYWxzZSgpIHsgcmV0dXJuIGJvb2woZmxv
YXQoMCkpOyB9CiAgICAgICAgIGJvb2wgYm9vbEZyb21GbG9hdFRydWUoKSB7IHJldHVybiBib29s
KGZsb2F0KDEpKTsgfQotCi0gICAgICAgIGJvb2wgYm9vbEZyb21JbnQyRmFsc2UoKSB7IHJldHVy
biBib29sKGludDIoMCwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21JbnQyVHJ1ZTEoKSB7
IHJldHVybiBib29sKGludDIoMSwgMCkpOyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21JbnQyVHJ1
ZTIoKSB7IHJldHVybiBib29sKGludDIoMCwgMSkpOyB9Ci0KLSAgICAgICAgYm9vbCBib29sRnJv
bUZsb2F0M0ZhbHNlKCkgeyByZXR1cm4gYm9vbChmbG9hdDMoMCwgMCwgMCkpOyB9Ci0gICAgICAg
IGJvb2wgYm9vbEZyb21GbG9hdDNUcnVlMSgpIHsgcmV0dXJuIGJvb2woZmxvYXQzKDEsIDAsIDAp
KTsgfQotICAgICAgICBib29sIGJvb2xGcm9tRmxvYXQzVHJ1ZTIoKSB7IHJldHVybiBib29sKGZs
b2F0MygwLCAxLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbUZsb2F0M1RydWUzKCkgeyBy
ZXR1cm4gYm9vbChmbG9hdDMoMCwgMCwgMSkpOyB9Ci0KLSAgICAgICAgYm9vbCBib29sRnJvbVVp
bnQ0RmFsc2UoKSB7IHJldHVybiBib29sKHVpbnQ0KDAsIDAsIDAsIDApKTsgfQotICAgICAgICBi
b29sIGJvb2xGcm9tVWludDRUcnVlMSgpIHsgcmV0dXJuIGJvb2wodWludDQoMSwgMCwgMCwgMCkp
OyB9Ci0gICAgICAgIGJvb2wgYm9vbEZyb21VaW50NFRydWUyKCkgeyByZXR1cm4gYm9vbCh1aW50
NCgwLCAxLCAwLCAwKSk7IH0KLSAgICAgICAgYm9vbCBib29sRnJvbVVpbnQ0VHJ1ZTMoKSB7IHJl
dHVybiBib29sKHVpbnQ0KDAsIDAsIDEsIDApKTsgfQotICAgICAgICBib29sIGJvb2xGcm9tVWlu
dDRUcnVlNCgpIHsgcmV0dXJuIGJvb2wodWludDQoMCwgMCwgMCwgMSkpOyB9Ci0KLSAgICAgICAg
c3RydWN0IFggeyBpbnQgeDsgfQotCi0gICAgICAgIGJvb2wgYm9vbEZyb21TdHJ1Y3RGYWxzZSgp
Ci0gICAgICAgIHsKLSAgICAgICAgICAgIFggeDsKLSAgICAgICAgICAgIHJldHVybiBib29sKHgp
OwotICAgICAgICB9Ci0KLSAgICAgICAgYm9vbCBib29sRnJvbVN0cnVjdFRydWUoKQotICAgICAg
ICB7Ci0gICAgICAgICAgICBYIHg7Ci0gICAgICAgICAgICB4LnggPSAxOwotICAgICAgICAgICAg
cmV0dXJuIGJvb2woeCk7Ci0gICAgICAgIH0KLQotICAgICAgICBlbnVtIFkgeyBBLCBCIH0KLQot
ICAgICAgICBib29sIGJvb2xGcm9tRW51bUZhbHNlKCkgeyByZXR1cm4gYm9vbChZLkEpOyB9Ci0g
ICAgICAgIGJvb2wgYm9vbEZyb21FbnVtVHJ1ZSgpIHsgcmV0dXJuIGJvb2woWS5CKTsgfQogICAg
IGApOwogCiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9v
bEZyb21VY2hhckZhbHNlIiwgW10pLCBmYWxzZSk7CkBAIC0yMjYzLDI3ICsyMjI4LDYgQEAgdGVz
dHMub3BlcmF0b3JCb29sID0gZnVuY3Rpb24oKQogCiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNh
bGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdEZhbHNlIiwgW10pLCBmYWxzZSk7CiAg
ICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9h
dFRydWUiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlv
bihwcm9ncmFtLCAiYm9vbEZyb21JbnQyRmFsc2UiLCBbXSksIGZhbHNlKTsKLSAgICBjaGVja0Jv
b2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUludDJUcnVlMSIsIFtd
KSwgdHJ1ZSk7Ci0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAi
Ym9vbEZyb21JbnQyVHJ1ZTIiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0s
IGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21GbG9hdDNGYWxzZSIsIFtdKSwgZmFsc2Up
OwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9t
RmxvYXQzVHJ1ZTEiLCBbXSksIHRydWUpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVu
Y3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tRmxvYXQzVHJ1ZTIiLCBbXSksIHRydWUpOwotICAgIGNo
ZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tRmxvYXQzVHJ1
ZTMiLCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihw
cm9ncmFtLCAiYm9vbEZyb21VaW50NEZhbHNlIiwgW10pLCBmYWxzZSk7Ci0gICAgY2hlY2tCb29s
KHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21VaW50NFRydWUxIiwgW10p
LCB0cnVlKTsKLSAgICBjaGVja0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJi
b29sRnJvbVVpbnQ0VHJ1ZTIiLCBbXSksIHRydWUpOwotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBj
YWxsRnVuY3Rpb24ocHJvZ3JhbSwgImJvb2xGcm9tVWludDRUcnVlMyIsIFtdKSwgdHJ1ZSk7Ci0g
ICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9ncmFtLCAiYm9vbEZyb21VaW50
NFRydWU0IiwgW10pLCB0cnVlKTsKLQotICAgIGNoZWNrQm9vbChwcm9ncmFtLCBjYWxsRnVuY3Rp
b24ocHJvZ3JhbSwgImJvb2xGcm9tU3RydWN0RmFsc2UiLCBbXSksIGZhbHNlKTsKLSAgICBjaGVj
a0Jvb2wocHJvZ3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbVN0cnVjdFRydWUi
LCBbXSksIHRydWUpOwotCi0gICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxGdW5jdGlvbihwcm9n
cmFtLCAiYm9vbEZyb21FbnVtRmFsc2UiLCBbXSksIGZhbHNlKTsKLSAgICBjaGVja0Jvb2wocHJv
Z3JhbSwgY2FsbEZ1bmN0aW9uKHByb2dyYW0sICJib29sRnJvbUVudW1UcnVlIiwgW10pLCB0cnVl
KTsKIH0KIAogdGVzdHMuYm9vbEJpdEFuZCA9IGZ1bmN0aW9uKCkKZGlmZiAtLWdpdCBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9WaXNpdG9yLmpzCmluZGV4IDFmMWY1NGQ4Y2NhNzVjMTEwMTk4ZTUwODQ1ODg3
OTA3OTFkZTBlNTguLmI5ZWE3ZTQ2M2M0ZTA4YmRmODZmZTkwNzZlYWQ0MDU4NzZkMTE1OTIgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Zpc2l0b3IuanMKKysrIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmlzaXRvci5qcwpAQCAtMzQwLDUgKzM0MCwx
MiBAQCBjbGFzcyBWaXNpdG9yIHsKICAgICAgICAgbm9kZS5lbGVtZW50VHlwZS52aXNpdCh0aGlz
KTsKICAgICAgICAgbm9kZS5udW1FbGVtZW50cy52aXNpdCh0aGlzKTsKICAgICB9CisKKyAgICB2
aXNpdE1hdHJpeFR5cGUobm9kZSkKKyAgICB7CisgICAgICAgIG5vZGUuZWxlbWVudFR5cGUudmlz
aXQodGhpcyk7CisgICAgICAgIG5vZGUubnVtUm93cy52aXNpdCh0aGlzKTsKKyAgICAgICAgbm9k
ZS5udW1Db2x1bW5zLnZpc2l0KHRoaXMpOworICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRtbCBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL2luZGV4Lmh0bWwKaW5kZXggMmVmYWRiZDY0NzQ0ZWRmZjI2NzM3OGQ1YTk2ZDQ5
YmUyOTdiNDFjNS4uMGEzNjQ0NTMzNjdlOGE2NmYwMDRmMjM1MzAzZTA0MDZjOGY4MDNkMiAxMDA2
NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvaW5kZXguaHRtbAorKysgYi9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9pbmRleC5odG1sCkBAIC0xMSw3ICsxMSw2IEBA
CiA8c2NyaXB0IHNyYz0iQ3JlYXRlTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
Q3JlYXRlTGl0ZXJhbFR5cGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IlByb3BlcnR5QWNj
ZXNzRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iU3dpenpsZU9wLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOYXRpdmVUeXBlLmpzIj48L3NjcmlwdD4KIAogPHNjcmlw
dCBzcmM9IkFkZHJlc3NTcGFjZS5qcyI+PC9zY3JpcHQ+CkBAIC0yMywxMiArMjIsMTAgQEAKIDxz
Y3JpcHQgc3JjPSJCbG9jay5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iQm9vbExpdGVyYWwu
anMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkJyZWFrLmpzIj48L3NjcmlwdD4KLTxzY3JpcHQg
c3JjPSJCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3Jj
PSJCdWlsdGluTWF0cml4R2V0dGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJCdWlsdGlu
TWF0cml4U2V0dGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9yR2V0
dGVyLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9yU2V0dGVyLmpzIj48
L3NjcmlwdD4KLTxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuanMiPjwvc2Ny
aXB0PgotPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JJbmRleFNldHRlci5qcyI+PC9zY3JpcHQ+
Ci08c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuanMiPjwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9IkNhbGxFeHByZXNzaW9uLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PSJDYWxsRnVuY3Rpb24uanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9IkNoZWNrLmpzIj48L3Nj
cmlwdD4KQEAgLTkwLDYgKzg3LDcgQEAKIDxzY3JpcHQgc3JjPSJMb29wQ2hlY2tlci5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iTWFrZUFycmF5UmVmRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iTWFrZVB0ckV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ik1hdHJpeFR5cGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ik5hbWVDb250ZXh0Lmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOYW1lRmluZGVyLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSJOYW1lUmVzb2x2ZXIuanMiPjwvc2NyaXB0PgpAQCAtOTcsOSArOTUsOCBAQAogPHNj
cmlwdCBzcmM9Ik5vcm1hbFVzZVByb3BlcnR5UmVzb2x2ZXIuanMiPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9Ik51bGxMaXRlcmFsLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJOdWxsVHlwZS5q
cyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNyYz0iT3BlcmF0b3JBbmRlckluZGV4LmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSJPcGVyYXRvckFuZGVySW5kZXhlci5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0iT3BlcmF0b3JBcnJheVJlZkxlbmd0aC5qcyI+PC9zY3JpcHQ+Ci08c2NyaXB0IHNy
Yz0iT3BlcmF0b3JCb29sLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJPcmlnaW5LaW5kLmpz
Ij48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJPdmVybG9hZFJlc29sdXRpb25GYWlsdXJlLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJQYXJzZS5qcyI+PC9zY3JpcHQ+CkBAIC0xMjcsNyArMTI0
LDYgQEAKIDxzY3JpcHQgc3JjPSJTeW50aGVzaXplQXJyYXlPcGVyYXRvckxlbmd0aC5qcyI+PC9z
Y3JpcHQ+CiA8c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3NvcnMuanMiPjwvc2NyaXB0Pgot
PHNjcmlwdCBzcmM9IlN5bnRoZXNpemVPcGVyYXRvckJvb2wuanMiPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9IlN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+CiA8
c2NyaXB0IHNyYz0iU3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJUZXJuYXJ5RXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>347980</attachid>
            <date>2018-08-23 17:35:18 -0700</date>
            <delta_ts>2018-08-23 23:17:51 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-188873-20180823173517.patch</filename>
            <type>text/plain</type>
            <size>1688231</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1MjQ5CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOTg0NjAyMGQzOTgyZTI0Zjc3MzdmOGFhYjkxZWY2YzQ4
NDJhZjU1YS4uOTZiNTA4OTE3NTM1MDg2YjkzYTA3MTBkYThiN2M0OTIwZjk1YTBjYiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDk1
IEBACisyMDE4LTA4LTIzICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+
CisKKyAgICAgICAgW1dITFNMXSBBZGQgbW9yZSBmdW5jdGlvbnMgdG8gdGhlIHN0YW5kYXJkIGxp
YnJhcnkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
ODg3MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdM
YW5ndWFnZVJJL0J1aWx0aW5NYXRyaXhHZXR0ZXIuanM6IENvcGllZCBmcm9tIFRvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JJbmRleFNldHRlci5qcy4KKyAgICAgICAg
KEJ1aWx0aW5NYXRyaXhHZXR0ZXIpOgorICAgICAgICAoQnVpbHRpbk1hdHJpeEdldHRlci5wcm90
b3R5cGUuZ2V0IGhlaWdodCk6CisgICAgICAgIChCdWlsdGluTWF0cml4R2V0dGVyLnByb3RvdHlw
ZS5nZXQgd2lkdGgpOgorICAgICAgICAoQnVpbHRpbk1hdHJpeEdldHRlci5wcm90b3R5cGUudG9T
dHJpbmcpOgorICAgICAgICAoQnVpbHRpbk1hdHJpeEdldHRlci5mdW5jdGlvbnMpOgorICAgICAg
ICAoQnVpbHRpbk1hdHJpeEdldHRlci5wcm90b3R5cGUuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlv
bik6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpbk1hdHJpeFNldHRl
ci5qczogUmVuYW1lZCBmcm9tIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5W
ZWN0b3JJbmRleFNldHRlci5qcy4KKyAgICAgICAgKEJ1aWx0aW5NYXRyaXhTZXR0ZXIpOgorICAg
ICAgICAoQnVpbHRpbk1hdHJpeFNldHRlci5wcm90b3R5cGUuZ2V0IGhlaWdodCk6CisgICAgICAg
IChCdWlsdGluTWF0cml4U2V0dGVyLnByb3RvdHlwZS5nZXQgd2lkdGgpOgorICAgICAgICAoQnVp
bHRpbk1hdHJpeFNldHRlci5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAoQnVpbHRpbk1h
dHJpeFNldHRlci5mdW5jdGlvbnMpOgorICAgICAgICAoQnVpbHRpbk1hdHJpeFNldHRlci5wcm90
b3R5cGUuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbik6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5qczogUmVtb3ZlZC4KKyAgICAg
ICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVyYXRv
ci5qczogUmVtb3ZlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGlu
VmVjdG9yR2V0dGVyLmpzOgorICAgICAgICAoQnVpbHRpblZlY3RvckdldHRlci5wcm90b3R5cGUu
aW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbik6CisgICAgICAgIChCdWlsdGluVmVjdG9yR2V0dGVy
KToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yU2V0dGVy
LmpzOgorICAgICAgICAoQnVpbHRpblZlY3RvclNldHRlci5mdW5jdGlvbnMpOgorICAgICAgICAo
QnVpbHRpblZlY3RvclNldHRlci5wcm90b3R5cGUuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbik6
CisgICAgICAgIChCdWlsdGluVmVjdG9yU2V0dGVyKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qczoKKyAgICAgICAgKENhbGxFeHByZXNzaW9uLnBy
b3RvdHlwZS5yZXNvbHZlKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DaGVj
a1R5cGVzV2l0aEFyZ3VtZW50cy5qczoKKyAgICAgICAgKGNoZWNrVHlwZXNXaXRoQXJndW1lbnRz
LlR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlci5wcm90b3R5cGUudmlzaXRUeXBlUmVmKToKKyAgICAg
ICAgKGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzLlR5cGVXaXRoQXJndW1lbnRzQ2hlY2tlcik6Cisg
ICAgICAgIChjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyk6CisgICAgICAgICogV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvQ2hlY2tlci5qczoKKyAgICAgICAgKENoZWNrZXIucHJvdG90eXBlLnZpc2l0
VmVjdG9yVHlwZSk6CisgICAgICAgIChDaGVja2VyLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5cGUp
OgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0V2YWx1YXRvci5qczoKKyAgICAg
ICAgKEV2YWx1YXRvci5wcm90b3R5cGUudmlzaXRUZXJuYXJ5RXhwcmVzc2lvbik6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIu
anM6CisgICAgICAgIChGbGF0dGVuZWRTdHJ1Y3RPZmZzZXRHYXRoZXJlci5wcm90b3R5cGUudmlz
aXRNYXRyaXhUeXBlKToKKyAgICAgICAgKEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyKToK
KyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzOgorICAgICAg
ICAoSW50cmluc2ljcy4pOgorICAgICAgICAoSW50cmluc2ljcyk6CisgICAgICAgICogV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvTWF0cml4VHlwZS5qczogUmVuYW1lZCBmcm9tIFRvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcy4KKyAgICAgICAg
KE1hdHJpeFR5cGUpOgorICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUuZ2V0IGVsZW1lbnRU
eXBlKToKKyAgICAgICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBudW1Sb3dzKToKKyAgICAg
ICAgKE1hdHJpeFR5cGUucHJvdG90eXBlLmdldCBudW1Db2x1bW5zKToKKyAgICAgICAgKE1hdHJp
eFR5cGUucHJvdG90eXBlLmdldCBudW1Sb3dzVmFsdWUpOgorICAgICAgICAoTWF0cml4VHlwZS5w
cm90b3R5cGUuZ2V0IG51bUNvbHVtbnNWYWx1ZSk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3Rv
dHlwZS5nZXQgc2l6ZSk6CisgICAgICAgIChNYXRyaXhUeXBlLnByb3RvdHlwZS51bmlmeUltcGwp
OgorICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUucG9wdWxhdGVEZWZhdWx0VmFsdWUpOgor
ICAgICAgICAoTWF0cml4VHlwZS5wcm90b3R5cGUudG9TdHJpbmcpOgorICAgICAgICAqIFdlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL05hbWVDb250ZXh0LmpzOgorICAgICAgICAoTmFtZUNvbnRleHQu
cHJvdG90eXBlLmFkZCk6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmF0aXZl
VHlwZS5qczoKKyAgICAgICAgKE5hdGl2ZVR5cGUuY3JlYXRlKToKKyAgICAgICAgKE5hdGl2ZVR5
cGUpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRl
eGVyLmpzOiBSZW5hbWVkIGZyb20gVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvT3BlcmF0
b3JBbmRlckluZGV4LmpzLgorICAgICAgICAoT3BlcmF0b3JBbmRlckluZGV4ZXIpOgorICAgICAg
ICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQm9vbC5qczogUmVtb3ZlZC4KKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QYXJzZS5qczoKKyAgICAgICAgKHBhcnNl
KToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzOgorICAgICAg
ICAobGV0LnByZXBhcmUudGltZUNhbGxiYWNrKToKKyAgICAgICAgKGxldC5wcmVwYXJlKToKKyAg
ICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzOgorICAgICAgICAoUHJv
Z3JhbS5wcm90b3R5cGUuYWRkKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9S
ZXdyaXRlci5qczoKKyAgICAgICAgKFJld3JpdGVyLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5cGUp
OgorICAgICAgICAoUmV3cml0ZXIpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1NQSVJWLmh0bWw6CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhbmRhcmRM
aWJyYXJ5LmpzOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N3aXp6bGVPcC5q
czogUmVtb3ZlZC4KKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TeW50aGVzaXpl
RGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3IuanM6CisgICAgICAgIChzeW50aGVzaXplRGVmYXVs
dENvbnN0cnVjdG9yT3BlcmF0b3IuRmluZEFsbFR5cGVzLnByb3RvdHlwZS52aXNpdE1hdHJpeFR5
cGUpOgorICAgICAgICAoc3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLkZpbmRB
bGxUeXBlcyk6CisgICAgICAgIChzeW50aGVzaXplRGVmYXVsdENvbnN0cnVjdG9yT3BlcmF0b3Ip
OgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N5bnRoZXNpemVPcGVyYXRvckJv
b2wuanM6IFJlbW92ZWQuCisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVGVzdC5o
dG1sOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanM6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVmlzaXRvci5qczoKKyAgICAgICAgKFZpc2l0b3Iu
cHJvdG90eXBlLnZpc2l0TWF0cml4VHlwZSk6CisgICAgICAgIChWaXNpdG9yKToKKyAgICAgICAg
KiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9pbmRleC5odG1sOgorCiAyMDE4LTA4LTIzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW1dTTF0gVGVy
bmFyeSBleHByZXNzaW9ucyBhcHBlYXIgdG8gYmUgdW5pbXBsZW1lbnRlZApkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQWxsLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGlu
Z0xhbmd1YWdlUkkvQWxsLmpzCmluZGV4IDMxNWJlYzJlNjg4NjI3YzNjZDgwYmE0NmZiYTI0MDAx
ZTI4ZjlmNGMuLjljMmEzNzE1MGMxZTk3NmI5MjZjZmJlZTIzNDM3NTIwYThkZTRhNDcgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0FsbC5qcworKysgYi9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9BbGwuanMKQEAgLTM0LDcgKzM0LDYgQEAgbG9hZCgiVmlz
aXRvci5qcyIpOwogbG9hZCgiQ3JlYXRlTGl0ZXJhbC5qcyIpOwogbG9hZCgiQ3JlYXRlTGl0ZXJh
bFR5cGUuanMiKTsKIGxvYWQoIlByb3BlcnR5QWNjZXNzRXhwcmVzc2lvbi5qcyIpOwotbG9hZCgi
U3dpenpsZU9wLmpzIik7CiBsb2FkKCJOYXRpdmVUeXBlLmpzIik7CiAKIGxvYWQoIkFkZHJlc3NT
cGFjZS5qcyIpOwpAQCAtNDYsMTIgKzQ1LDEwIEBAIGxvYWQoIkF1dG9XcmFwcGVyLmpzIik7CiBs
b2FkKCJCbG9jay5qcyIpOwogbG9hZCgiQm9vbExpdGVyYWwuanMiKTsKIGxvYWQoIkJyZWFrLmpz
Iik7Ci1sb2FkKCJCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzIik7Citsb2FkKCJCdWlsdGlu
TWF0cml4R2V0dGVyLmpzIik7Citsb2FkKCJCdWlsdGluTWF0cml4U2V0dGVyLmpzIik7CiBsb2Fk
KCJCdWlsdGluVmVjdG9yR2V0dGVyLmpzIik7CiBsb2FkKCJCdWlsdGluVmVjdG9yU2V0dGVyLmpz
Iik7Ci1sb2FkKCJCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIuanMiKTsKLWxvYWQoIkJ1aWx0aW5W
ZWN0b3JJbmRleFNldHRlci5qcyIpOwotbG9hZCgiQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0
b3IuanMiKTsKIGxvYWQoIkNhbGxFeHByZXNzaW9uLmpzIik7CiBsb2FkKCJDYWxsRnVuY3Rpb24u
anMiKTsKIGxvYWQoIkNoZWNrLmpzIik7CkBAIC0xMTMsNiArMTEwLDcgQEAgbG9hZCgiTG9naWNh
bE5vdC5qcyIpOwogbG9hZCgiTG9vcENoZWNrZXIuanMiKTsKIGxvYWQoIk1ha2VBcnJheVJlZkV4
cHJlc3Npb24uanMiKTsKIGxvYWQoIk1ha2VQdHJFeHByZXNzaW9uLmpzIik7Citsb2FkKCJNYXRy
aXhUeXBlLmpzIik7CiBsb2FkKCJOYW1lQ29udGV4dC5qcyIpOwogbG9hZCgiTmFtZUZpbmRlci5q
cyIpOwogbG9hZCgiTmFtZVJlc29sdmVyLmpzIik7CkBAIC0xMjAsOSArMTE4LDggQEAgbG9hZCgi
TmF0aXZlRnVuYy5qcyIpOwogbG9hZCgiTm9ybWFsVXNlUHJvcGVydHlSZXNvbHZlci5qcyIpOwog
bG9hZCgiTnVsbExpdGVyYWwuanMiKTsKIGxvYWQoIk51bGxUeXBlLmpzIik7Ci1sb2FkKCJPcGVy
YXRvckFuZGVySW5kZXguanMiKTsKK2xvYWQoIk9wZXJhdG9yQW5kZXJJbmRleGVyLmpzIik7CiBs
b2FkKCJPcGVyYXRvckFycmF5UmVmTGVuZ3RoLmpzIik7Ci1sb2FkKCJPcGVyYXRvckJvb2wuanMi
KTsKIGxvYWQoIk9yaWdpbktpbmQuanMiKTsKIGxvYWQoIk92ZXJsb2FkUmVzb2x1dGlvbkZhaWx1
cmUuanMiKTsKIGxvYWQoIlBhcnNlLmpzIik7CkBAIC0xNTAsNyArMTQ3LDYgQEAgbG9hZCgiU3dp
dGNoU3RhdGVtZW50LmpzIik7CiBsb2FkKCJTeW50aGVzaXplQXJyYXlPcGVyYXRvckxlbmd0aC5q
cyIpOwogbG9hZCgiU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiKTsKIGxvYWQoIlN5bnRoZXNp
emVTdHJ1Y3RBY2Nlc3NvcnMuanMiKTsKLWxvYWQoIlN5bnRoZXNpemVPcGVyYXRvckJvb2wuanMi
KTsKIGxvYWQoIlN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyIpOwogbG9hZCgi
U3ludGhlc2l6ZURlZmF1bHRDb25zdHJ1Y3Rvck9wZXJhdG9yLmpzIik7CiBsb2FkKCJUZXJuYXJ5
RXhwcmVzc2lvbi5qcyIpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvQnVpbHRpbk1hdHJpeEdldHRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L0J1aWx0aW5NYXRyaXhHZXR0ZXIuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODZhMzMzOTQ2Y2JmNGU1ZGI3YTQ4
ZGI4NTg1ODgxN2ZmOGM2N2Q2ZQotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRp
bmdMYW5ndWFnZVJJL0J1aWx0aW5NYXRyaXhHZXR0ZXIuanMKQEAgLTAsMCArMSw3MyBAQAorLyoK
KyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBg
QVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisidXNlIHN0cmljdCI7CisK
K2NsYXNzIEJ1aWx0aW5NYXRyaXhHZXR0ZXIgeworICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFt
ZSwgaGVpZ2h0LCB3aWR0aCkKKyAgICB7CisgICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJh
c2VUeXBlTmFtZTsKKyAgICAgICAgdGhpcy5faGVpZ2h0ID0gaGVpZ2h0OworICAgICAgICB0aGlz
Ll93aWR0aCA9IHdpZHRoOworICAgIH0KKworICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVy
biB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KKyAgICBnZXQgaGVpZ2h0KCkgeyByZXR1cm4gdGhpcy5f
aGVpZ2h0OyB9CisgICAgZ2V0IHdpZHRoKCkgeyByZXR1cm4gdGhpcy5fd2lkdGg7IH0KKworICAg
IHRvU3RyaW5nKCkKKyAgICB7CisgICAgICAgIHJldHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlw
ZU5hbWV9JHt0aGlzLndpZHRofSBvcGVyYXRvcltdKCR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlz
LmhlaWdodH14JHt0aGlzLndpZHRofSx1aW50KWA7CisgICAgfQorCisgICAgc3RhdGljIGZ1bmN0
aW9ucygpCisgICAgeworICAgICAgICBpZiAoIXRoaXMuX2Z1bmN0aW9ucykgeworICAgICAgICAg
ICAgdGhpcy5fZnVuY3Rpb25zID0gW107CisKKyAgICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1l
IG9mIFsiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICAgICAgZm9yIChsZXQgaGVpZ2h0
IG9mIFsyLCAzLCA0XSkgeworICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCB3aWR0aCBvZiBb
MiwgMywgNF0pCisgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMucHVzaChu
ZXcgQnVpbHRpbk1hdHJpeEdldHRlcih0eXBlTmFtZSwgaGVpZ2h0LCB3aWR0aCkpOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICByZXR1cm4gdGhp
cy5fZnVuY3Rpb25zOworICAgIH0KKworICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykKKyAgICB7CisgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW21hdCwgaW5kZXhdKSA9
PiB7CisgICAgICAgICAgICBjb25zdCBpbmRleFZhbHVlID0gaW5kZXgubG9hZFZhbHVlKCk7Cisg
ICAgICAgICAgICBpZiAoaW5kZXhWYWx1ZSA+PSAwICYmIGluZGV4VmFsdWUgPCB0aGlzLmhlaWdo
dCkgeworICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBFUHRyKG5ldyBFQnVmZmVy
KHRoaXMud2lkdGgpLCAwKTsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRo
aXMud2lkdGg7IGkrKykKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0LnNldChvZmZzZXQrKywg
bWF0LmdldChpbmRleFZhbHVlICogdGhpcy53aWR0aCArIGkpKTsKKyAgICAgICAgICAgICAgICBy
ZXR1cm4gcmVzdWx0OworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgdGhyb3cg
bmV3IFdUcmFwRXJyb3IoIltCdWlsdGluIG1hdHJpeCBnZXR0ZXJdIiwgIk91dC1vZi1ib3VuZHMg
aW5kZXggd2hlbiBpbmRleGluZyBpbnRvIGEgbWF0cml4Iik7CisgICAgICAgIH07CisgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9U
b29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluTWF0cml4U2V0dGVyLmpzIGIvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpbk1hdHJpeFNldHRlci5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5mN2I4NTc0OWNlMWYyZDdkMWFmMjZiMWNkZThmNzhmM2Y4NGI1NTM4Ci0tLSAvZGV2L251
bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpbk1hdHJpeFNldHRl
ci5qcwpAQCAtMCwwICsxLDczIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAorICovCisidXNlIHN0cmljdCI7CisKK2NsYXNzIEJ1aWx0aW5NYXRyaXhTZXR0ZXIgewor
ICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwgaGVpZ2h0LCB3aWR0aCkKKyAgICB7CisgICAg
ICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJhc2VUeXBlTmFtZTsKKyAgICAgICAgdGhpcy5faGVp
Z2h0ID0gaGVpZ2h0OworICAgICAgICB0aGlzLl93aWR0aCA9IHdpZHRoOworICAgIH0KKworICAg
IGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KKyAgICBn
ZXQgaGVpZ2h0KCkgeyByZXR1cm4gdGhpcy5faGVpZ2h0OyB9CisgICAgZ2V0IHdpZHRoKCkgeyBy
ZXR1cm4gdGhpcy5fd2lkdGg7IH0KKworICAgIHRvU3RyaW5nKCkKKyAgICB7CisgICAgICAgIHJl
dHVybiBgbmF0aXZlICR7dGhpcy5iYXNlVHlwZU5hbWV9JHt0aGlzLmhlaWdodH14JHt0aGlzLndp
ZHRofSBvcGVyYXRvcltdPSgke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5oZWlnaHR9eCR7dGhp
cy53aWR0aH0sdWludCwke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy53aWR0aH0pYDsKKyAgICB9
CisKKyAgICBzdGF0aWMgZnVuY3Rpb25zKCkKKyAgICB7CisgICAgICAgIGlmICghdGhpcy5fZnVu
Y3Rpb25zKSB7CisgICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKKworICAgICAgICAg
ICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgWyJoYWxmIiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAg
ICAgICBmb3IgKGxldCBoZWlnaHQgb2YgWzIsIDMsIDRdKSB7CisgICAgICAgICAgICAgICAgICAg
IGZvciAobGV0IHdpZHRoIG9mIFsyLCAzLCA0XSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHRo
aXMuX2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGluTWF0cml4U2V0dGVyKHR5cGVOYW1lLCBoZWln
aHQsIHdpZHRoKSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9
CisgICAgICAgIHJldHVybiB0aGlzLl9mdW5jdGlvbnM7CisgICAgfQorCisgICAgaW5zdGFudGlh
dGVJbXBsZW1lbnRhdGlvbihmdW5jKQorICAgIHsKKyAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlv
biA9IChbYmFzZSwgaW5kZXgsIHZhbHVlXSkgPT4geworICAgICAgICAgICAgY29uc3QgaW5kZXhW
YWx1ZSA9IGluZGV4LmxvYWRWYWx1ZSgpOworICAgICAgICAgICAgaWYgKGluZGV4VmFsdWUgPj0g
MCAmJiBpbmRleFZhbHVlIDwgdGhpcy5oZWlnaHQpIHsKKyAgICAgICAgICAgICAgICBsZXQgcmVz
dWx0ID0gbmV3IEVQdHIobmV3IEVCdWZmZXIodGhpcy53aWR0aCAqIHRoaXMuaGVpZ2h0KSwgMCk7
CisgICAgICAgICAgICAgICAgcmVzdWx0LmNvcHlGcm9tKGJhc2UsIHRoaXMud2lkdGggKiB0aGlz
LmhlaWdodCk7CisgICAgICAgICAgICAgICAgcmVzdWx0LnBsdXMoaW5kZXhWYWx1ZSAqIHRoaXMu
d2lkdGgpLmNvcHlGcm9tKHZhbHVlLCB0aGlzLndpZHRoKTsKKyAgICAgICAgICAgICAgICByZXR1
cm4gcmVzdWx0OworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3
IFdUcmFwRXJyb3IoIltCdWlsdGluIG1hdHJpeCBzZXR0ZXJdIiwgIk91dC1vZi1ib3VuZHMgaW5k
ZXggd2hlbiBpbmRleGluZyBpbnRvIGEgbWF0cml4Iik7CisgICAgICAgIH07CisgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmpzIGIv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckNvbnN0cnVjdG9ycy5q
cwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjcwNGI0M2EwNmMyZmFlZDlkZmE3M2Rl
YWQzM2JiMGM1Yzk1NTk4NS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yQ29uc3Ry
dWN0b3JzLmpzCisrKyAvZGV2L251bGwKQEAgLTEsODQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgot
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQg
QU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0idXNlIHN0cmljdCI7Ci0KLWNsYXNzIEJ1aWx0
aW5WZWN0b3JDb25zdHJ1Y3RvcnMgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSwgcGFy
YW1ldGVyU2l6ZXMpCi0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5hbWUgPSBiYXNlVHlw
ZU5hbWU7Ci0gICAgICAgIHRoaXMuX3BhcmFtZXRlclNpemVzID0gcGFyYW1ldGVyU2l6ZXM7Ci0g
ICAgfQotCi0gICAgZ2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFt
ZTsgfQotICAgIGdldCBwYXJhbWV0ZXJTaXplcygpIHsgcmV0dXJuIHRoaXMuX3BhcmFtZXRlclNp
emVzOyB9Ci0gICAgZ2V0IG91dHB1dFNpemUoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIHRoaXMu
cGFyYW1ldGVyU2l6ZXMucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgMCk7Ci0gICAgfQotCi0gICAg
dG9TdHJpbmcoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGBuYXRpdmUgb3BlcmF0b3IgJHt0aGlz
LmJhc2VUeXBlTmFtZX0ke3RoaXMub3V0cHV0U2l6ZX0oJHt0aGlzLnBhcmFtZXRlclNpemVzLm1h
cCh4ID0+IHggPT0gMSA/IHRoaXMuYmFzZVR5cGVOYW1lIDogdGhpcy5iYXNlVHlwZU5hbWUgKyB4
KS5qb2luKCIsIil9KWA7Ci0gICAgfQotCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewot
ICAgICAgICBpZiAoIXRoaXMuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgdGhpcy5fZnVuY3Rp
b25zID0gW107Ci0KLSAgICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1l
bnRUeXBlcykgewotICAgICAgICAgICAgICAgIGZvciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVu
dFNpemVzKSB7Ci0gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHBhcmFtU2l6ZXMgb2YgdGhp
cy5fdmVjdG9yUGFyYW1ldGVyU2l6ZXNGb3JNYXhpbXVtU2l6ZShzaXplKSkKLSAgICAgICAgICAg
ICAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGluVmVjdG9yQ29uc3Ry
dWN0b3JzKHR5cGVOYW1lLCBwYXJhbVNpemVzKSk7Ci0gICAgICAgICAgICAgICAgfQotICAgICAg
ICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIHJldHVybiB0aGlzLl9mdW5jdGlvbnM7Ci0gICAg
fQotCi0gICAgc3RhdGljIF92ZWN0b3JQYXJhbWV0ZXJTaXplc0Zvck1heGltdW1TaXplKG1heFNp
emUpCi0gICAgewotICAgICAgICBsZXQgdmFyaWFudHMgPSBbIFsgbWF4U2l6ZSBdIF07Ci0gICAg
ICAgIGZvciAobGV0IHNwbGl0UG9pbnQgPSAxOyBzcGxpdFBvaW50IDwgbWF4U2l6ZTsgc3BsaXRQ
b2ludCsrKSB7Ci0gICAgICAgICAgICBmb3IgKGxldCB2IG9mIEJ1aWx0aW5WZWN0b3JDb25zdHJ1
Y3RvcnMuX3ZlY3RvclBhcmFtZXRlclNpemVzRm9yTWF4aW11bVNpemUobWF4U2l6ZSAtIHNwbGl0
UG9pbnQpKQotICAgICAgICAgICAgICAgIHZhcmlhbnRzLnB1c2goWyBzcGxpdFBvaW50IF0uY29u
Y2F0KHYpKTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4gdmFyaWFudHM7Ci0gICAgfQotCi0g
ICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQotICAgIHsKLSAgICAgICAgZnVuYy5p
bXBsZW1lbnRhdGlvbiA9IChhcmdzKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBu
ZXcgRVB0cihuZXcgRUJ1ZmZlcih0aGlzLm91dHB1dFNpemUpLCAwKTsKLSAgICAgICAgICAgIGxl
dCBvZmZzZXQgPSAwOwotICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcmdzLmxlbmd0
aDsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCB0aGlzLnBhcmFt
ZXRlclNpemVzW2ldOyBqKyspCi0gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5zZXQob2Zmc2V0
KyssIGFyZ3NbaV0uZ2V0KGopKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJldHVybiBy
ZXN1bHQ7Ci0gICAgICAgIH07Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhp
czsKLSAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3Iu
anMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yRXF1YWxpdHlP
cGVyYXRvci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjE4M2QzNTY4NjE5NDFi
YzI3NmU0ZDNjNjdjNWU0N2VjYWZlNDcwOS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVj
dG9yRXF1YWxpdHlPcGVyYXRvci5qcworKysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
LSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBg
YEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJpY3QiOwot
Ci1jbGFzcyBCdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVyYXRvciB7Ci0gICAgY29uc3RydWN0b3Io
YmFzZVR5cGVOYW1lLCBzaXplKQotICAgIHsKLSAgICAgICAgdGhpcy5fYmFzZVR5cGVOYW1lID0g
YmFzZVR5cGVOYW1lOwotICAgICAgICB0aGlzLl9zaXplID0gc2l6ZTsKLSAgICB9Ci0KLSAgICBn
ZXQgYmFzZVR5cGVOYW1lKCkgeyByZXR1cm4gdGhpcy5fYmFzZVR5cGVOYW1lOyB9Ci0gICAgZ2V0
IHNpemUoKSB7IHJldHVybiB0aGlzLl9zaXplOyB9Ci0KLSAgICB0b1N0cmluZygpCi0gICAgewot
ICAgICAgICByZXR1cm4gYG5hdGl2ZSBib29sIG9wZXJhdG9yPT0oJHt0aGlzLmJhc2VUeXBlTmFt
ZX0ke3RoaXMuc2l6ZX0sJHt0aGlzLmJhc2VUeXBlTmFtZX0ke3RoaXMuc2l6ZX0pYDsKLSAgICB9
Ci0KLSAgICBzdGF0aWMgZnVuY3Rpb25zKCkKLSAgICB7Ci0gICAgICAgIGlmICghdGhpcy5fZnVu
Y3Rpb25zKSB7Ci0gICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMgPSBbXTsKLQotICAgICAgICAg
ICAgZm9yIChsZXQgdHlwZU5hbWUgb2YgVmVjdG9yRWxlbWVudFR5cGVzKSB7Ci0gICAgICAgICAg
ICAgICAgZm9yIChsZXQgc2l6ZSBvZiBWZWN0b3JFbGVtZW50U2l6ZXMpCi0gICAgICAgICAgICAg
ICAgICAgIHRoaXMuX2Z1bmN0aW9ucy5wdXNoKG5ldyBCdWlsdGluVmVjdG9yRXF1YWxpdHlPcGVy
YXRvcih0eXBlTmFtZSwgc2l6ZSkpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAg
IHJldHVybiB0aGlzLl9mdW5jdGlvbnM7Ci0gICAgfQotCi0gICAgaW5zdGFudGlhdGVJbXBsZW1l
bnRhdGlvbihmdW5jKQotICAgIHsKLSAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbcmVm
MSwgcmVmMl0sIG5vZGUpID0+IHsKLSAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhp
cy5zaXplOyBpKyspIHsKLSAgICAgICAgICAgICAgICBpZiAocmVmMS5nZXQoaSkgIT0gcmVmMi5n
ZXQoaSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBFUHRyLmJveChmYWxzZSk7Ci0gICAg
ICAgICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gRVB0ci5ib3godHJ1ZSk7Ci0gICAgICAgIH07
Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKLSAgICB9Ci19ClwgTm8g
bmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvQnVpbHRpblZlY3RvckdldHRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL0J1aWx0aW5WZWN0b3JHZXR0ZXIuanMKaW5kZXggYzI1M2Y3NjMwZWU5ZGM0N2NkMWUx
OTQ1YmM4N2Y0MmVhYTNjY2IyOC4uNDA4NzJiNGY4ZTJiYjNhOGU0ZmZiMjYyNzVkOGQ4M2ZlNzIx
ODJmNyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZl
Y3RvckdldHRlci5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGlu
VmVjdG9yR2V0dGVyLmpzCkBAIC02Miw5ICs2Miw5IEBAIGNsYXNzIEJ1aWx0aW5WZWN0b3JHZXR0
ZXIgewogCiAgICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQogICAgIHsKLSAgICAg
ICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmVjXSwgbm9kZSkgPT4geworICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFt2ZWNdKSA9PiB7CiAgICAgICAgICAgICByZXR1cm4gRVB0ci5i
b3godmVjLmdldCh0aGlzLmluZGV4KSk7CiAgICAgICAgIH07CiAgICAgICAgIGZ1bmMuaW1wbGVt
ZW50YXRpb25EYXRhID0gdGhpczsKICAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmls
ZQorfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZl
Y3RvckluZGV4R2V0dGVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRp
blZlY3RvckluZGV4R2V0dGVyLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNzI2
MmZjOWNlMjczMGYwODdkNjE0NTU4NzZiMzM1ZmUwMjRhYzNhLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L0J1aWx0aW5WZWN0b3JJbmRleEdldHRlci5qcworKysgL2Rldi9udWxsCkBAIC0xLDY2ICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
Ci0gKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJp
Y3QiOwotCi1jbGFzcyBCdWlsdGluVmVjdG9ySW5kZXhHZXR0ZXIgewotICAgIGNvbnN0cnVjdG9y
KGJhc2VUeXBlTmFtZSwgc2l6ZSkKLSAgICB7Ci0gICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9
IGJhc2VUeXBlTmFtZTsKLSAgICAgICAgdGhpcy5fc2l6ZSA9IHNpemU7Ci0gICAgfQotCi0gICAg
Z2V0IGJhc2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQotICAgIGdl
dCBzaXplKCkgeyByZXR1cm4gdGhpcy5fc2l6ZTsgfQotCi0gICAgdG9TdHJpbmcoKQotICAgIHsK
LSAgICAgICAgcmV0dXJuIGBuYXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0gb3BlcmF0b3JbXSgk
e3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSx1aW50KWA7Ci0gICAgfQotCi0gICAgc3Rh
dGljIGZ1bmN0aW9ucygpCi0gICAgewotICAgICAgICBpZiAoIXRoaXMuX2FsbEluZGV4R2V0dGVy
cykgewotICAgICAgICAgICAgdGhpcy5fYWxsSW5kZXhHZXR0ZXJzID0gW107Ci0KLSAgICAgICAg
ICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewotICAgICAgICAg
ICAgICAgIGZvciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVzKQotICAgICAgICAgICAg
ICAgICAgICB0aGlzLl9hbGxJbmRleEdldHRlcnMucHVzaChuZXcgQnVpbHRpblZlY3RvckluZGV4
R2V0dGVyKHR5cGVOYW1lLCBzaXplKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAg
ICAgcmV0dXJuIHRoaXMuX2FsbEluZGV4R2V0dGVyczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0
ZUltcGxlbWVudGF0aW9uKGZ1bmMpCi0gICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2ZWMsIGluZGV4XSwgbm9kZSkgPT4gewotICAgICAgICAgICAgY29uc3QgaW5kZXhWYWx1
ZSA9IGluZGV4LmxvYWRWYWx1ZSgpOwotICAgICAgICAgICAgaWYgKGluZGV4VmFsdWUgPj0gMCAm
JiBpbmRleFZhbHVlIDwgdGhpcy5zaXplKQotICAgICAgICAgICAgICAgIHJldHVybiBFUHRyLmJv
eCh2ZWMuZ2V0KGluZGV4LmxvYWRWYWx1ZSgpKSk7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAg
ICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2luZGV4VmFsdWV9IG91dCBvZiBib3VuZHMgZm9y
IHZlY3RvciBvZiBzaXplICR7dGhpcy5zaXplfWApOwotICAgICAgICB9OwotICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7Ci0gICAgfQotfQpcIE5vIG5ld2xpbmUgYXQgZW5k
IG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0
aW5WZWN0b3JJbmRleFNldHRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1
aWx0aW5WZWN0b3JJbmRleFNldHRlci5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MmZlNWQ2NzhhYjcwNWZlNDBiN2Q2OGU5NjkzZGQ4YWZjNGFkZWU5NC4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9CdWlsdGluVmVjdG9ySW5kZXhTZXR0ZXIuanMKKysrIC9kZXYvbnVsbApAQCAtMSw3MSAr
MCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQot
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
Ci0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLSJ1c2Ug
c3RyaWN0IjsKLQotY2xhc3MgQnVpbHRpblZlY3RvckluZGV4U2V0dGVyIHsKLSAgICBjb25zdHJ1
Y3RvcihiYXNlVHlwZU5hbWUsIHNpemUpCi0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5h
bWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAgICAgIHRoaXMuX3NpemUgPSBzaXplOwotICAgIH0KLQot
ICAgIGdldCBiYXNlVHlwZU5hbWUoKSB7IHJldHVybiB0aGlzLl9iYXNlVHlwZU5hbWU7IH0KLSAg
ICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRoaXMuX3NpemU7IH0KLSAgICBnZXQgZWxlbWVudE5hbWUo
KSB7IHJldHVybiB0aGlzLl9lbGVtZW50TmFtZTsgfQotICAgIGdldCBpbmRleCgpIHsgcmV0dXJu
IHRoaXMuX2luZGV4OyB9Ci0KLSAgICB0b1N0cmluZygpCi0gICAgewotICAgICAgICByZXR1cm4g
YG5hdGl2ZSAke3RoaXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSBvcGVyYXRvcltdPSgke3Ro
aXMuYmFzZVR5cGVOYW1lfSR7dGhpcy5zaXplfSx1aW50LCR7dGhpcy5iYXNlVHlwZU5hbWV9KWA7
Ci0gICAgfQotCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0gICAgewotICAgICAgICBpZiAoIXRo
aXMuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgdGhpcy5fZnVuY3Rpb25zID0gW107Ci0KLSAg
ICAgICAgICAgIGZvciAobGV0IHR5cGVOYW1lIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewotICAg
ICAgICAgICAgICAgIGZvciAobGV0IHNpemUgb2YgVmVjdG9yRWxlbWVudFNpemVzKQotICAgICAg
ICAgICAgICAgICAgICB0aGlzLl9mdW5jdGlvbnMucHVzaChuZXcgQnVpbHRpblZlY3RvckluZGV4
U2V0dGVyKHR5cGVOYW1lLCBzaXplKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAg
ICAgcmV0dXJuIHRoaXMuX2Z1bmN0aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUltcGxl
bWVudGF0aW9uKGZ1bmMpCi0gICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFti
YXNlLCBpbmRleCwgdmFsdWVdLCBub2RlKSA9PiB7Ci0gICAgICAgICAgICBjb25zdCBpbmRleFZh
bHVlID0gaW5kZXgubG9hZFZhbHVlKCk7Ci0gICAgICAgICAgICBpZiAoaW5kZXhWYWx1ZSA+PSAw
ICYmIGluZGV4VmFsdWUgPCB0aGlzLnNpemUpIHsKLSAgICAgICAgICAgICAgICBsZXQgcmVzdWx0
ID0gbmV3IEVQdHIobmV3IEVCdWZmZXIodGhpcy5zaXplKSwgMCk7Ci0gICAgICAgICAgICAgICAg
cmVzdWx0LmNvcHlGcm9tKGJhc2UsIHRoaXMuc2l6ZSk7Ci0gICAgICAgICAgICAgICAgcmVzdWx0
LnBsdXMoaW5kZXhWYWx1ZSkuY29weUZyb20odmFsdWUsIDEpOwotICAgICAgICAgICAgICAgIHJl
dHVybiByZXN1bHQ7Ci0gICAgICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgICAgICB0aHJvdyBu
ZXcgRXJyb3IoYCR7aW5kZXhWYWx1ZX0gb3V0IG9mIGJvdW5kcyBmb3IgdmVjdG9yIG9mIHNpemUg
JHt0aGlzLnNpemV9YCk7Ci0gICAgICAgIH07Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb25E
YXRhID0gdGhpczsKLSAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvclNldHRlci5q
cyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0J1aWx0aW5WZWN0b3JTZXR0ZXIuanMK
aW5kZXggYTJkNzYzYjc1MDk5OTdiMjQxMGMyNGI4MDEzMTRjMzRhM2M0ODdhMC4uZDU1OTU5MWU5
Njg2NzFlZjkwMzU5OTZhM2ZiNjE1N2VmOTdiMjVlYyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvQnVpbHRpblZlY3RvclNldHRlci5qcworKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9CdWlsdGluVmVjdG9yU2V0dGVyLmpzCkBAIC00Nyw3ICs0Nyw3
IEBAIGNsYXNzIEJ1aWx0aW5WZWN0b3JTZXR0ZXIgewogICAgIHsKICAgICAgICAgaWYgKCF0aGlz
Ll9mdW5jdGlvbnMpIHsKICAgICAgICAgICAgIHRoaXMuX2Z1bmN0aW9ucyA9IFtdOwotICAgICAg
ICAKKwogICAgICAgICAgICAgY29uc3QgZWxlbWVudHMgPSBbICJ4IiwgInkiLCAieiIsICJ3IiBd
OwogCiAgICAgICAgICAgICBmb3IgKGxldCB0eXBlTmFtZSBvZiBWZWN0b3JFbGVtZW50VHlwZXMp
IHsKQEAgLTYyLDcgKzYyLDcgQEAgY2xhc3MgQnVpbHRpblZlY3RvclNldHRlciB7CiAKICAgICBp
bnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCiAgICAgewotICAgICAgICBmdW5jLmltcGxl
bWVudGF0aW9uID0gKFtiYXNlLCB2YWx1ZV0sIG5vZGUpID0+IHsKKyAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbYmFzZSwgdmFsdWVdKSA9PiB7CiAgICAgICAgICAgICBsZXQgcmVzdWx0
ID0gbmV3IEVQdHIobmV3IEVCdWZmZXIodGhpcy5zaXplKSwgMCk7CiAgICAgICAgICAgICByZXN1
bHQuY29weUZyb20oYmFzZSwgdGhpcy5zaXplKTsKICAgICAgICAgICAgIHJlc3VsdC5wbHVzKHRo
aXMuaW5kZXgpLmNvcHlGcm9tKHZhbHVlLCAxKTsKQEAgLTcwLDQgKzcwLDQgQEAgY2xhc3MgQnVp
bHRpblZlY3RvclNldHRlciB7CiAgICAgICAgIH07CiAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b25EYXRhID0gdGhpczsKICAgICB9Ci19ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorfQpk
aWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2FsbEV4cHJlc3Npb24u
anMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcwppbmRl
eCAzYjE1NDU1OTkyZTY0ZTI2NzdiYTBiMDNhYjY1NjhlZjQzZDVkODY1Li41ZmJkZDUwNWY3OWQ0
YjMyNmUwOTNlMGZiNzZjZDM3NWQwYTJjNWJhIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9DYWxsRXhwcmVzc2lvbi5qcwpAQCAtNTIsMTkgKzUyLDIyIEBAIGNsYXNzIENh
bGxFeHByZXNzaW9uIGV4dGVuZHMgRXhwcmVzc2lvbiB7CiAKICAgICByZXNvbHZlKHBvc3NpYmxl
T3ZlcmxvYWRzLCBwcm9ncmFtKQogICAgIHsKLSAgICAgICAgaWYgKCFwb3NzaWJsZU92ZXJsb2Fk
cykKLSAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKHRoaXMub3JpZ2luLm9yaWdpblN0
cmluZywgIkRpZCBub3QgZmluZCBhbnkgZnVuY3Rpb25zIG5hbWVkICIgKyB0aGlzLm5hbWUpOwot
CiAgICAgICAgIGxldCBmYWlsdXJlcyA9IFtdOwotICAgICAgICBsZXQgb3ZlcmxvYWQgPSByZXNv
bHZlT3ZlcmxvYWRJbXBsKHBvc3NpYmxlT3ZlcmxvYWRzLCB0aGlzLmFyZ3VtZW50VHlwZXMsIHRo
aXMucmV0dXJuVHlwZSk7CisgICAgICAgIGxldCBvdmVybG9hZDsKKyAgICAgICAgaWYgKHBvc3Np
YmxlT3ZlcmxvYWRzKQorICAgICAgICAgICAgb3ZlcmxvYWQgPSByZXNvbHZlT3ZlcmxvYWRJbXBs
KHBvc3NpYmxlT3ZlcmxvYWRzLCB0aGlzLmFyZ3VtZW50VHlwZXMsIHRoaXMucmV0dXJuVHlwZSk7
CiAKLSAgICAgICAgaWYgKCFvdmVybG9hZC5mdW5jKSB7CisgICAgICAgIGlmICghb3ZlcmxvYWQg
fHwgIW92ZXJsb2FkLmZ1bmMpIHsKKyAgICAgICAgICAgIGlmICghb3ZlcmxvYWQpCisgICAgICAg
ICAgICAgICAgb3ZlcmxvYWQgPSB7fTsKICAgICAgICAgICAgIGNvbnN0IGZ1bmMgPSB0aGlzLl9y
ZXNvbHZlQnlJbnN0YW50aWF0aW9uKHByb2dyYW0pOwogICAgICAgICAgICAgaWYgKGZ1bmMpCiAg
ICAgICAgICAgICAgICAgb3ZlcmxvYWQuZnVuYyA9IGZ1bmM7CiAgICAgICAgIH0KIAogICAgICAg
ICBpZiAoIW92ZXJsb2FkLmZ1bmMpIHsKKyAgICAgICAgICAgIGlmICghb3ZlcmxvYWQuZmFpbHVy
ZXMpCisgICAgICAgICAgICAgICAgb3ZlcmxvYWQuZmFpbHVyZXMgPSBbXTsKICAgICAgICAgICAg
IGZhaWx1cmVzLnB1c2goLi4ub3ZlcmxvYWQuZmFpbHVyZXMpOwogICAgICAgICAgICAgbGV0IG1l
c3NhZ2UgPSAiRGlkIG5vdCBmaW5kIGZ1bmN0aW9uIG5hbWVkICIgKyB0aGlzLm5hbWUgKyAiIGZv
ciBjYWxsIHdpdGggIjsKICAgICAgICAgICAgIG1lc3NhZ2UgKz0gImFyZ3VtZW50IHR5cGVzICgi
ICsgdGhpcy5hcmd1bWVudFR5cGVzICsgIikiOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvQ2hlY2tUeXBlc1dpdGhBcmd1bWVudHMuanMgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9DaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcwppbmRleCBiYjZiMmJk
NDk4ZTc3YjE0OWRmNGM2OGY0ZWYzYWMxZmYxY2RhYWIyLi4yZjY5MTQyYTM1MTdkMjk0OTAwNTMw
YzBjZjA2NmM5YmZkMjI3N2FmIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3Vh
Z2VSSS9DaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9DaGVja1R5cGVzV2l0aEFyZ3VtZW50cy5qcwpAQCAtMjksOCArMjksMjAgQEAg
ZnVuY3Rpb24gY2hlY2tUeXBlc1dpdGhBcmd1bWVudHMocHJvZ3JhbSkKICAgICBjbGFzcyBUeXBl
V2l0aEFyZ3VtZW50c0NoZWNrZXIgZXh0ZW5kcyBWaXNpdG9yIHsKICAgICAgICAgdmlzaXRUeXBl
UmVmKG5vZGUpCiAgICAgICAgIHsKLSAgICAgICAgICAgIGlmIChub2RlLm5hbWUgPT0gInZlY3Rv
ciIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCA9PSAwKQotICAgICAgICAgICAgICAgIHRo
cm93IG5ldyBFcnJvcigiQnVpbHRpbiB0eXBlICR7bm9kZS5uYW1lfSBzaG91bGQgYWx3YXlzIGhh
dmUgdHlwZSBhcmd1bWVudHMuIik7CisgICAgICAgICAgICBpZiAoKG5vZGUubmFtZSA9PSAidmVj
dG9yIiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDIpCisgICAgICAgICAgICAgICAg
fHwgKG5vZGUubmFtZSA9PSAibWF0cml4IiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9
IDMpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAiVGV4dHVyZTFEIiAmJiBub2Rl
LnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFt
ZSA9PSAiUldUZXh0dXJlMUQiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAg
ICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJlMURBcnJheSIgJiYgbm9kZS50
eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUg
PT0gIlJXVGV4dHVyZTFEQXJyYXkiICYmIG5vZGUudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkK
KyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09ICJUZXh0dXJlMkQiICYmIG5vZGUudHlw
ZUFyZ3VtZW50cy5sZW5ndGggIT0gMSkKKyAgICAgICAgICAgICAgICB8fCAobm9kZS5uYW1lID09
ICJSV1RleHR1cmUyRCIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAg
ICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlRleHR1cmUyREFycmF5IiAmJiBub2RlLnR5cGVB
cmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAgICAgICAgfHwgKG5vZGUubmFtZSA9PSAi
UldUZXh0dXJlMkRBcnJheSIgJiYgbm9kZS50eXBlQXJndW1lbnRzLmxlbmd0aCAhPSAxKQorICAg
ICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlRleHR1cmUzRCIgJiYgbm9kZS50eXBlQXJn
dW1lbnRzLmxlbmd0aCAhPSAxKQorICAgICAgICAgICAgICAgIHx8IChub2RlLm5hbWUgPT0gIlJX
VGV4dHVyZTNEIiAmJiBub2RlLnR5cGVBcmd1bWVudHMubGVuZ3RoICE9IDEpCisgICAgICAgICAg
ICAgICAgfHwgKG5vZGUubmFtZSA9PSAiVGV4dHVyZUN1YmUiICYmIG5vZGUudHlwZUFyZ3VtZW50
cy5sZW5ndGggIT0gMSkpCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBCdWlsdGlu
IHR5cGUgJHtub2RlLm5hbWV9IHNob3VsZCBhbHdheXMgaGF2ZSB0eXBlIGFyZ3VtZW50cy5gKTsK
ICAgICAgICAgfQogICAgIH0KICAgICBwcm9ncmFtLnZpc2l0KG5ldyBUeXBlV2l0aEFyZ3VtZW50
c0NoZWNrZXIoKSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9D
aGVja2VyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2hlY2tlci5qcwppbmRl
eCBjNjlkNTU0OWJhZDkzZGJkMjQzZmE2NjkzYzg2ZjBiNTk5NzhjYzU5Li41ZjU5OGIyZWU3NTIy
YmJjODEwNTQ1Yzk0OGQ3NzNmMmU0Zjk5NDdkIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFk
aW5nTGFuZ3VhZ2VSSS9DaGVja2VyLmpzCisrKyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFn
ZVJJL0NoZWNrZXIuanMKQEAgLTI2Myw2ICsyNjMsNyBAQCBjbGFzcyBDaGVja2VyIGV4dGVuZHMg
VmlzaXRvciB7CiAgICAgdmlzaXRWZWN0b3JUeXBlKG5vZGUpCiAgICAgewogICAgICAgICBub2Rl
LmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBub2RlLm51bUVsZW1lbnRzLnZpc2l0
KHRoaXMpOwogCiAgICAgICAgIGxldCBpc0tub3duQWxsb3dlZFZlY3RvckVsZW1lbnRUeXBlID0g
ZmFsc2U7CiAgICAgICAgIGZvciAobGV0IHZlY3RvckVsZW1lbnRUeXBlTmFtZSBvZiBWZWN0b3JF
bGVtZW50VHlwZXMpIHsKQEAgLTI3Nyw2ICsyNzgsMzMgQEAgY2xhc3MgQ2hlY2tlciBleHRlbmRz
IFZpc2l0b3IgewogCiAgICAgICAgIGlmICghaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVtZW50VHlw
ZSkKICAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVycm9yKGAke25vZGUuZWxlbWVudFR5cGV9
IGlzIG5vdCBhIHBlcm1pdHRlZCB2ZWN0b3IgZWxlbWVudCB0eXBlLmApOworICAgICAgICBpZiAo
bm9kZS5udW1FbGVtZW50c1ZhbHVlICE9IDIgJiYgbm9kZS5udW1FbGVtZW50c1ZhbHVlICE9IDMg
JiYgbm9kZS5udW1FbGVtZW50c1ZhbHVlICE9IDQpCisgICAgICAgICAgICB0aHJvdyBuZXcgV1R5
cGVFcnJvcihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUubnVtRWxlbWVudHNWYWx1ZX0gaXMg
bm90IDIsIDMsIG9yIDQuYCk7CisgICAgfQorCisgICAgdmlzaXRNYXRyaXhUeXBlKG5vZGUpCisg
ICAgeworICAgICAgICBub2RlLmVsZW1lbnRUeXBlLnZpc2l0KHRoaXMpOworICAgICAgICBub2Rl
Lm51bVJvd3MudmlzaXQodGhpcyk7CisgICAgICAgIG5vZGUubnVtQ29sdW1ucy52aXNpdCh0aGlz
KTsKKworICAgICAgICBsZXQgaXNLbm93bkFsbG93ZWRWZWN0b3JFbGVtZW50VHlwZSA9IGZhbHNl
OworICAgICAgICBmb3IgKGxldCBlbGVtZW50VHlwZU5hbWUgb2YgWyJoYWxmIiwgImZsb2F0Il0p
IHsKKyAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRUeXBlID0gdGhpcy5fcHJvZ3JhbS5nbG9iYWxO
YW1lQ29udGV4dC5nZXQoVHlwZSwgZWxlbWVudFR5cGVOYW1lKTsKKyAgICAgICAgICAgIGlmICgh
ZWxlbWVudFR5cGUpCisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7ZWxl
bWVudFR5cGVOYW1lfSBpcyBub3QgYSBrbm93biBuYXRpdmUgdHlwZSBpbiB0aGUgc3RhbmRhcmQg
bGlicmFyeSBvciBpbnRyaW5zaWNzLmApOworICAgICAgICAgICAgaWYgKGVsZW1lbnRUeXBlLmVx
dWFscyhub2RlLmVsZW1lbnRUeXBlKSkgeworICAgICAgICAgICAgICAgIGlzS25vd25BbGxvd2Vk
VmVjdG9yRWxlbWVudFR5cGUgPSB0cnVlOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgaWYgKCFpc0tub3duQWxsb3dlZFZlY3RvckVs
ZW1lbnRUeXBlKQorICAgICAgICAgICAgdGhyb3cgbmV3IFdUeXBlRXJyb3IoYCR7bm9kZS5lbGVt
ZW50VHlwZX0gaXMgbm90IGEgcGVybWl0dGVkIHZlY3RvciBlbGVtZW50IHR5cGUuYCk7CisgICAg
ICAgIGlmIChub2RlLm51bVJvd3NWYWx1ZSAhPSAyICYmIG5vZGUubnVtUm93c1ZhbHVlICE9IDMg
JiYgbm9kZS5udW1Sb3dzVmFsdWUgIT0gNCkKKyAgICAgICAgICAgIHRocm93IG5ldyBXVHlwZUVy
cm9yKGAke25vZGUudG9TdHJpbmcoKX06ICR7bm9kZS5udW1Sb3dzVmFsdWV9IGlzIG5vdCAyLCAz
LCBvciA0LmApOworICAgICAgICBpZiAobm9kZS5udW1Db2x1bW5zVmFsdWUgIT0gMiAmJiBub2Rl
Lm51bUNvbHVtbnNWYWx1ZSAhPSAzICYmIG5vZGUubnVtQ29sdW1uc1ZhbHVlICE9IDQpCisgICAg
ICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcihgJHtub2RlLnRvU3RyaW5nKCl9OiAke25vZGUu
bnVtQ29sdW1uc1ZhbHVlfSBpcyBub3QgMiwgMywgb3IgNC5gKTsKICAgICB9CiAgICAgCiAgICAg
dmlzaXRBcnJheVR5cGUobm9kZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5n
dWFnZVJJL0V2YWx1YXRvci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0V2YWx1
YXRvci5qcwppbmRleCAwMjkwZGUyM2Q0NDFhYTJmM2E4YzEzMjkwZjIxZjFmY2NhNmQyYzdkLi5h
ZWUwYTIzMTJmZWQ3MmMwYzg3ZTczZjE4YWMzNDhlYTFhYzNjN2JhIDEwMDY0NAotLS0gYS9Ub29s
cy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9FdmFsdWF0b3IuanMKKysrIGIvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvRXZhbHVhdG9yLmpzCkBAIC0xNDgsNyArMTQ4LDYgQEAgY2xhc3Mg
RXZhbHVhdG9yIGV4dGVuZHMgVmlzaXRvciB7CiAgICAgICAgIGlmIChub2RlLnByZWRpY2F0ZS52
aXNpdCh0aGlzKS5sb2FkVmFsdWUoKSkKICAgICAgICAgICAgIHJldHVybiBub2RlLmJvZHlFeHBy
ZXNzaW9uLnZpc2l0KHRoaXMpOwogICAgICAgICByZXR1cm4gbm9kZS5lbHNlRXhwcmVzc2lvbi52
aXNpdCh0aGlzKTsKLSAgICAgICAgCiAgICAgfQogICAgIAogICAgIHZpc2l0VmFyaWFibGVSZWYo
bm9kZSkKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0ZsYXR0ZW5l
ZFN0cnVjdE9mZnNldEdhdGhlcmVyLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkv
RmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKaW5kZXggMTk3MGY4ZWQ5MzJjZDM1MzBh
NDhkYzMxYWY4YzljNDI0MGRkZThkMC4uZTBlMTYxZmYxMGNjZDNjMDk5MmI5YTkyNjQ5ZjRlM2Ew
MGJhMTExNyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRmxhdHRl
bmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKKysrIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvRmxhdHRlbmVkU3RydWN0T2Zmc2V0R2F0aGVyZXIuanMKQEAgLTc0LDUgKzc0LDE3IEBA
IGNsYXNzIEZsYXR0ZW5lZFN0cnVjdE9mZnNldEdhdGhlcmVyIGV4dGVuZHMgVmlzaXRvciB7CiAg
ICAgICAgICAgICB9KTsKICAgICAgICAgfQogICAgIH0KKworICAgIHZpc2l0TWF0cml4VHlwZShu
b2RlKQorICAgIHsKKyAgICAgICAgY29uc3QgZmllbGROYW1lcyA9IFsgInJvdzAiLCAicm93MSIs
ICJyb3cyIiwgInJvdzMiIF07CisgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbm9kZS5udW1S
b3dzVmFsdWU7IGkrKykgeworICAgICAgICAgICAgdGhpcy5fcmVzdWx0LnB1c2goeworICAgICAg
ICAgICAgICAgIG5hbWU6IHRoaXMuX25hbWUuam9pbigiLiIpICsgIi4iICsgZmllbGROYW1lc1tp
XSwKKyAgICAgICAgICAgICAgICBvZmZzZXQ6IHRoaXMuX29mZnNldCArIGkgKiBub2RlLmVsZW1l
bnRUeXBlLnNpemUgKiBub2RlLm51bUNvbHVtbnNWYWx1ZSwKKyAgICAgICAgICAgICAgICB0eXBl
OiBub2RlLmVsZW1lbnRUeXBlLm5hbWUgKyBub2RlLm51bUNvbHVtbnNWYWx1ZS50b1N0cmluZygp
CisgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW50cmluc2ljcy5qcyBiL1Rvb2xzL1dlYkdQVVNo
YWRpbmdMYW5ndWFnZVJJL0ludHJpbnNpY3MuanMKaW5kZXggZTljM2QxYjM0MTc2YTRiZmQ3OWI0
ZjQ0OTRiMzdiZTBlNWU5YjM4MC4uYTg5Njk1NzMxNDljNzE1MGM4OGViZTAzZjZjYzdiNWJhOWIz
Nzc1MSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvSW50cmluc2lj
cy5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9JbnRyaW5zaWNzLmpzCkBA
IC0zMTUsOTAgKzMxNSwyMzggQEAgY2xhc3MgSW50cmluc2ljcyB7CiAgICAgICAgICAgICB9CiAg
ICAgICAgIH0KIAorICAgICAgICBmb3IgKGxldCB0eXBlIG9mIFsiaGFsZiIsICJmbG9hdCJdKSB7
CisgICAgICAgICAgICBmb3IgKGxldCBoZWlnaHQgPSAyOyBoZWlnaHQgPD0gNDsgKytoZWlnaHQp
IHsKKyAgICAgICAgICAgICAgICBmb3IgKGxldCB3aWR0aCA9IDI7IHdpZHRoIDw9IDQ7ICsrd2lk
dGgpIHsKKyAgICAgICAgICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYg
bWF0cml4PCR7dHlwZX0sICR7aGVpZ2h0fSwgJHt3aWR0aH0+YCwgdHlwZSA9PiB7CisgICAgICAg
ICAgICAgICAgICAgICAgICB0aGlzW2BtYXRyaXg8JHt0eXBlfSwgJHtoZWlnaHR9LCAke3dpZHRo
fT5gXSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAg
ICAgICAgICAibmF0aXZlIG9wZXJhdG9yIGludCh1aW50KSIsCi0gICAgICAgICAgICBmdW5jID0+
IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQ
dHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpIHwgMCk7Ci0gICAgICAgICAgICB9KTsKKyAgICAgICAg
ICAgICJuYXRpdmUgdHlwZWRlZiBzYW1wbGVyIiwKKyAgICAgICAgICAgIHR5cGUgPT4geworICAg
ICAgICAgICAgICAgIHRoaXMuc2FtcGxlciA9IHR5cGU7CisgICAgICAgICAgICAgICAgLy8gRklY
TUU6IEZpZ3VyZSBvdXQgd2hhdCB0byBwdXQgaGVyZS4KKyAgICAgICAgICAgIH0pOworCisgICAg
ICAgIGZvciAobGV0IHRleHR1cmVUeXBlIG9mIFsiVGV4dHVyZTFEIiwgIlJXVGV4dHVyZTFEIiwg
IlRleHR1cmUxREFycmF5IiwgIlJXVGV4dHVyZTFEQXJyYXkiLCAiVGV4dHVyZTJEIiwgIlJXVGV4
dHVyZTJEIiwgIlRleHR1cmUyREFycmF5IiwgIlJXVGV4dHVyZTJEQXJyYXkiLCAiVGV4dHVyZTNE
IiwgIlJXVGV4dHVyZTNEIiwgIlRleHR1cmVDdWJlIl0pIHsKKyAgICAgICAgICAgIGZvciAobGV0
IHR5cGVBcmd1bWVudCBvZiBbImJvb2wiLCAidWNoYXIiLCAidXNob3J0IiwgInVpbnQiLCAiY2hh
ciIsICJzaG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICAgICAg
dGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICAgICAgYG5hdGl2ZSB0eXBlZGVmICR7dGV4
dHVyZVR5cGV9PCR7dHlwZUFyZ3VtZW50fT5gLAorICAgICAgICAgICAgICAgICAgICB0eXBlID0+
IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNbYCR7dGV4dHVyZVR5cGV9PCR7dHlwZUFy
Z3VtZW50fT5gXSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAg
ICAgIGZvciAobGV0IGkgPSAyOyBpIDw9IDQ7ICsraSkgeworICAgICAgICAgICAgICAgICAgICB0
aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgICAgICAgICAgYG5hdGl2ZSB0eXBlZGVmICR7
dGV4dHVyZVR5cGV9PCR7dHlwZUFyZ3VtZW50fSR7aX0+YCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHR5cGUgPT4geworICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXNbYCR7dGV4dHVy
ZVR5cGV9PCR7dHlwZUFyZ3VtZW50fSR7aX0+YF0gPSB0eXBlOworICAgICAgICAgICAgICAgICAg
ICAgICAgfSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisK
KyAgICAgICAgZm9yIChsZXQgdGV4dHVyZVR5cGUgb2YgWyJUZXh0dXJlRGVwdGgyRCIsICJSV1Rl
eHR1cmVEZXB0aDJEIiwgIlRleHR1cmVEZXB0aDJEQXJyYXkiLCAiUldUZXh0dXJlRGVwdGgyREFy
cmF5IiwgIlRleHR1cmVEZXB0aEN1YmUiXSkgeworICAgICAgICAgICAgZm9yIChsZXQgdHlwZUFy
Z3VtZW50IG9mIFsiZmxvYXQiLCAiaGFsZiJdKSB7CisgICAgICAgICAgICAgICAgdGhpcy5fbWFw
LnNldCgKKyAgICAgICAgICAgICAgICAgICAgYG5hdGl2ZSB0eXBlZGVmICR7dGV4dHVyZVR5cGV9
PCR7dHlwZUFyZ3VtZW50fT5gLAorICAgICAgICAgICAgICAgICAgICB0eXBlID0+IHsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHRoaXNbYCR7dGV4dHVyZVR5cGV9PCR7dHlwZUFyZ3VtZW50fT5g
XSA9IHR5cGU7CisgICAgICAgICAgICAgICAgICAgIH0pOworICAgICAgICAgICAgfQorICAgICAg
ICB9CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVzaG9ydCIsICJ1aW50
IiwgImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiLCAiZmxvYXQiXSkgeworICAgICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIHVjaGFy
KCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2
YWx1ZS5sb2FkVmFsdWUoKSAmIDB4ZmYpOworICAgICAgICAgICAgICAgIH0pOworICAgICAgICB9
CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBbInVjaGFyIiwgInVpbnQiLCAi
Y2hhciIsICJzaG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0
aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgdXNob3J0KCR7
cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1
ZS5sb2FkVmFsdWUoKSAmIDB4ZmZmZik7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAgIH0K
KworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAidXNob3J0Iiwg
ImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImhhbGYiLCAiZmxvYXQiXSkgeworICAgICAgICAgICAg
dGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJhdG9yIHVpbnQoJHtw
cmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVl
LmxvYWRWYWx1ZSgpID4+PiAwKTsKKyAgICAgICAgICAgICAgICB9KTsKKyAgICAgICAgfQorCisg
ICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIsICJ1c2hvcnQiLCAidWlu
dCIsICJzaG9ydCIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAgICB0aGlz
Ll9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3IgY2hhcigke3ByaW1p
dGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goY2FzdChJbnQ4
QXJyYXksIHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgfSk7CisgICAgICAg
IH0KKworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9mIFsidWNoYXIiLCAidXNob3J0
IiwgInVpbnQiLCAiY2hhciIsICJpbnQiLCAiaGFsZiIsICJmbG9hdCJdKSB7CisgICAgICAgICAg
ICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgb3BlcmF0b3Igc2hvcnQo
JHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAg
ICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KGNh
c3QoSW50MTZBcnJheSwgdmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICB9KTsK
KyAgICAgICAgfQorCisgICAgICAgIGZvciAobGV0IHByaW1pdGl2ZVR5cGUgb2YgWyJ1Y2hhciIs
ICJ1c2hvcnQiLCAidWludCIsICJjaGFyIiwgInNob3J0IiwgImhhbGYiLCAiZmxvYXQiXSkgewor
ICAgICAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICAgICBgbmF0aXZlIG9wZXJh
dG9yIGludCgke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7Cisg
ICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0
ci5ib3goY2FzdChJbnQzMkFycmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkpOworICAgICAgICAgICAg
ICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBb
InVjaGFyIiwgInVzaG9ydCIsICJ1aW50IiwgImNoYXIiLCAic2hvcnQiLCAiaW50IiwgImZsb2F0
Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2
ZSBvcGVyYXRvciBoYWxmKCR7cHJpbWl0aXZlVHlwZX0pYCwKKyAgICAgICAgICAgICAgICBmdW5j
ID0+IHsKKyAgICAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVd
KSA9PiBFUHRyLmJveChjYXN0VG9IYWxmKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAg
ICAgICAgfSk7CisgICAgICAgIH0KKworICAgICAgICBmb3IgKGxldCBwcmltaXRpdmVUeXBlIG9m
IFsidWNoYXIiLCAidXNob3J0IiwgInVpbnQiLCAiY2hhciIsICJzaG9ydCIsICJpbnQiLCAiaGFs
ZiJdKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRp
dmUgb3BlcmF0b3IgZmxvYXQoJHtwcmltaXRpdmVUeXBlfSlgLAorICAgICAgICAgICAgICAgIGZ1
bmMgPT4geworICAgICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1
ZV0pID0+IEVQdHIuYm94KE1hdGguZnJvdW5kKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAg
ICAgICAgICAgfSk7CisgICAgICAgIH0KIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAg
ICAgICAgIm5hdGl2ZSBvcGVyYXRvciBpbnQodWNoYXIpIiwKKyAgICAgICAgICAgIGBuYXRpdmUg
b3BlcmF0b3IgaW50KGF0b21pY19pbnQpYCwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFs
dWUubG9hZFZhbHVlKCkgfCAwKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpKTsKICAgICAgICAgICAg
IH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJh
dG9yIGludChmbG9hdCkiLAorICAgICAgICAgICAgYG5hdGl2ZSBvcGVyYXRvciB1aW50KGF0b21p
Y191aW50KWAsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmlt
cGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpIHwg
MCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBF
UHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0
aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1aW50KGludCkiLAor
ICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPT0oYm9vbCxib29sKSIsCiAgICAgICAg
ICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2
YWx1ZV0pID0+IEVQdHIuYm94KHZhbHVlLmxvYWRWYWx1ZSgpID4+PiAwKTsKKyAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkp
OwogICAgICAgICAgICAgfSk7CiAKKyAgICAgICAgZm9yIChsZXQgcHJpbWl0aXZlVHlwZSBvZiBb
InVpbnQiLCAiaW50IiwgImZsb2F0Il0pIHsKKyAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoCisg
ICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9wZXJhdG9yPT0oJHtwcmltaXRpdmVUeXBlfSwk
e3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAg
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9h
ZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICB0aGlzLl9tYXAu
c2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgYm9vbCBvcGVyYXRvcjwoJHtwcmltaXRpdmVU
eXBlfSwke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7CisgICAg
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
KyAgICAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPCByaWdo
dC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgfSk7CisKKyAgICAgICAgICAgIHRoaXMu
X21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9wZXJhdG9yPD0oJHtwcmlt
aXRpdmVUeXBlfSwke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVuYyA9PiB7
CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkg
PD0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAg
ICB0aGlzLl9tYXAuc2V0KAorICAgICAgICAgICAgICAgIGBuYXRpdmUgYm9vbCBvcGVyYXRvcj4o
JHtwcmltaXRpdmVUeXBlfSwke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAgICAgZnVu
YyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQs
IHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZh
bHVlKCkgPiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgfSk7CisKKyAgICAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAgICAgYG5hdGl2ZSBib29sIG9wZXJh
dG9yPj0oJHtwcmltaXRpdmVUeXBlfSwke3ByaW1pdGl2ZVR5cGV9KWAsCisgICAgICAgICAgICAg
ICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W2xlZnQsIHJpZ2h0XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQu
bG9hZFZhbHVlKCkgPj0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIH0pOwor
ICAgICAgICB9CisKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
b3BlcmF0b3IgdWludCh1Y2hhcikiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3It
KGludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCh2YWx1ZS5sb2FkVmFsdWUoKSA+Pj4g
MCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9Pgor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgoLXZhbHVlLmxvYWRWYWx1ZSgpKSB8IDApOwog
ICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJu
YXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBv
cGVyYXRvci0oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZh
bHVlKCkgPj4+IDApOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoLXZhbHVl
LmxvYWRWYWx1ZSgpKSk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0
KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hhcihpbnQpIiwKKyAgICAgICAgICAg
ICJuYXRpdmUgaW50IG9wZXJhdG9yKyhpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsK
LSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIu
Ym94KHZhbHVlLmxvYWRWYWx1ZSgpICYgMHhmZik7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRy
LmJveCgobGVmdC5sb2FkVmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAg
ICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
b3BlcmF0b3IgdWNoYXIodWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3It
KGludCxpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkg
JiAweGZmKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCBy
aWdodF0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgp
IC0gcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0
aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBvcGVyYXRvciB1Y2hhcihmbG9hdCki
LAorICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3IqKGludCxpbnQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4gRVB0ci5ib3godmFsdWUubG9hZFZhbHVlKCkgJiAweGZmKTsKKyAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+CisgICAgICAgICAg
ICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICogcmlnaHQubG9hZFZhbHVlKCkp
IHwgMCk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAg
ICAgICAgIm5hdGl2ZSBvcGVyYXRvciBmbG9hdChpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUg
aW50IG9wZXJhdG9yLyhpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KE1hdGgu
ZnJvdW5kKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1l
bnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJv
eCgobGVmdC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAg
ICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgb3Bl
cmF0b3IgZmxvYXQodWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yKyh1
aW50LHVpbnQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goTWF0aC5mcm91bmQodmFsdWUu
bG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFts
ZWZ0LCByaWdodF0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRW
YWx1ZSgpICsgcmlnaHQubG9hZFZhbHVlKCkpID4+PiAwKTsKICAgICAgICAgICAgIH0pOwogCiAg
ICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIG9wZXJhdG9yIGZsb2F0
KHVjaGFyKSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3ItKHVpbnQsdWludCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveChNYXRoLmZyb3VuZCh2YWx1ZS5sb2FkVmFsdWUo
KSkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSBy
aWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yKyhpbnQsaW50KSIs
CisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3IqKHVpbnQsdWludCkiLAogICAgICAg
ICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChb
bGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2Fk
VmFsdWUoKSArIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOworICAgICAgICAgICAgICAgICAgICBF
UHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAg
ICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSB1aW50IG9wZXJhdG9yKyh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgdWlu
dCBvcGVyYXRvci8odWludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpICsgcmlnaHQubG9hZFZhbHVl
KCkpID4+PiAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVl
KCkgLyByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKQEAgLTQwOSw2NyArNTU3LDY1IEBAIGNsYXNzIEludHJpbnNpY3Mg
ewogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAg
ICJuYXRpdmUgaW50IG9wZXJhdG9yLShpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZs
b2F0IG9wZXJhdG9yLShmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRW
YWx1ZSgpKSB8IDApOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChs
ZWZ0LmxvYWRWYWx1ZSgpIC0gcmlnaHQubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwog
CiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0
b3ItKHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvciooZmxv
YXQsZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgLSByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwor
ICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChsZWZ0LmxvYWRWYWx1ZSgp
ICogcmlnaHQubG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCxmbG9h
dCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBvcGVyYXRvci8oZmxvYXQsZmxvYXQpIiwK
ICAgICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRp
b24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0
aC5mcm91bmQobGVmdC5sb2FkVmFsdWUoKSAtIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CisgICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgLyByaWdo
dC5sb2FkVmFsdWUoKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yKihpbnQsaW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGludCBvcGVyYXRvciYoaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9
PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRd
KSA9PiB7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiBFUHRyLmJveCgobGVmdC5sb2FkVmFs
dWUoKSAqIHJpZ2h0LmxvYWRWYWx1ZSgpKSB8IDApOwotICAgICAgICAgICAgICAgIH07CisgICAg
ICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgorICAg
ICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAmIHJpZ2h0LmxvYWRW
YWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgK
LSAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcioodWludCx1aW50KSIsCisgICAgICAg
ICAgICAibmF0aXZlIGludCBvcGVyYXRvcnwoaW50LGludCkiLAogICAgICAgICAgICAgZnVuYyA9
PiB7CiAgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRd
KSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSAqIHJp
Z2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChs
ZWZ0LmxvYWRWYWx1ZSgpIHwgcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9
KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBv
cGVyYXRvciooZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9y
XihpbnQsaW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KE1hdGguZnJvdW5kKGxlZnQubG9hZFZhbHVlKCkgKiByaWdodC5sb2FkVmFsdWUo
KSkpOworICAgICAgICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSBeIHJp
Z2h0LmxvYWRWYWx1ZSgpKSB8IDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5f
bWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yLyhpbnQsaW50KSIsCisg
ICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcn4oaW50KSIsCiAgICAgICAgICAgICBmdW5j
ID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdo
dF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIC8g
cmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgofnZhbHVlLmxvYWRWYWx1ZSgpKSB8IDApOwog
ICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJu
YXRpdmUgdWludCBvcGVyYXRvci8odWludCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGlu
dCBvcGVyYXRvcjw8KGludCx1aW50KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIC8gcmlnaHQubG9hZFZhbHVl
KCkpID4+PiAwKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goKGxlZnQubG9hZFZhbHVl
KCkgPDwgcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAg
ICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3ImKGludCxp
bnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgaW50IG9wZXJhdG9yPj4oaW50LHVpbnQpIiwKICAg
ICAgICAgICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24g
PSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5s
b2FkVmFsdWUoKSAmIHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0
ci5ib3goKGxlZnQubG9hZFZhbHVlKCkgPj4gcmlnaHQubG9hZFZhbHVlKCkpIHwgMCk7CiAgICAg
ICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KApAQCAtNDgwLDIyMyArNjI2LDI5
MyBAQCBjbGFzcyBJbnRyaW5zaWNzIHsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcnwoaW50LGludCkiLAor
ICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yfCh1aW50LHVpbnQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewogICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFs
dWUoKSB8IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
KGxlZnQubG9hZFZhbHVlKCkgfCByaWdodC5sb2FkVmFsdWUoKSkgPj4+IDApOwogICAgICAgICAg
ICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdWlu
dCBvcGVyYXRvcnwodWludCx1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIHVpbnQgb3BlcmF0
b3JeKHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSB8IHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4g
MCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIF4gcmln
aHQubG9hZFZhbHVlKCkpID4+PiAwKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcl4oaW50LGludCkiLAor
ICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yfih1aW50KSIsCiAgICAgICAgICAgICBm
dW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCBy
aWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkg
XiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlv
biA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgofnZhbHVlLmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAg
ICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5h
dGl2ZSB1aW50IG9wZXJhdG9yXih1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgdWlu
dCBvcGVyYXRvcjw8KHVpbnQsdWludCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSBeIHJpZ2h0LmxvYWRWYWx1
ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1
ZSgpIDw8IHJpZ2h0LmxvYWRWYWx1ZSgpKSA+Pj4gMCk7CiAgICAgICAgICAgICB9KTsKIAogICAg
ICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3BlcmF0b3I8PChp
bnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IG9wZXJhdG9yPj4odWludCx1aW50
KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KGxlZnQubG9hZFZhbHVlKCkgPDwgcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveCgobGVmdC5sb2FkVmFsdWUoKSA+Pj4gcmlnaHQubG9hZFZhbHVlKCkpID4+
PiAwKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAg
ICAgICAibmF0aXZlIHVpbnQgb3BlcmF0b3I8PCh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJu
YXRpdmUgZmxvYXQgY29zKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KChsZWZ0LmxvYWRWYWx1ZSgpIDw8IHJpZ2h0LmxvYWRWYWx1
ZSgpKSA+Pj4gMCk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmNv
cyh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMu
X21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZlIGludCBvcGVyYXRvcj4+KGludCx1aW50KSIs
CisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHNpbihmbG9hdCkiLAogICAgICAgICAgICAgZnVu
YyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmln
aHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID4+
IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5k
KE1hdGguc2luKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAg
ICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgdWludCBvcGVyYXRvcj4+KHVp
bnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCB0YW4oZmxvYXQpIiwKICAgICAg
ICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2Fk
VmFsdWUoKSA+Pj4gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1w
bGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3go
TWF0aC5mcm91bmQoTWF0aC50YW4odmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9
KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBpbnQgb3Bl
cmF0b3J+KGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBhY29zKGZsb2F0KSIsCiAg
ICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9u
ID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94KH52YWx1ZS5sb2FkVmFsdWUoKSk7CisgICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAg
ICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmFjb3ModmFsdWUubG9hZFZhbHVlKCkpKSk7
CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAg
Im5hdGl2ZSB1aW50IG9wZXJhdG9yfih1aW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0
IGFzaW4oZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4gRVB0ci5ib3goKH52YWx1ZS5sb2FkVmFs
dWUoKSkgPj4+IDApOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3Zh
bHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5h
c2luKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgb3BlcmF0b3IvKGZsb2F0LGZs
b2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGF0YW4oZmxvYXQpIiwKICAgICAgICAg
ICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xl
ZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQo
bGVmdC5sb2FkVmFsdWUoKSAvIHJpZ2h0LmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBF
UHRyLmJveChNYXRoLmZyb3VuZChNYXRoLmF0YW4odmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAg
ICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2
ZSBib29sIG9wZXJhdG9yPT0oaW50LGludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBj
b3NoKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5jb3NoKHZhbHVlLmxvYWRWYWx1ZSgp
KSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAg
ICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5h
dGl2ZSBmbG9hdCBzaW5oKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAg
ICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmlnaHQubG9hZFZhbHVl
KCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4K
KyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5zaW5oKHZhbHVl
LmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNl
dCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KGJvb2wsYm9vbCkiLAorICAg
ICAgICAgICAgIm5hdGl2ZSBmbG9hdCB0YW5oKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+
IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0p
ID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPT0gcmln
aHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0
aC50YW5oKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAg
dGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj09KGZsb2F0
LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGNlaWwoZmxvYXQpIiwKICAgICAg
ICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAo
W2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2Fk
VmFsdWUoKSA9PSByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChN
YXRoLmZyb3VuZChNYXRoLmNlaWwodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAgICAgICB9
KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBib29sIG9w
ZXJhdG9yPChpbnQsaW50KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGV4cChmbG9hdCki
LAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRh
dGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChs
ZWZ0LmxvYWRWYWx1ZSgpIDwgcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0
ci5ib3goTWF0aC5mcm91bmQoTWF0aC5leHAodmFsdWUubG9hZFZhbHVlKCkpKSk7CiAgICAgICAg
ICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAgICAgIm5hdGl2ZSBi
b29sIG9wZXJhdG9yPCh1aW50LHVpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQgZmxv
b3IoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAgIGZ1bmMu
aW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAg
ICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAg
ICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGguZmxvb3IodmFsdWUubG9hZFZhbHVlKCkp
KSk7CiAgICAgICAgICAgICB9KTsKIAogICAgICAgICB0aGlzLl9tYXAuc2V0KAotICAgICAgICAg
ICAgIm5hdGl2ZSBib29sIG9wZXJhdG9yPChmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5h
dGl2ZSBmbG9hdCBsb2coZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAg
ICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAg
ICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8IHJpZ2h0LmxvYWRWYWx1ZSgp
KTsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+Cisg
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgubG9nKHZhbHVlLmxv
YWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgK
LSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcjw9KGludCxpbnQpIiwKKyAgICAgICAg
ICAgICJuYXRpdmUgZmxvYXQgcm91bmQoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewot
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4K
LSAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA8PSByaWdodC5s
b2FkVmFsdWUoKSk7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFs
dWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChNYXRoLmZyb3VuZChNYXRoLnJv
dW5kKHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhp
cy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcjw9KHVpbnQsdWlu
dCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9hdCBzcXJ0KGZsb2F0KSIsCiAgICAgICAgICAg
ICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0
LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVl
KCkgPD0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50
YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5m
cm91bmQoTWF0aC5zcXJ0KHZhbHVlLmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAgfSk7CiAK
ICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBvcGVyYXRv
cjw9KGZsb2F0LGZsb2F0KSIsCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IHRydW5jKGZsb2F0
KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAgIEVQdHIuYm94
KGxlZnQubG9hZFZhbHVlKCkgPD0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAgICAg
RVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC50cnVuYyh2YWx1ZS5sb2FkVmFsdWUoKSkpKTsKICAg
ICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0
aXZlIGJvb2wgb3BlcmF0b3I+KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgZmxvYXQg
ZGR4KGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPiByaWdodC5sb2FkVmFsdWUoKSk7CisgICAgICAg
ICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PiBFUHRyLmJveCgwKTsK
ICAgICAgICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAi
bmF0aXZlIGJvb2wgb3BlcmF0b3I+KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBm
bG9hdCBkZHkoZmxvYXQpIiwKICAgICAgICAgICAgIGZ1bmMgPT4gewotICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW2xlZnQsIHJpZ2h0XSkgPT4KLSAgICAgICAgICAgICAg
ICAgICAgRVB0ci5ib3gobGVmdC5sb2FkVmFsdWUoKSA+IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+IEVQdHIuYm94
KDApOwogICAgICAgICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAg
ICAgICJuYXRpdmUgYm9vbCBvcGVyYXRvcj4oZmxvYXQsZmxvYXQpIiwKKyAgICAgICAgICAgICJu
YXRpdmUgZmxvYXQgcG93KGZsb2F0LGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKICAg
ICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0g
ICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPiByaWdodC5sb2Fk
VmFsdWUoKSk7CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KE1hdGguZnJvdW5kKE1hdGgu
cG93KGxlZnQubG9hZFZhbHVlKCksIHJpZ2h0LmxvYWRWYWx1ZSgpKSkpOwogICAgICAgICAgICAg
fSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUgYm9vbCBv
cGVyYXRvcj49KGludCxpbnQpIiwKKyAgICAgICAgICAgICJuYXRpdmUgYm9vbCBpc2Zpbml0ZShm
bG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7Ci0gICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAgICAgICAgICAgICBFUHRy
LmJveChsZWZ0LmxvYWRWYWx1ZSgpID49IHJpZ2h0LmxvYWRWYWx1ZSgpKTsKKyAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAg
ICAgIEVQdHIuYm94KE51bWJlci5pc0Zpbml0ZSh2YWx1ZS5sb2FkVmFsdWUoKSkpOwogICAgICAg
ICAgICAgfSk7CiAKICAgICAgICAgdGhpcy5fbWFwLnNldCgKLSAgICAgICAgICAgICJuYXRpdmUg
Ym9vbCBvcGVyYXRvcj49KHVpbnQsdWludCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBib29sIGlz
aW5mKGZsb2F0KSIsCiAgICAgICAgICAgICBmdW5jID0+IHsKLSAgICAgICAgICAgICAgICBmdW5j
LmltcGxlbWVudGF0aW9uID0gKFtsZWZ0LCByaWdodF0pID0+Ci0gICAgICAgICAgICAgICAgICAg
IEVQdHIuYm94KGxlZnQubG9hZFZhbHVlKCkgPj0gcmlnaHQubG9hZFZhbHVlKCkpOworICAgICAg
ICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAg
ICAgICAgICAgRVB0ci5ib3goKHZhbHVlLmxvYWRWYWx1ZSgpID09IE51bWJlci5QT1NJVElWRV9J
TkZJTklUWSkgfHwgKHZhbHVlLmxvYWRWYWx1ZSgpID09IE51bWJlci5ORUdBVElWRV9JTkZJTklU
WSkpOworICAgICAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAg
ICAgICJuYXRpdmUgYm9vbCBpc25hbihmbG9hdCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7Cisg
ICAgICAgICAgICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAg
ICAgICAgICAgICAgICBFUHRyLmJveChOdW1iZXIuaXNOYU4odmFsdWUubG9hZFZhbHVlKCkpKTsK
KyAgICAgICAgICAgIH0pOworCisgICAgICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgdGhpcy4KKyAg
ICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRpdmUgYm9vbCBpc25vcm1hbCho
YWxmKSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxl
bWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGlz
TmFOKHZhbHVlLmxvYWRWYWx1ZSgpKSk7CisgICAgICAgICAgICB9KTsKKworICAgICAgICAvLyBG
SVhNRTogSW1wbGVtZW50IHRoaXMuCisgICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAg
ICAibmF0aXZlIGJvb2wgaXNub3JtYWwoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4gewor
ICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAg
ICAgICAgICAgICAgICAgRVB0ci5ib3goaXNOYU4odmFsdWUubG9hZFZhbHVlKCkpKTsKICAgICAg
ICAgICAgIH0pOwogCiAgICAgICAgIHRoaXMuX21hcC5zZXQoCi0gICAgICAgICAgICAibmF0aXZl
IGJvb2wgb3BlcmF0b3I+PShmbG9hdCxmbG9hdCkiLAorICAgICAgICAgICAgIm5hdGl2ZSBmbG9h
dCBhdGFuMihmbG9hdCxmbG9hdCkiLAogICAgICAgICAgICAgZnVuYyA9PiB7CiAgICAgICAgICAg
ICAgICAgZnVuYy5pbXBsZW1lbnRhdGlvbiA9IChbbGVmdCwgcmlnaHRdKSA9PgotICAgICAgICAg
ICAgICAgICAgICBFUHRyLmJveChsZWZ0LmxvYWRWYWx1ZSgpID49IHJpZ2h0LmxvYWRWYWx1ZSgp
KTsKKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goTWF0aC5mcm91bmQoTWF0aC5hdGFuMihs
ZWZ0LmxvYWRWYWx1ZSgpLCByaWdodC5sb2FkVmFsdWUoKSkpKTsKICAgICAgICAgICAgIH0pOwog
Ci0gICAgICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5cGVOYW1lIG9mIGFsbFZlY3RvclR5cGVO
YW1lcygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChgbmF0aXZlIHR5cGVkZWYgJHtuYXRp
dmVWZWN0b3JUeXBlTmFtZX1gLCB0eXBlID0+IHsKLSAgICAgICAgICAgICAgICB0eXBlLmlzUHJp
bWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRp
dmUgaW50IGFzaW50KGZsb2F0KSIsCisgICAgICAgICAgICBmdW5jID0+IHsKKyAgICAgICAgICAg
ICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0pID0+CisgICAgICAgICAgICAgICAg
ICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KEZsb2F0MzJBcnJheSwgSW50MzJBcnJheSwgdmFsdWUu
bG9hZFZhbHVlKCkpKTsKICAgICAgICAgICAgIH0pOwogCi0gICAgICAgIGZvciAobGV0IHN3aXp6
bGUgb2YgU3dpenpsZU9wLmZ1bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChz
d2l6emxlLnRvU3RyaW5nKCksIGZ1bmMgPT4gc3dpenpsZS5pbnN0YW50aWF0ZUltcGxlbWVudGF0
aW9uKGZ1bmMpKTsKKyAgICAgICAgdGhpcy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRpdmUg
dWludCBhc3VpbnQoZmxvYXQpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVlXSkgPT4KKyAgICAgICAgICAgICAgICAg
ICAgRVB0ci5ib3goYml0d2lzZUNhc3QoRmxvYXQzMkFycmF5LCBVaW50MzJBcnJheSwgdmFsdWUu
bG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0pOworCisgICAgICAgIHRoaXMuX21hcC5zZXQo
CisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGFzZmxvYXQoaW50KSIsCisgICAgICAgICAgICBm
dW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1ZV0p
ID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KGJpdHdpc2VDYXN0KEludDMyQXJyYXks
IEZsb2F0MzJBcnJheSwgdmFsdWUubG9hZFZhbHVlKCkpKTsKKyAgICAgICAgICAgIH0pOworCisg
ICAgICAgIHRoaXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGFzZmxvYXQo
dWludCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAgZnVuYy5pbXBs
ZW1lbnRhdGlvbiA9IChbdmFsdWVdKSA9PgorICAgICAgICAgICAgICAgICAgICBFUHRyLmJveChi
aXR3aXNlQ2FzdChVaW50MzJBcnJheSwgRmxvYXQzMkFycmF5LCB2YWx1ZS5sb2FkVmFsdWUoKSkp
OworICAgICAgICAgICAgfSk7CiAKLSAgICAgICAgZm9yIChsZXQgYm9vbE9wIG9mIE9wZXJhdG9y
Qm9vbC5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoYm9vbE9wLnRvU3Ry
aW5nKCksIGZ1bmMgPT4gYm9vbE9wLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwor
ICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHRoaXMuCisgICAgICAgIHRoaXMuX21hcC5zZXQo
CisgICAgICAgICAgICAibmF0aXZlIGZsb2F0IGYxNnRvZjMyKHVpbnQpIiwKKyAgICAgICAgICAg
IGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3ZhbHVl
XSkgPT4KKyAgICAgICAgICAgICAgICAgICAgRVB0ci5ib3goMCk7CisgICAgICAgICAgICB9KTsK
IAotICAgICAgICBmb3IgKGxldCBhbmRlckluZGV4IG9mIE9wZXJhdG9yQW5kZXJJbmRleGVyLmZ1
bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChhbmRlckluZGV4LnRvU3RyaW5n
KCksIGZ1bmMgPT4gYW5kZXJJbmRleC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsK
KyAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCB0aGlzLgorICAgICAgICB0aGlzLl9tYXAuc2V0
KAorICAgICAgICAgICAgIm5hdGl2ZSB1aW50IGYzMnRvZjE2KGZsb2F0KSIsCisgICAgICAgICAg
ICBmdW5jID0+IHsKKyAgICAgICAgICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFt2YWx1
ZV0pID0+CisgICAgICAgICAgICAgICAgICAgIEVQdHIuYm94KDApOworICAgICAgICAgICAgfSk7
CiAKLSAgICAgICAgZm9yIChsZXQgY2FzdCBvZiBCdWlsdGluVmVjdG9yQ29uc3RydWN0b3JzLmZ1
bmN0aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChjYXN0LnRvU3RyaW5nKCksIGZ1
bmMgPT4gY2FzdC5pbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKyAgICAgICAgdGhp
cy5fbWFwLnNldCgKKyAgICAgICAgICAgICJuYXRpdmUgdm9pZCBBbGxNZW1vcnlCYXJyaWVyV2l0
aEdyb3VwU3luYygpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAgIGZ1
bmMuaW1wbGVtZW50YXRpb24gPSBmdW5jdGlvbigpIHt9OworICAgICAgICAgICAgfSk7CiAKLSAg
ICAgICAgZm9yIChsZXQgZ2V0dGVyIG9mIEJ1aWx0aW5WZWN0b3JJbmRleEdldHRlci5mdW5jdGlv
bnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZ2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMg
PT4gZ2V0dGVyLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOworICAgICAgICB0aGlz
Ll9tYXAuc2V0KAorICAgICAgICAgICAgIm5hdGl2ZSB2b2lkIERldmljZU1lbW9yeUJhcnJpZXJX
aXRoR3JvdXBTeW5jKCkiLAorICAgICAgICAgICAgZnVuYyA9PiB7CisgICAgICAgICAgICAgICAg
ZnVuYy5pbXBsZW1lbnRhdGlvbiA9IGZ1bmN0aW9uKCkge307CisgICAgICAgICAgICB9KTsKIAot
ICAgICAgICBmb3IgKGxldCBzZXR0ZXIgb2YgQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmZ1bmN0
aW9ucygpKQotICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwgZnVu
YyA9PiBzZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisgICAgICAgIHRo
aXMuX21hcC5zZXQoCisgICAgICAgICAgICAibmF0aXZlIHZvaWQgR3JvdXBNZW1vcnlCYXJyaWVy
V2l0aEdyb3VwU3luYygpIiwKKyAgICAgICAgICAgIGZ1bmMgPT4geworICAgICAgICAgICAgICAg
IGZ1bmMuaW1wbGVtZW50YXRpb24gPSBmdW5jdGlvbigpIHt9OworICAgICAgICAgICAgfSk7CiAK
LSAgICAgICAgZm9yIChsZXQgZXF1YWxpdHlPcGVyYXRvciBvZiBCdWlsdGluVmVjdG9yRXF1YWxp
dHlPcGVyYXRvci5mdW5jdGlvbnMoKSkKLSAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZXF1YWxp
dHlPcGVyYXRvci50b1N0cmluZygpLCBmdW5jID0+IGVxdWFsaXR5T3BlcmF0b3IuaW5zdGFudGlh
dGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisgICAgICAgIGZvciAobGV0IG5hdGl2ZVZlY3RvclR5
cGVOYW1lIG9mIGFsbFZlY3RvclR5cGVOYW1lcygpKSB7CisgICAgICAgICAgICB0aGlzLl9tYXAu
c2V0KGBuYXRpdmUgdHlwZWRlZiAke25hdGl2ZVZlY3RvclR5cGVOYW1lfWAsIHR5cGUgPT4gewor
ICAgICAgICAgICAgICAgIHR5cGUuaXNQcmltaXRpdmUgPSB0cnVlOworICAgICAgICAgICAgfSk7
CisgICAgICAgIH0KIAogICAgICAgICBmb3IgKGxldCBnZXR0ZXIgb2YgQnVpbHRpblZlY3Rvckdl
dHRlci5mdW5jdGlvbnMoKSkKICAgICAgICAgICAgIHRoaXMuX21hcC5zZXQoZ2V0dGVyLnRvU3Ry
aW5nKCksIGZ1bmMgPT4gZ2V0dGVyLmluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVuYykpOwog
CiAgICAgICAgIGZvciAobGV0IHNldHRlciBvZiBCdWlsdGluVmVjdG9yU2V0dGVyLmZ1bmN0aW9u
cygpKQogICAgICAgICAgICAgdGhpcy5fbWFwLnNldChzZXR0ZXIudG9TdHJpbmcoKSwgZnVuYyA9
PiBzZXR0ZXIuaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKSk7CisKKyAgICAgICAgZm9y
IChsZXQgZ2V0dGVyIG9mIEJ1aWx0aW5NYXRyaXhHZXR0ZXIuZnVuY3Rpb25zKCkpCisgICAgICAg
ICAgICB0aGlzLl9tYXAuc2V0KGdldHRlci50b1N0cmluZygpLCBmdW5jID0+IGdldHRlci5pbnN0
YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpKTsKKworICAgICAgICBmb3IgKGxldCBzZXR0ZXIg
b2YgQnVpbHRpbk1hdHJpeFNldHRlci5mdW5jdGlvbnMoKSkKKyAgICAgICAgICAgIHRoaXMuX21h
cC5zZXQoc2V0dGVyLnRvU3RyaW5nKCksIGZ1bmMgPT4gc2V0dGVyLmluc3RhbnRpYXRlSW1wbGVt
ZW50YXRpb24oZnVuYykpOwogICAgIH0KIAogICAgIGFkZCh0aGluZykKZGlmZiAtLWdpdCBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL01hdHJpeFR5cGUuanMgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9NYXRyaXhUeXBlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkOTk2YmY0NjMzNzcw
Njg1MTQwYjkwMDUyZmFhMTlkY2E2MjEyYTgKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9NYXRyaXhUeXBlLmpzCkBAIC0wLDAgKzEsNjEgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworInVzZSBzdHJpY3QiOworCitj
bGFzcyBNYXRyaXhUeXBlIGV4dGVuZHMgTmF0aXZlVHlwZSB7CisgICAgY29uc3RydWN0b3Iob3Jp
Z2luLCBuYW1lLCB0eXBlQXJndW1lbnRzKQorICAgIHsKKyAgICAgICAgc3VwZXIob3JpZ2luLCBu
YW1lLCB0eXBlQXJndW1lbnRzKTsKKyAgICB9CisKKyAgICBnZXQgZWxlbWVudFR5cGUoKSB7IHJl
dHVybiB0aGlzLnR5cGVBcmd1bWVudHNbMF07IH0KKyAgICBnZXQgbnVtUm93cygpIHsgcmV0dXJu
IHRoaXMudHlwZUFyZ3VtZW50c1sxXTsgfQorICAgIGdldCBudW1Db2x1bW5zKCkgeyByZXR1cm4g
dGhpcy50eXBlQXJndW1lbnRzWzJdOyB9CisgICAgZ2V0IG51bVJvd3NWYWx1ZSgpIHsgcmV0dXJu
IHRoaXMubnVtUm93cy52YWx1ZTsgfQorICAgIGdldCBudW1Db2x1bW5zVmFsdWUoKSB7IHJldHVy
biB0aGlzLm51bUNvbHVtbnMudmFsdWU7IH0KKyAgICBnZXQgc2l6ZSgpIHsgcmV0dXJuIHRoaXMu
ZWxlbWVudFR5cGUuc2l6ZSAqIHRoaXMubnVtUm93c1ZhbHVlICogdGhpcy5udW1Db2x1bW5zVmFs
dWU7IH0KKworICAgIHVuaWZ5SW1wbCh1bmlmaWNhdGlvbkNvbnRleHQsIG90aGVyKQorICAgIHsK
KyAgICAgICAgaWYgKCEob3RoZXIgaW5zdGFuY2VvZiBNYXRyaXhUeXBlKSkKKyAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKKworICAgICAgICBpZiAodGhpcy5udW1Sb3dzVmFsdWUgIT09IG90aGVy
Lm51bVJvd3NWYWx1ZSB8fCB0aGlzLm51bUNvbHVtbnNWYWx1ZSAhPT0gb3RoZXIubnVtQ29sdW1u
c1ZhbHVlKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgICAgIHJldHVybiB0aGlz
LmVsZW1lbnRUeXBlLnVuaWZ5KHVuaWZpY2F0aW9uQ29udGV4dCwgb3RoZXIuZWxlbWVudFR5cGUp
OworICAgIH0KKworICAgIHBvcHVsYXRlRGVmYXVsdFZhbHVlKGJ1ZmZlciwgb2Zmc2V0KQorICAg
IHsKKyAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLm51bVJvd3NWYWx1ZSAqIHRoaXMu
cnVuQ29sdW1uc1ZhbHVlOyArK2kpCisgICAgICAgICAgICB0aGlzLmVsZW1lbnRUeXBlLnBvcHVs
YXRlRGVmYXVsdFZhbHVlKGJ1ZmZlciwgb2Zmc2V0ICsgaSAqIHRoaXMuZWxlbWVudFR5cGUuc2l6
ZSk7CisgICAgfQorCisgICAgdG9TdHJpbmcoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGBuYXRp
dmUgdHlwZWRlZiBtYXRyaXg8JHt0aGlzLmVsZW1lbnRUeXBlfSwgJHt0aGlzLm51bVJvd3NWYWx1
ZX0sICR7dGhpcy5udW1Db2x1bW5zVmFsdWV9PmA7CisgICAgfQorfQpkaWZmIC0tZ2l0IGEvVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmFtZUNvbnRleHQuanMgYi9Ub29scy9XZWJHUFVT
aGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5qcwppbmRleCBkYzY4NTc4ZmY1NTZiMzEyYjA5
MjdlZjNjMGRmZmEwMDY4ZjFiZTYzLi5jODk5NjhjNzc5NjA3YjdjYWJjYzZhNWY5NjliNGFiOTEz
ZTcyNjNlIDEwMDY0NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29u
dGV4dC5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9OYW1lQ29udGV4dC5q
cwpAQCAtNzEsNyArNzEsNyBAQCBjbGFzcyBOYW1lQ29udGV4dCB7CiAKICAgICAgICAgaWYgKHRo
aW5nLmtpbmQgPT0gVHlwZSkgewogICAgICAgICAgICAgdGhpcy5fc2V0LmFkZCh0aGluZyk7Ci0g
ICAgICAgICAgICBpZiAodGhpbmcubmFtZSA9PSAidmVjdG9yIikgeworICAgICAgICAgICAgaWYg
KHRoaW5nLnR5cGVBcmd1bWVudHMgJiYgdGhpbmcudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMCkg
ewogICAgICAgICAgICAgICAgIGxldCBhcnJheSA9IHRoaXMuX21hcC5nZXQodGhpbmcubmFtZSk7
CiAgICAgICAgICAgICAgICAgaWYgKCFhcnJheSkgewogICAgICAgICAgICAgICAgICAgICBhcnJh
eSA9IFtdOwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvTmF0aXZl
VHlwZS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL05hdGl2ZVR5cGUuanMKaW5k
ZXggMjM4MWI1YTZiMGIwMTBlMGZkZDRkYzUzNTUwYThlYTZiNGY4MzQ3Yi4uYjM2OGEyZThiMjRm
NTQ4ZWFiODhhMjgyNGI0OTViZTIzYzg3Y2I4NSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvTmF0aXZlVHlwZS5qcworKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9OYXRpdmVUeXBlLmpzCkBAIC02Niw2ICs2Niw4IEBAIGNsYXNzIE5hdGl2ZVR5cGUg
ZXh0ZW5kcyBUeXBlIHsKICAgICB7CiAgICAgICAgIGlmIChuYW1lID09ICJ2ZWN0b3IiKQogICAg
ICAgICAgICAgcmV0dXJuIG5ldyBWZWN0b3JUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50
cyk7CisgICAgICAgIGlmIChuYW1lID09ICJtYXRyaXgiKQorICAgICAgICAgICAgcmV0dXJuIG5l
dyBNYXRyaXhUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CiAKICAgICAgICAgcmV0
dXJuIG5ldyBOYXRpdmVUeXBlKG9yaWdpbiwgbmFtZSwgdHlwZUFyZ3VtZW50cyk7CiAgICAgfQpk
aWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlcklu
ZGV4LmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4
LmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2NzAzNzFmYjkwZjJhMWZkMTVjMmRk
ZjZjNGEzOTZjMGYyMzljZWJmLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL09wZXJhdG9yQW5kZXJJbmRl
eC5qcworKysgL2Rldi9udWxsCkBAIC0xLDcxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAot
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQot
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJpY3QiOwotCi1jbGFzcyBPcGVyYXRvckFu
ZGVySW5kZXhlciB7Ci0gICAgY29uc3RydWN0b3IoYmFzZVR5cGVOYW1lLCBhZGRyZXNzU3BhY2Up
Ci0gICAgewotICAgICAgICB0aGlzLl9iYXNlVHlwZU5hbWUgPSBiYXNlVHlwZU5hbWU7Ci0gICAg
ICAgIHRoaXMuX2FkZHJlc3NTcGFjZSA9IGFkZHJlc3NTcGFjZTsKLSAgICB9Ci0KLSAgICBnZXQg
YWRkcmVzc1NwYWNlKCkgeyByZXR1cm4gdGhpcy5fYWRkcmVzc1NwYWNlOyB9Ci0gICAgZ2V0IGJh
c2VUeXBlTmFtZSgpIHsgcmV0dXJuIHRoaXMuX2Jhc2VUeXBlTmFtZTsgfQotCi0gICAgdG9TdHJp
bmcoKQotICAgIHsKLSAgICAgICAgcmV0dXJuIGBuYXRpdmUgJHt0aGlzLmJhc2VUeXBlTmFtZX0q
ICR7dGhpcy5hZGRyZXNzU3BhY2V9IG9wZXJhdG9yJltdKCR7dGhpcy5iYXNlVHlwZU5hbWV9W10g
JHt0aGlzLmFkZHJlc3NTcGFjZX0sdWludClgOwotICAgIH0KLQotICAgIHN0YXRpYyBmdW5jdGlv
bnMoKQotICAgIHsKLSAgICAgICAgaWYgKCF0aGlzLl9mdW5jdGlvbnMpIHsKLSAgICAgICAgICAg
IHRoaXMuX2Z1bmN0aW9ucyA9IFtdOwotCi0gICAgICAgICAgICBjb25zdCB0eXBlTmFtZXMgPSBb
ICJ1aW50IiwgImludCIsICJmbG9hdCIsICJib29sIiBdLmNvbmNhdChhbGxWZWN0b3JUeXBlTmFt
ZXMoKSk7Ci0gICAgICAgICAgICBjb25zdCBhZGRyZXNzU3BhY2VzID0gWyAidGhyZWFkIiwgInRo
cmVhZGdyb3VwIiwgImRldmljZSIsICJjb25zdGFudCIgXTsKLQotICAgICAgICAgICAgZm9yIChs
ZXQgYWRkcmVzc1NwYWNlIG9mIGFkZHJlc3NTcGFjZXMpIHsKLSAgICAgICAgICAgICAgICBmb3Ig
KGxldCB0eXBlTmFtZSBvZiB0eXBlTmFtZXMpCi0gICAgICAgICAgICAgICAgICAgIHRoaXMuX2Z1
bmN0aW9ucy5wdXNoKG5ldyBPcGVyYXRvckFuZGVySW5kZXhlcih0eXBlTmFtZSwgYWRkcmVzc1Nw
YWNlKSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIHRoaXMuX2Z1
bmN0aW9uczsKLSAgICB9Ci0KLSAgICBpbnN0YW50aWF0ZUltcGxlbWVudGF0aW9uKGZ1bmMpCi0g
ICAgewotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uID0gKFtyZWYsIGluZGV4XSwgbm9kZSkg
PT4gewotICAgICAgICAgICAgcmVmID0gcmVmLmxvYWRWYWx1ZSgpOwotICAgICAgICAgICAgaWYg
KCFyZWYpCi0gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUcmFwRXJyb3Iobm9kZS5vcmlnaW4u
b3JpZ2luU3RyaW5nLCAiTnVsbCBkZXJlZmVyZW5jZSIpOwotICAgICAgICAgICAgaW5kZXggPSBp
bmRleC5sb2FkVmFsdWUoKTsKLSAgICAgICAgICAgIGlmIChpbmRleCA+IHJlZi5sZW5ndGgpCi0g
ICAgICAgICAgICAgICAgdGhyb3cgbmV3IFdUcmFwRXJyb3Iobm9kZS5vcmlnaW4ub3JpZ2luU3Ry
aW5nLCAiQXJyYXkgaW5kZXggIiArIGluZGV4ICsgIiBpcyBvdXQgb2YgYm91bmRzIG9mICIgKyBy
ZWYpOwotICAgICAgICAgICAgcmV0dXJuIEVQdHIuYm94KHJlZi5wdHIucGx1cyhpbmRleCAqIG5v
ZGUuYXJndW1lbnRUeXBlc1swXS5lbGVtZW50VHlwZS5zaXplKSk7Ci0gICAgICAgIH07Ci0gICAg
ICAgIGZ1bmMuaW1wbGVtZW50YXRpb25EYXRhID0gdGhpczsKLSAgICB9Ci19ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanMgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VS
SS9PcGVyYXRvckFuZGVySW5kZXhlci5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wMTJmMDY3ODBmN2FkOTMyMmQ2
YzdiZTQ3OTBjZDQ0NjE4MWY4OWI0Ci0tLSAvZGV2L251bGwKKysrIGIvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JBbmRlckluZGV4ZXIuanMKQEAgLTAsMCArMSw1NSBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMu
IGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAq
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisidXNlIHN0cmljdCI7
CisKK2NsYXNzIE9wZXJhdG9yQW5kZXJJbmRleGVyIHsKKyAgICBjb25zdHJ1Y3RvcihiYXNlVHlw
ZU5hbWUsIGFkZHJlc3NTcGFjZSkKKyAgICB7CisgICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9
IGJhc2VUeXBlTmFtZTsKKyAgICAgICAgdGhpcy5fYWRkcmVzc1NwYWNlID0gYWRkcmVzc1NwYWNl
OworICAgIH0KKworICAgIGdldCBhZGRyZXNzU3BhY2UoKSB7IHJldHVybiB0aGlzLl9hZGRyZXNz
U3BhY2U7IH0KKyAgICBnZXQgYmFzZVR5cGVOYW1lKCkgeyByZXR1cm4gdGhpcy5fYmFzZVR5cGVO
YW1lOyB9CisKKyAgICB0b1N0cmluZygpCisgICAgeworICAgICAgICByZXR1cm4gYG5hdGl2ZSAk
e3RoaXMuYmFzZVR5cGVOYW1lfSogJHt0aGlzLmFkZHJlc3NTcGFjZX0gb3BlcmF0b3ImW10oJHt0
aGlzLmJhc2VUeXBlTmFtZX1bXSAke3RoaXMuYWRkcmVzc1NwYWNlfSx1aW50KWA7CisgICAgfQor
CisgICAgaW5zdGFudGlhdGVJbXBsZW1lbnRhdGlvbihmdW5jKQorICAgIHsKKyAgICAgICAgZnVu
Yy5pbXBsZW1lbnRhdGlvbiA9IChbcmVmLCBpbmRleF0sIG5vZGUpID0+IHsKKyAgICAgICAgICAg
IHJlZiA9IHJlZi5sb2FkVmFsdWUoKTsKKyAgICAgICAgICAgIGlmICghcmVmKQorICAgICAgICAg
ICAgICAgIHRocm93IG5ldyBXVHJhcEVycm9yKG5vZGUub3JpZ2luLm9yaWdpblN0cmluZywgIk51
bGwgZGVyZWZlcmVuY2UiKTsKKyAgICAgICAgICAgIGluZGV4ID0gaW5kZXgubG9hZFZhbHVlKCk7
CisgICAgICAgICAgICBpZiAoaW5kZXggPiByZWYubGVuZ3RoKQorICAgICAgICAgICAgICAgIHRo
cm93IG5ldyBXVHJhcEVycm9yKG5vZGUub3JpZ2luLm9yaWdpblN0cmluZywgIkFycmF5IGluZGV4
ICIgKyBpbmRleCArICIgaXMgb3V0IG9mIGJvdW5kcyBvZiAiICsgcmVmKTsKKyAgICAgICAgICAg
IHJldHVybiBFUHRyLmJveChyZWYucHRyLnBsdXMoaW5kZXggKiBub2RlLmFyZ3VtZW50VHlwZXNb
MF0uZWxlbWVudFR5cGUuc2l6ZSkpOworICAgICAgICB9OworICAgICAgICBmdW5jLmltcGxlbWVu
dGF0aW9uRGF0YSA9IHRoaXM7CisgICAgfQorfQpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvT3BlcmF0b3JCb29sLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1
YWdlUkkvT3BlcmF0b3JCb29sLmpzCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1OGJi
MGUwOWI4MGJlZTEwNzA4OWIxYzlkMjAwY2JjNjhhNWNiOWQzLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L09wZXJhdG9yQm9vbC5qcworKysgL2Rldi9udWxsCkBAIC0xLDY4ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElT
JycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotInVzZSBzdHJpY3QiOwotCi1jbGFz
cyBPcGVyYXRvckJvb2wgewotICAgIGNvbnN0cnVjdG9yKGJhc2VUeXBlTmFtZSkKLSAgICB7Ci0g
ICAgICAgIHRoaXMuX2Jhc2VUeXBlTmFtZSA9IGJhc2VUeXBlTmFtZTsKLSAgICB9Ci0KLSAgICBn
ZXQgYmFzZVR5cGVOYW1lKCkgeyByZXR1cm4gdGhpcy5fYmFzZVR5cGVOYW1lOyB9Ci0KLSAgICB0
b1N0cmluZygpCi0gICAgewotICAgICAgICByZXR1cm4gYG5hdGl2ZSBvcGVyYXRvciBib29sKCR7
dGhpcy5iYXNlVHlwZU5hbWV9KWA7Ci0gICAgfQotCi0gICAgc3RhdGljIGZ1bmN0aW9ucygpCi0g
ICAgewotICAgICAgICAvLyBGSVhNRTogVGhlc2Ugb3BlcmF0b3JzIHNob3VsZCBiZSBpbiB0aGUg
c3RhbmRhcmQgbGlicmFyeSB3aGVyZSBwb3NzaWJsZS4KLSAgICAgICAgaWYgKCFPcGVyYXRvckJv
b2wuX2Z1bmN0aW9ucykgewotICAgICAgICAgICAgT3BlcmF0b3JCb29sLl9mdW5jdGlvbnMgPSBb
XTsKLQotICAgICAgICAgICAgLy8gYm9vbCBpcyBub3QgaW5jbHVkZWQgYmVjYXVzZSB0aGlzIGlz
IGdlbmVyYXRlZCBieSB0aGUgY29weSBjb25zdHJ1Y3Rvci4KLSAgICAgICAgICAgIC8vIEZJWE1F
OiBJbmNsdWRlIGFsbCBuYXRpdmUgdHlwZXMuCi0gICAgICAgICAgICBjb25zdCB0eXBlTmFtZXMg
PSBbICJ1Y2hhciIsICJ1aW50IiwgImludCIsICJmbG9hdCIgXS5jb25jYXQoYWxsVmVjdG9yVHlw
ZU5hbWVzKCkpOwotCi0gICAgICAgICAgICBmb3IgKGxldCB0eXBlTmFtZSBvZiB0eXBlTmFtZXMp
Ci0gICAgICAgICAgICAgICAgT3BlcmF0b3JCb29sLl9mdW5jdGlvbnMucHVzaChuZXcgT3BlcmF0
b3JCb29sKHR5cGVOYW1lKSk7Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIE9wZXJhdG9yQm9v
bC5fZnVuY3Rpb25zOwotICAgIH0KLQotICAgIGluc3RhbnRpYXRlSW1wbGVtZW50YXRpb24oZnVu
YykKLSAgICB7Ci0gICAgICAgIGZ1bmMuaW1wbGVtZW50YXRpb24gPSAoW3JlZl0sIG5vZGUpID0+
IHsKLSAgICAgICAgICAgIGNvbnN0IHNpemUgPSBub2RlLmFyZ3VtZW50VHlwZXNbMF0uc2l6ZTsK
LSAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZTsgKytpKSB7Ci0gICAgICAgICAg
ICAgICAgaWYgKCEhcmVmLmdldChpKSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEVQdHIu
Ym94KHRydWUpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgcmV0dXJuIEVQdHIuYm94KGZh
bHNlKTsKLSAgICAgICAgfQotICAgICAgICBmdW5jLmltcGxlbWVudGF0aW9uRGF0YSA9IHRoaXM7
Ci0gICAgfQotfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1Rvb2xz
L1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1BhcnNlLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUGFyc2UuanMKaW5kZXggYTIwMjQ4ZDM2MTljMDUwZjdkNGIzOGEyZWEwY2QwYjI5
ZjJjMTg3OS4uMzIwNTViMzFiZmJkMWU1OGQxYjY3NmFkYjcwYWI4MDM4ZGU0MjhkZiAxMDA2NDQK
LS0tIGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUGFyc2UuanMKKysrIGIvVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUGFyc2UuanMKQEAgLTk1MywyMyArOTUzLDI5IEBAIGZ1
bmN0aW9uIHBhcnNlKHByb2dyYW0sIG9yaWdpbiwgb3JpZ2luS2luZCwgbGluZU51bWJlck9mZnNl
dCwgdGV4dCkKICAgICB9CiAgICAgCiAgICAgZm9yICg7OykgeworICAgICAgICB2YXIgdGhpbmc7
CiAgICAgICAgIGxldCB0b2tlbiA9IGxleGVyLnBlZWsoKTsKICAgICAgICAgaWYgKCF0b2tlbikK
ICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgaWYgKHRva2VuLnRleHQgPT0gIjsiKQogICAg
ICAgICAgICAgbGV4ZXIubmV4dCgpOwogICAgICAgICBlbHNlIGlmICh0b2tlbi50ZXh0ID09ICJ0
eXBlZGVmIikKLSAgICAgICAgICAgIHByb2dyYW0uYWRkKHBhcnNlVHlwZURlZigpKTsKKyAgICAg
ICAgICAgIHRoaW5nID0gcGFyc2VUeXBlRGVmKCk7CiAgICAgICAgIGVsc2UgaWYgKG9yaWdpbktp
bmQgPT0gIm5hdGl2ZSIgJiYgdG9rZW4udGV4dCA9PSAibmF0aXZlIikKLSAgICAgICAgICAgIHBy
b2dyYW0uYWRkKHBhcnNlTmF0aXZlKCkpOworICAgICAgICAgICAgdGhpbmcgPSBwYXJzZU5hdGl2
ZSgpOwogICAgICAgICBlbHNlIGlmIChvcmlnaW5LaW5kID09ICJuYXRpdmUiICYmIHRva2VuLnRl
eHQgPT0gInJlc3RyaWN0ZWQiKQotICAgICAgICAgICAgcHJvZ3JhbS5hZGQocGFyc2VSZXN0cmlj
dGVkRnVuY0RlZigpKTsKKyAgICAgICAgICAgIHRoaW5nID0gcGFyc2VSZXN0cmljdGVkRnVuY0Rl
ZigpOwogICAgICAgICBlbHNlIGlmICh0b2tlbi50ZXh0ID09ICJzdHJ1Y3QiKQotICAgICAgICAg
ICAgcHJvZ3JhbS5hZGQocGFyc2VTdHJ1Y3RUeXBlKCkpOworICAgICAgICAgICAgdGhpbmcgPSBw
YXJzZVN0cnVjdFR5cGUoKTsKICAgICAgICAgZWxzZSBpZiAodG9rZW4udGV4dCA9PSAiZW51bSIp
Ci0gICAgICAgICAgICBwcm9ncmFtLmFkZChwYXJzZUVudW1UeXBlKCkpOworICAgICAgICAgICAg
dGhpbmcgPSBwYXJzZUVudW1UeXBlKCk7CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIHByb2dy
YW0uYWRkKHBhcnNlRnVuY0RlZigpKTsKKyAgICAgICAgICAgIHRoaW5nID0gcGFyc2VGdW5jRGVm
KCk7CisgICAgICAgIGlmICh0aGluZykgeworICAgICAgICAgICAgcHJpbnQoYFBhcnNlZCAke3Ro
aW5nfWApOworICAgICAgICAgICAgLy95aWVsZDsKKyAgICAgICAgICAgIHByb2dyYW0uYWRkKHRo
aW5nKTsKKyAgICAgICAgfQogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hh
ZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1ByZXBhcmUuanMKaW5kZXggOWZhY2E4NmUyMDU3NTViMmM2YTY2ZjQxMmI1NjkyZTk5ZTdiMDNh
Zi4uN2Q2MzEyOWM5MWY1MWNiYTcwZmY5NGNkYzJlYTQxNmMxZTk2MDk1ZCAxMDA2NDQKLS0tIGEv
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUHJlcGFyZS5qcworKysgYi9Ub29scy9XZWJH
UFVTaGFkaW5nTGFuZ3VhZ2VSSS9QcmVwYXJlLmpzCkBAIC0yNiw1MiArMjYsMTIyIEBACiAKIGxl
dCBwcmVwYXJlID0gKCgpID0+IHsKICAgICBsZXQgc3RhbmRhcmRQcm9ncmFtOworICAgIGZ1bmN0
aW9uIHRpbWVDYWxsYmFjayhtZXNzYWdlLCBjYWxsYmFjaykgeworICAgICAgICBwcmludChtZXNz
YWdlKTsKKyAgICAgICAgdmFyIHRoZW4gPSBEYXRlLm5vdygpOworICAgICAgICBjYWxsYmFjaygp
OworICAgICAgICB2YXIgbm93ID0gRGF0ZS5ub3coKTsKKyAgICAgICAgcHJpbnQoYFRvb2sgJHtu
b3cgLSB0aGVufW1zLmApOworICAgIH0KKwogICAgIHJldHVybiBmdW5jdGlvbihvcmlnaW4sIGxp
bmVOdW1iZXJPZmZzZXQsIHRleHQpIHsKICAgICAgICAgaWYgKCFzdGFuZGFyZFByb2dyYW0pIHsK
ICAgICAgICAgICAgIHN0YW5kYXJkUHJvZ3JhbSA9IG5ldyBQcm9ncmFtKCk7CiAgICAgICAgICAg
ICBsZXQgZmlyc3RMaW5lT2ZTdGFuZGFyZExpYnJhcnkgPSAyODsgLy8gU2VlIFN0YW5kYXJkTGli
cmFyeS5qcy4KLSAgICAgICAgICAgIHBhcnNlKHN0YW5kYXJkUHJvZ3JhbSwgIi9pbnRlcm5hbC9z
dGRsaWIiLCAibmF0aXZlIiwgZmlyc3RMaW5lT2ZTdGFuZGFyZExpYnJhcnkgLSAxLCBzdGFuZGFy
ZExpYnJhcnkpOworICAgICAgICAgICAgdGltZUNhbGxiYWNrKCJQYXJzaW5nIHN0YW5kYXJkIGxp
YnJhcnkuLi4iLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICBwYXJzZShzdGFuZGFyZFBy
b2dyYW0sICIvaW50ZXJuYWwvc3RkbGliIiwgIm5hdGl2ZSIsIGZpcnN0TGluZU9mU3RhbmRhcmRM
aWJyYXJ5IC0gMSwgc3RhbmRhcmRMaWJyYXJ5KTsKKyAgICAgICAgICAgIH0pOwogICAgICAgICB9
CiAgICAgICAgIAotICAgICAgICBsZXQgcHJvZ3JhbSA9IGNsb25lUHJvZ3JhbShzdGFuZGFyZFBy
b2dyYW0pOworICAgICAgICBsZXQgcHJvZ3JhbTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJDbG9u
aW5nIHByb2dyYW0uLi4iLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHByb2dyYW0gPSBjbG9u
ZVByb2dyYW0oc3RhbmRhcmRQcm9ncmFtKTsKKyAgICAgICAgfSk7CiAgICAgICAgIGlmIChhcmd1
bWVudHMubGVuZ3RoKSB7Ci0gICAgICAgICAgICBwYXJzZShwcm9ncmFtLCBvcmlnaW4sICJ1c2Vy
IiwgbGluZU51bWJlck9mZnNldCwgdGV4dCk7Ci0gICAgICAgICAgICBwcm9ncmFtID0gcHJvZ3Jh
bVdpdGhVbm5lY2Vzc2FyeVRoaW5nc1JlbW92ZWQocHJvZ3JhbSk7CisgICAgICAgICAgICB0aW1l
Q2FsbGJhY2soIlBhcnNpbmcgdXNlciBwcm9ncmFtIiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAg
ICAgICAgcGFyc2UocHJvZ3JhbSwgb3JpZ2luLCAidXNlciIsIGxpbmVOdW1iZXJPZmZzZXQsIHRl
eHQpOworICAgICAgICAgICAgfSk7CisgICAgICAgICAgICB0aW1lQ2FsbGJhY2soIlJlbW92aW5n
IHVubmVjZXNzYXJ5IHRoaW5ncyIsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgIHByb2dy
YW0gPSBwcm9ncmFtV2l0aFVubmVjZXNzYXJ5VGhpbmdzUmVtb3ZlZChwcm9ncmFtKTsKKyAgICAg
ICAgICAgIH0pOwogICAgICAgICB9CiAgICAgICAgIAotICAgICAgICBmb2xkQ29uc3RleHBycyhw
cm9ncmFtKTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJGb2xkaW5nIGNvbnN0ZXhwcnMiLCBmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgIGZvbGRDb25zdGV4cHJzKHByb2dyYW0pOworICAgICAgICB9
KTsKIAogICAgICAgICBsZXQgbmFtZVJlc29sdmVyID0gY3JlYXRlTmFtZVJlc29sdmVyKHByb2dy
YW0pOwotICAgICAgICByZXNvbHZlTmFtZXNJblR5cGVzKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7
Ci0gICAgICAgIHJlc29sdmVUeXBlRGVmc0luVHlwZXMocHJvZ3JhbSk7Ci0gICAgICAgIGNoZWNr
UmVjdXJzaXZlVHlwZXMocHJvZ3JhbSk7Ci0gICAgICAgIHN5bnRoZXNpemVTdHJ1Y3RBY2Nlc3Nv
cnMocHJvZ3JhbSk7Ci0gICAgICAgIHN5bnRoZXNpemVPcGVyYXRvckJvb2wocHJvZ3JhbSk7Ci0g
ICAgICAgIHN5bnRoZXNpemVFbnVtRnVuY3Rpb25zKHByb2dyYW0pOwotICAgICAgICBzeW50aGVz
aXplQXJyYXlPcGVyYXRvckxlbmd0aChwcm9ncmFtKTsKLSAgICAgICAgc3ludGhlc2l6ZUNvcHlD
b25zdHJ1Y3Rvck9wZXJhdG9yKHByb2dyYW0pOwotICAgICAgICBzeW50aGVzaXplRGVmYXVsdENv
bnN0cnVjdG9yT3BlcmF0b3IocHJvZ3JhbSk7Ci0gICAgICAgIHJlc29sdmVOYW1lc0luRnVuY3Rp
b25zKHByb2dyYW0sIG5hbWVSZXNvbHZlcik7Ci0gICAgICAgIHJlc29sdmVUeXBlRGVmc0luRnVu
Y3Rpb25zKHByb2dyYW0pOwotICAgICAgICBjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9ncmFt
KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJSZXNvbHZpbmcgbmFtZXMgaW4gVHlwZXMiLCBmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgIHJlc29sdmVOYW1lc0luVHlwZXMocHJvZ3JhbSwgbmFtZVJl
c29sdmVyKTsKKyAgICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiUmVzb2x2aW5nIHR5
cGVkZWZzIGluIHR5cGVzIiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICByZXNvbHZlVHlwZURl
ZnNJblR5cGVzKHByb2dyYW0pOworICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJD
aGVja2luZyByZWN1cnNpdmUgdHlwZXMiLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGNoZWNr
UmVjdXJzaXZlVHlwZXMocHJvZ3JhbSk7CisgICAgICAgIH0pOworICAgICAgICB0aW1lQ2FsbGJh
Y2soIlN5bnRoZXNpemluZyBzdHJ1Y3QgYWNjZXNzb3JzIiwgZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICBzeW50aGVzaXplU3RydWN0QWNjZXNzb3JzKHByb2dyYW0pOworICAgICAgICB9KTsKKyAg
ICAgICAgdGltZUNhbGxiYWNrKCJTeW50aGVzaXppbmcgZW51bSBmdW5jdGlvbnMiLCBmdW5jdGlv
bigpIHsKKyAgICAgICAgICAgIHN5bnRoZXNpemVFbnVtRnVuY3Rpb25zKHByb2dyYW0pOworICAg
ICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJTeW50aGVzaXppbmcgYXJyYXkgb3BlcmF0
b3IgbGVuZ3RoIiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBzeW50aGVzaXplQXJyYXlPcGVy
YXRvckxlbmd0aChwcm9ncmFtKTsKKyAgICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygi
U3ludGhlc2l6aW5nIGNvcHkgY29uc3RydWN0b3Igb3BlcmF0b3IiLCBmdW5jdGlvbigpIHsKKyAg
ICAgICAgICAgIHN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvcihwcm9ncmFtKTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiU3ludGhlc2l6aW5nIGRlZmF1bHQgY29u
c3RydWN0b3Igb3BlcmF0b3IiLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHN5bnRoZXNpemVE
ZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvcihwcm9ncmFtKTsKKyAgICAgICAgfSk7CisgICAgICAg
IHRpbWVDYWxsYmFjaygiUmVzb2x2aW5nIG5hbWVzIGluIGZ1bmN0aW9ucyIsIGZ1bmN0aW9uKCkg
eworICAgICAgICAgICAgcmVzb2x2ZU5hbWVzSW5GdW5jdGlvbnMocHJvZ3JhbSwgbmFtZVJlc29s
dmVyKTsKKyAgICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiUmVzb2x2aW5nIHR5cGVk
ZWZzIGluIGZ1bmN0aW9ucyIsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgcmVzb2x2ZVR5cGVE
ZWZzSW5GdW5jdGlvbnMocHJvZ3JhbSk7CisgICAgICAgIH0pOworICAgICAgICB0aW1lQ2FsbGJh
Y2soIkNoZWNraW5nIHR5cGVzIHdpdGggYXJndW1lbnRzIiwgZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICBjaGVja1R5cGVzV2l0aEFyZ3VtZW50cyhwcm9ncmFtKTsKKyAgICAgICAgfSk7CiAgICAg
ICAgIAotICAgICAgICBjaGVjayhwcm9ncmFtKTsKLSAgICAgICAgY2hlY2tMaXRlcmFsVHlwZXMo
cHJvZ3JhbSk7Ci0gICAgICAgIHJlc29sdmVQcm9wZXJ0aWVzKHByb2dyYW0pOwotICAgICAgICBm
aW5kSGlnaFpvbWJpZXMocHJvZ3JhbSk7Ci0gICAgICAgIGNoZWNrTGl0ZXJhbFR5cGVzKHByb2dy
YW0pOwotICAgICAgICBjaGVja1Byb2dyYW1XcmFwcGVkKHByb2dyYW0pOwotICAgICAgICBjaGVj
a1JldHVybnMocHJvZ3JhbSk7Ci0gICAgICAgIGNoZWNrVW5yZWFjaGFibGVDb2RlKHByb2dyYW0p
OwotICAgICAgICBjaGVja0xvb3BzKHByb2dyYW0pOwotICAgICAgICBjaGVja1JlY3Vyc2lvbihw
cm9ncmFtKTsKLSAgICAgICAgY2hlY2tQcm9ncmFtV3JhcHBlZChwcm9ncmFtKTsKLSAgICAgICAg
Y2hlY2tUeXBlc1dpdGhBcmd1bWVudHMocHJvZ3JhbSk7Ci0gICAgICAgIGZpbmRIaWdoWm9tYmll
cyhwcm9ncmFtKTsKLSAgICAgICAgcHJvZ3JhbS52aXNpdChuZXcgU3RydWN0TGF5b3V0QnVpbGRl
cigpKTsKLSAgICAgICAgaW5saW5lKHByb2dyYW0pOworICAgICAgICB0aW1lQ2FsbGJhY2soIkNo
ZWNraW5nLi4uIiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBjaGVjayhwcm9ncmFtKTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgbGl0ZXJhbCB0eXBlcyIs
IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgY2hlY2tMaXRlcmFsVHlwZXMocHJvZ3JhbSk7Cisg
ICAgICAgIH0pOworICAgICAgICB0aW1lQ2FsbGJhY2soIlJlc29sdmluZyBwcm9wZXJ0aWVzIiwg
ZnVuY3Rpb24oKSB7CisgICAgICAgICAgICByZXNvbHZlUHJvcGVydGllcyhwcm9ncmFtKTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiRmluZGluZyBoaWdoIHpvbWJpZXMiLCBm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgIGZpbmRIaWdoWm9tYmllcyhwcm9ncmFtKTsKKyAgICAg
ICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgbGl0ZXJhbCB0eXBlcyAyIiwg
ZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBjaGVja0xpdGVyYWxUeXBlcyhwcm9ncmFtKTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgcHJvZ3JhbSB3cmFwcGVk
IiwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBjaGVja1Byb2dyYW1XcmFwcGVkKHByb2dyYW0p
OworICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJDaGVja2luZyByZXR1cm5zIiwg
ZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBjaGVja1JldHVybnMocHJvZ3JhbSk7CisgICAgICAg
IH0pOworICAgICAgICB0aW1lQ2FsbGJhY2soIkNoZWNraW5nIHVucmVhY2hhYmxlIGNvZGUiLCBm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgIGNoZWNrVW5yZWFjaGFibGVDb2RlKHByb2dyYW0pOwor
ICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJDaGVja2luZyBsb29wcyIsIGZ1bmN0
aW9uKCkgeworICAgICAgICAgICAgY2hlY2tMb29wcyhwcm9ncmFtKTsKKyAgICAgICAgfSk7Cisg
ICAgICAgIHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgcmVjdXJzaW9uIiwgZnVuY3Rpb24oKSB7Cisg
ICAgICAgICAgICBjaGVja1JlY3Vyc2lvbihwcm9ncmFtKTsKKyAgICAgICAgfSk7CisgICAgICAg
IHRpbWVDYWxsYmFjaygiQ2hlY2tpbmcgcHJvZ3JhbSB3cmFwcGVkIDIiLCBmdW5jdGlvbigpIHsK
KyAgICAgICAgICAgIGNoZWNrUHJvZ3JhbVdyYXBwZWQocHJvZ3JhbSk7CisgICAgICAgIH0pOwor
ICAgICAgICB0aW1lQ2FsbGJhY2soIkNoZWNraW5nIHR5cGVzIHdpdGggYXJndW1lbnRzIDIiLCBm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgIGNoZWNrVHlwZXNXaXRoQXJndW1lbnRzKHByb2dyYW0p
OworICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJDaGVja2luZyBoaWdoIHpvbWJp
ZXMgMiIsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgZmluZEhpZ2hab21iaWVzKHByb2dyYW0p
OworICAgICAgICB9KTsKKyAgICAgICAgdGltZUNhbGxiYWNrKCJCdWlsZGluZyBzdHJ1Y3QgbGF5
b3V0cyIsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgcHJvZ3JhbS52aXNpdChuZXcgU3RydWN0
TGF5b3V0QnVpbGRlcigpKTsKKyAgICAgICAgfSk7CisgICAgICAgIHRpbWVDYWxsYmFjaygiSW5s
aW5pbmciLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIGlubGluZShwcm9ncmFtKTsKKyAgICAg
ICAgfSk7CisgICAgICAgIHByaW50KCJEb25lIGNvbXBpbGluZyEiKTsKICAgICAgICAgCiAgICAg
ICAgIHJldHVybiBwcm9ncmFtOwogICAgIH07CiB9KSgpOwotCmRpZmYgLS1naXQgYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzIGIvVG9vbHMvV2ViR1BVU2hhZGluZ0xh
bmd1YWdlUkkvUHJvZ3JhbS5qcwppbmRleCAxMTE2YzRmNTc3NTYyMjE1ZmRkNzQyOGEzMTc1Nzlh
OTI5MTY1NDE0Li5hYzFkZWZiNGZiYWFhNmU4ZTEzNDI5NzM0Y2NmNDkxNTMzOWJhNTM5IDEwMDY0
NAotLS0gYS9Ub29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9Qcm9ncmFtLmpzCisrKyBiL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Byb2dyYW0uanMKQEAgLTUxLDcgKzUxLDcgQEAg
Y2xhc3MgUHJvZ3JhbSBleHRlbmRzIE5vZGUgewogICAgICAgICAgICAgICAgIHRoaXMuZnVuY3Rp
b25zLnNldChzdGF0ZW1lbnQubmFtZSwgYXJyYXkgPSBbXSk7CiAgICAgICAgICAgICBhcnJheS5w
dXNoKHN0YXRlbWVudCk7CiAgICAgICAgIH0gZWxzZSBpZiAoc3RhdGVtZW50IGluc3RhbmNlb2Yg
VHlwZSkgewotICAgICAgICAgICAgaWYgKHN0YXRlbWVudC5pc05hdGl2ZSAmJiBzdGF0ZW1lbnQu
bmFtZSA9PSAidmVjdG9yIikgeworICAgICAgICAgICAgaWYgKHN0YXRlbWVudC5pc05hdGl2ZSAm
JiBzdGF0ZW1lbnQudHlwZUFyZ3VtZW50cy5sZW5ndGggIT0gMCkgewogICAgICAgICAgICAgICAg
IGxldCBhcnJheSA9IHRoaXMudHlwZXMuZ2V0KHN0YXRlbWVudC5uYW1lKTsKICAgICAgICAgICAg
ICAgICBpZiAoIWFycmF5KQogICAgICAgICAgICAgICAgICAgICB0aGlzLnR5cGVzLnNldChzdGF0
ZW1lbnQubmFtZSwgYXJyYXkgPSBbXSk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJHUFVTaGFkaW5n
TGFuZ3VhZ2VSSS9SZXdyaXRlci5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jl
d3JpdGVyLmpzCmluZGV4IDk0ZDNhNzYyZTM4ZmI5MjFjNTg0Y2JhZmZmMWY1OTQ3OGViYjc5MWQu
LjdjMmRmYmE2OTU1MzM5ODg0ZGJiZjkxMDQ3OGQ0M2VmZmRlYzY1Y2YgMTAwNjQ0Ci0tLSBhL1Rv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVyLmpzCisrKyBiL1Rvb2xzL1dlYkdQ
VVNoYWRpbmdMYW5ndWFnZVJJL1Jld3JpdGVyLmpzCkBAIC0zOTEsNSArMzkxLDExIEBAIGNsYXNz
IFJld3JpdGVyIHsKICAgICAgICAgdmVjVHlwZS5fZWxlbWVudFR5cGUgPSBub2RlLmVsZW1lbnRU
eXBlLnZpc2l0KHRoaXMpOwogICAgICAgICByZXR1cm4gdmVjVHlwZTsKICAgICB9CisKKyAgICB2
aXNpdE1hdHJpeFR5cGUobm9kZSkKKyAgICB7CisgICAgICAgIGNvbnN0IG1hdFR5cGUgPSBuZXcg
TWF0cml4VHlwZShub2RlLm9yaWdpbiwgbm9kZS5uYW1lLCBub2RlLnR5cGVBcmd1bWVudHMubWFw
KGFyZ3VtZW50ID0+IGFyZ3VtZW50LnZpc2l0KHRoaXMpKSk7CisgICAgICAgIHJldHVybiBtYXRU
eXBlOworICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdl
UkkvU1BJUlYuaHRtbCBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1NQSVJWLmh0bWwK
aW5kZXggZmYyYzAyYzdiYWZjYTRkMWUyY2Y4MzNjNmM3OWZhMWNlYzg5MDEzYy4uNzhkMDA4Zjgz
NWY5ZTljMjM0ZWYyZGY2ZDZkZWVhM2Y3NDI2Y2U2NSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViR1BV
U2hhZGluZ0xhbmd1YWdlUkkvU1BJUlYuaHRtbAorKysgYi9Ub29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9TUElSVi5odG1sCkBAIC0xNyw3ICsxNyw2IEBAIHRkIHsKICAgICA8c2NyaXB0IHNy
Yz0iQ3JlYXRlTGl0ZXJhbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNyZWF0ZUxp
dGVyYWxUeXBlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iUHJvcGVydHlBY2Nlc3NF
eHByZXNzaW9uLmpzIj48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHNyYz0iU3dpenpsZU9wLmpzIj48
L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTmF0aXZlVHlwZS5qcyI+PC9zY3JpcHQ+CiAKICAg
ICA8c2NyaXB0IHNyYz0iQWRkcmVzc1NwYWNlLmpzIj48L3NjcmlwdD4KQEAgLTI5LDEyICsyOCwx
MCBAQCB0ZCB7CiAgICAgPHNjcmlwdCBzcmM9IkJsb2NrLmpzIj48L3NjcmlwdD4KICAgICA8c2Ny
aXB0IHNyYz0iQm9vbExpdGVyYWwuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJCcmVh
ay5qcyI+PC9zY3JpcHQ+Ci0gICAgPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3Rv
cnMuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJCdWlsdGluTWF0cml4R2V0dGVyLmpz
Ij48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0iQnVpbHRpbk1hdHJpeFNldHRlci5qcyI+PC9z
Y3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkJ1aWx0aW5WZWN0b3JHZXR0ZXIuanMiPjwvc2NyaXB0
PgogICAgIDxzY3JpcHQgc3JjPSJCdWlsdGluVmVjdG9yU2V0dGVyLmpzIj48L3NjcmlwdD4KLSAg
ICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4R2V0dGVyLmpzIj48L3NjcmlwdD4KLSAg
ICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckluZGV4U2V0dGVyLmpzIj48L3NjcmlwdD4KLSAg
ICA8c2NyaXB0IHNyYz0iQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuanMiPjwvc2NyaXB0
PgogICAgIDxzY3JpcHQgc3JjPSJDYWxsRXhwcmVzc2lvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9IkNhbGxGdW5jdGlvbi5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IkNo
ZWNrLmpzIj48L3NjcmlwdD4KQEAgLTk2LDYgKzkzLDcgQEAgdGQgewogICAgIDxzY3JpcHQgc3Jj
PSJMb29wQ2hlY2tlci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9Ik1ha2VBcnJheVJl
ZkV4cHJlc3Npb24uanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJNYWtlUHRyRXhwcmVz
c2lvbi5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ik1hdHJpeFR5cGUuanMiPjwvc2Ny
aXB0PgogICAgIDxzY3JpcHQgc3JjPSJOYW1lQ29udGV4dC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9Ik5hbWVGaW5kZXIuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJOYW1l
UmVzb2x2ZXIuanMiPjwvc2NyaXB0PgpAQCAtMTAzLDkgKzEwMSw4IEBAIHRkIHsKICAgICA8c2Ny
aXB0IHNyYz0iTm9ybWFsVXNlUHJvcGVydHlSZXNvbHZlci5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9Ik51bGxMaXRlcmFsLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0iTnVs
bFR5cGUuanMiPjwvc2NyaXB0PgotICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFuZGVySW5kZXgu
anMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckFuZGVySW5kZXhlci5qcyI+
PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9Ik9wZXJhdG9yQXJyYXlSZWZMZW5ndGguanMiPjwv
c2NyaXB0PgotICAgIDxzY3JpcHQgc3JjPSJPcGVyYXRvckJvb2wuanMiPjwvc2NyaXB0PgogICAg
IDxzY3JpcHQgc3JjPSJPcmlnaW5LaW5kLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0i
T3ZlcmxvYWRSZXNvbHV0aW9uRmFpbHVyZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9
IlBhcnNlLmpzIj48L3NjcmlwdD4KQEAgLTEzMyw3ICsxMzAsNiBAQCB0ZCB7CiAgICAgPHNjcmlw
dCBzcmM9IlN5bnRoZXNpemVBcnJheU9wZXJhdG9yTGVuZ3RoLmpzIj48L3NjcmlwdD4KICAgICA8
c2NyaXB0IHNyYz0iU3ludGhlc2l6ZUVudW1GdW5jdGlvbnMuanMiPjwvc2NyaXB0PgogICAgIDxz
Y3JpcHQgc3JjPSJTeW50aGVzaXplU3RydWN0QWNjZXNzb3JzLmpzIj48L3NjcmlwdD4KLSAgICA8
c2NyaXB0IHNyYz0iU3ludGhlc2l6ZU9wZXJhdG9yQm9vbC5qcyI+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9IlN5bnRoZXNpemVDb3B5Q29uc3RydWN0b3JPcGVyYXRvci5qcyI+PC9zY3JpcHQ+
CiAgICAgPHNjcmlwdCBzcmM9IlN5bnRoZXNpemVEZWZhdWx0Q29uc3RydWN0b3JPcGVyYXRvci5q
cyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9IlRlcm5hcnlFeHByZXNzaW9uLmpzIj48L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJk
TGlicmFyeS5qcyBiL1Rvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1N0YW5kYXJkTGlicmFy
eS5qcwppbmRleCA4MTkwYTQzNTY5MjNhNjFlNTQ4NWJkZDRmMTgwZDEzODM3NzQ4OThiLi5hYzc3
MzVlNzljNDkzNjliNzgwNTM3ZDU0ZDU4NDNlYzg0OWY1ZDIwIDEwMDY0NAotLS0gYS9Ub29scy9X
ZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdGFuZGFyZExpYnJhcnkuanMKKysrIGIvVG9vbHMvV2Vi
R1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RhbmRhcmRMaWJyYXJ5LmpzCkBAIC0zMCw2ICszMCw4IEBA
IGxldCBzdGFuZGFyZExpYnJhcnkgPSBgCiAvLyBJbnRyaW5zaWNzLmpzLgogCiAvLyBOZWVkIHRv
IGJvb3RzdHJhcCB2b2lkIGZpcnN0LgorLy8gVGhpcyB3YXMgYXV0b2dlbmVyYXRlZCBmcm9tIEdl
bmVyYXRlX1N0YW5kYXJkX0xpYnJhcnkuc3dpZnQhIERvIG5vdCBlZGl0ISEKKwogbmF0aXZlIHR5
cGVkZWYgdm9pZDsKIG5hdGl2ZSB0eXBlZGVmIGJvb2w7CiBuYXRpdmUgdHlwZWRlZiB1Y2hhcjsK
QEAgLTQyLDcgKzQ0LDYgQEAgbmF0aXZlIHR5cGVkZWYgaGFsZjsKIG5hdGl2ZSB0eXBlZGVmIGZs
b2F0OwogbmF0aXZlIHR5cGVkZWYgYXRvbWljX2ludDsKIG5hdGl2ZSB0eXBlZGVmIGF0b21pY191
aW50OwotCiBuYXRpdmUgdHlwZWRlZiB2ZWN0b3I8Ym9vbCwgMj47CiB0eXBlZGVmIGJvb2wyID0g
dmVjdG9yPGJvb2wsIDI+OwogbmF0aXZlIHR5cGVkZWYgdmVjdG9yPGJvb2wsIDM+OwpAQCAtOTgs
NDAgKzk5LDU3NyBAQCB0eXBlZGVmIGZsb2F0MyA9IHZlY3RvcjxmbG9hdCwgMz47CiBuYXRpdmUg
dHlwZWRlZiB2ZWN0b3I8ZmxvYXQsIDQ+OwogdHlwZWRlZiBmbG9hdDQgPSB2ZWN0b3I8ZmxvYXQs
IDQ+OwogCi1uYXRpdmUgb3BlcmF0b3IgaW50KHVpbnQpOwotbmF0aXZlIG9wZXJhdG9yIGludCh1
Y2hhcik7Ci1uYXRpdmUgb3BlcmF0b3IgaW50KGZsb2F0KTsKLW5hdGl2ZSBvcGVyYXRvciB1aW50
KGludCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWludCh1Y2hhcik7Ci1uYXRpdmUgb3BlcmF0b3IgdWlu
dChmbG9hdCk7Ci1uYXRpdmUgb3BlcmF0b3IgdWNoYXIoaW50KTsKK25hdGl2ZSB0eXBlZGVmIG1h
dHJpeDxoYWxmLCAyLCAyPjsKK3R5cGVkZWYgaGFsZjJ4MiA9IG1hdHJpeDxoYWxmLCAyLCAyPjsK
K25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCAzPjsKK3R5cGVkZWYgaGFsZjJ4MyA9IG1h
dHJpeDxoYWxmLCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAyLCA0PjsKK3R5
cGVkZWYgaGFsZjJ4NCA9IG1hdHJpeDxoYWxmLCAyLCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJp
eDxoYWxmLCAzLCAyPjsKK3R5cGVkZWYgaGFsZjN4MiA9IG1hdHJpeDxoYWxmLCAzLCAyPjsKK25h
dGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCAzPjsKK3R5cGVkZWYgaGFsZjN4MyA9IG1hdHJp
eDxoYWxmLCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCAzLCA0PjsKK3R5cGVk
ZWYgaGFsZjN4NCA9IG1hdHJpeDxoYWxmLCAzLCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxo
YWxmLCA0LCAyPjsKK3R5cGVkZWYgaGFsZjR4MiA9IG1hdHJpeDxoYWxmLCA0LCAyPjsKK25hdGl2
ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCAzPjsKK3R5cGVkZWYgaGFsZjR4MyA9IG1hdHJpeDxo
YWxmLCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxoYWxmLCA0LCA0PjsKK3R5cGVkZWYg
aGFsZjR4NCA9IG1hdHJpeDxoYWxmLCA0LCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9h
dCwgMiwgMj47Cit0eXBlZGVmIGZsb2F0MngyID0gbWF0cml4PGZsb2F0LCAyLCAyPjsKK25hdGl2
ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgMz47Cit0eXBlZGVmIGZsb2F0MngzID0gbWF0cml4
PGZsb2F0LCAyLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMiwgND47Cit0eXBl
ZGVmIGZsb2F0Mng0ID0gbWF0cml4PGZsb2F0LCAyLCA0PjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJp
eDxmbG9hdCwgMywgMj47Cit0eXBlZGVmIGZsb2F0M3gyID0gbWF0cml4PGZsb2F0LCAzLCAyPjsK
K25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgMz47Cit0eXBlZGVmIGZsb2F0M3gzID0g
bWF0cml4PGZsb2F0LCAzLCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgMywgND47
Cit0eXBlZGVmIGZsb2F0M3g0ID0gbWF0cml4PGZsb2F0LCAzLCA0PjsKK25hdGl2ZSB0eXBlZGVm
IG1hdHJpeDxmbG9hdCwgNCwgMj47Cit0eXBlZGVmIGZsb2F0NHgyID0gbWF0cml4PGZsb2F0LCA0
LCAyPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwgNCwgMz47Cit0eXBlZGVmIGZsb2F0
NHgzID0gbWF0cml4PGZsb2F0LCA0LCAzPjsKK25hdGl2ZSB0eXBlZGVmIG1hdHJpeDxmbG9hdCwg
NCwgND47Cit0eXBlZGVmIGZsb2F0NHg0ID0gbWF0cml4PGZsb2F0LCA0LCA0PjsKK25hdGl2ZSB0
eXBlZGVmIHNhbXBsZXI7CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Ym9vbD47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMUQ8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGJvb2wz
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxib29sND47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHVjaGFyMj47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMUQ8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1Y2hh
cjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMUQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0Mz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MUQ8dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8dWludDI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEPHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDx1aW50ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8
Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxRDxjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTFEPHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8
c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEPGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50Mj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aW50
ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGhhbGYzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxRDxoYWxmND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMUQ8ZmxvYXQ+
OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEPGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMUQ8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxRDxmbG9hdDQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMUQ8Ym9vbD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxi
b29sMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxib29sMz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUxRDxib29sND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1Y2hhcj47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMUQ8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVjaGFyND47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1c2hvcnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMUQ8dWludD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1aW50Mj47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUxRDx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDx1
aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxjaGFyPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTFEPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNoYXIzPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPHNob3J0Mj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxRDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MUQ8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGludD47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxRDxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGludDM+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8aW50ND47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUxRDxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGhhbGYyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGhhbGYzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFE
PGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEPGZsb2F0PjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTFEPGZsb2F0Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxRDxmbG9h
dDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMUQ8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUxREFycmF5PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8Ym9v
bDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbDM+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEQXJyYXk8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8
dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWNoYXIyPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmUxREFycmF5PHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURB
cnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dXNob3J0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTFEQXJyYXk8dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTx1c2hv
cnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PHVpbnQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTFEQXJyYXk8dWludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8
dWludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8dWludDQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTFEQXJyYXk8Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJh
eTxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyMz47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMURBcnJheTxjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURB
cnJheTxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxzaG9ydDI+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUxREFycmF5PHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxpbnQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMURBcnJheTxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUxREFycmF5PGludDQ+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBUZXh0
dXJlMURBcnJheTxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmMz47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxoYWxmND47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMURBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMURBcnJheTxmbG9h
dDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTFEQXJyYXk8ZmxvYXQzPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUxREFycmF5PGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFy
cmF5PGJvb2w+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxib29sMj47CituYXRp
dmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4
dHVyZTFEQXJyYXk8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTx1Y2hh
cj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVjaGFyMj47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUxREFycmF5PHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUx
REFycmF5PHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydD47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVzaG9ydDI+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFE
QXJyYXk8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PHVpbnQ+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBS
V1RleHR1cmUxREFycmF5PHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8
dWludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxjaGFyPjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJl
MURBcnJheTxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGNoYXI0PjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMURBcnJheTxzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJh
eTxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxzaG9ydDQ+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMURBcnJheTxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8aW50Mz47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGludDQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMURBcnJheTxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTFEQXJyYXk8
aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxoYWxmMz47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUxREFycmF5PGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTFEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdDI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdDM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMURBcnJheTxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGJv
b2w+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyRDxib29sMz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Ym9vbDQ+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1Y2hh
cjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlMkQ8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVzaG9ydDQ+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTJEPHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPHVpbnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
MkQ8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGNoYXI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxjaGFyMz47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxzaG9ydDI+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEPHNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8c2hvcnQ0PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxpbnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
PGludDI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGludDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEPGludDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEPGhhbGY+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxoYWxm
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZTJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyRDxmbG9hdDI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkQ8Zmxv
YXQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGJvb2w+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkQ8Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9vbDM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Ym9vbDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlMkQ8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWNoYXIyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPHVjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
RDx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dXNob3J0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPHVzaG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8
dXNob3J0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDx1c2hvcnQ0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEPHVpbnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWlu
dDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8dWludDM+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkQ8dWludDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8Y2hhcj47Citu
YXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1
cmUyRDxjaGFyMz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxjaGFyND47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyRDxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxz
aG9ydDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8c2hvcnQzPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEPHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxpbnQ+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkQ8aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyRDxpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGludDQ+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlMkQ8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxo
YWxmMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxoYWxmMz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUyRDxoYWxmND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxmbG9hdD47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyRDxmbG9hdDI+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlMkQ8ZmxvYXQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEPGZsb2F0ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUyREFycmF5PGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2wzPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyREFycmF5PHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVjaGFy
Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEQXJyYXk8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5
PHVzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1c2hvcnQyPjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTJEQXJyYXk8dXNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTx1aW50PjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmUyREFycmF5PHVpbnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHVpbnQ0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGNoYXI+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTJEQXJyYXk8Y2hhcjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hh
cjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8Y2hhcjQ+OworbmF0aXZlIHR5cGVk
ZWYgVGV4dHVyZTJEQXJyYXk8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8
c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PHNob3J0Mz47CituYXRpdmUg
dHlwZWRlZiBUZXh0dXJlMkRBcnJheTxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGludDI+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aW50Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRB
cnJheTxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGhhbGY+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJE
QXJyYXk8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8aGFsZjQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTJEQXJyYXk8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTJEQXJyYXk8ZmxvYXQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUyREFycmF5PGZsb2F0Mz47
CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlMkRBcnJheTxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlMkRBcnJheTxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8
Ym9vbDI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxib29sMz47CituYXRpdmUg
dHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGJvb2w0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTJEQXJyYXk8dWNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcjI+
OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlMkRBcnJheTx1Y2hhcjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTx1c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1c2hvcnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dXNob3J0Mz47CituYXRpdmUgdHlwZWRl
ZiBSV1RleHR1cmUyREFycmF5PHVzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8dWludDI+OworbmF0
aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTx1aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyREFycmF5PHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8Y2hh
cj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PGNoYXIyPjsKK25hdGl2ZSB0eXBl
ZGVmIFJXVGV4dHVyZTJEQXJyYXk8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRB
cnJheTxjaGFyND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUyREFycmF5PHNob3J0PjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTJEQXJyYXk8c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8
c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aW50PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aW50Mj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUy
REFycmF5PGludDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxpbnQ0PjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aGFsZj47CituYXRpdmUgdHlwZWRlZiBSV1Rl
eHR1cmUyREFycmF5PGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8aGFs
ZjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlMkRBcnJheTxoYWxmND47CituYXRpdmUgdHlw
ZWRlZiBSV1RleHR1cmUyREFycmF5PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJE
QXJyYXk8ZmxvYXQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQzPjsK
K25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTJEQXJyYXk8ZmxvYXQ0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmUzRDxib29sPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxib29sMj47CituYXRp
dmUgdHlwZWRlZiBUZXh0dXJlM0Q8Ym9vbDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGJv
b2w0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlM0Q8dWNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1Y2hhcjM+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZTNEPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8
dXNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1c2hvcnQ0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmUzRDx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8dWludDM+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZTNEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxjaGFyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxjaGFyMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
M0Q8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGNoYXI0PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDxzaG9ydD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8c2hvcnQyPjsK
K25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVy
ZTNEPHNob3J0ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8aW50PjsKK25hdGl2ZSB0eXBl
ZGVmIFRleHR1cmUzRDxpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxpbnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxo
YWxmPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxoYWxmMj47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlM0Q8aGFsZjM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZTNEPGhhbGY0PjsKK25hdGl2
ZSB0eXBlZGVmIFRleHR1cmUzRDxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlM0Q8Zmxv
YXQyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmUzRDxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYg
VGV4dHVyZTNEPGZsb2F0ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxib29sPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGJvb2wyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTNEPGJvb2wzPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGJvb2w0PjsKK25hdGl2ZSB0
eXBlZGVmIFJXVGV4dHVyZTNEPHVjaGFyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVj
aGFyMj47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1Y2hhcjM+OworbmF0aXZlIHR5cGVk
ZWYgUldUZXh0dXJlM0Q8dWNoYXI0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVzaG9y
dD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVm
IFJXVGV4dHVyZTNEPHVzaG9ydDM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8dXNob3J0
ND47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDx1aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJX
VGV4dHVyZTNEPHVpbnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQzPjsKK25h
dGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHVpbnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVy
ZTNEPGNoYXI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Y2hhcjI+OworbmF0aXZlIHR5
cGVkZWYgUldUZXh0dXJlM0Q8Y2hhcjM+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8Y2hh
cjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8c2hvcnQ+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlM0Q8c2hvcnQyPjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPHNob3J0Mz47
CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxzaG9ydDQ+OworbmF0aXZlIHR5cGVkZWYgUldU
ZXh0dXJlM0Q8aW50PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGludDI+OworbmF0aXZl
IHR5cGVkZWYgUldUZXh0dXJlM0Q8aW50Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUzRDxp
bnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYg
UldUZXh0dXJlM0Q8aGFsZjI+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFsZjM+Owor
bmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8aGFsZjQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0
dXJlM0Q8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlM0Q8ZmxvYXQyPjsKK25hdGl2
ZSB0eXBlZGVmIFJXVGV4dHVyZTNEPGZsb2F0Mz47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmUz
RDxmbG9hdDQ+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8Ym9vbD47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlQ3ViZTxib29sMj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxib29s
Mz47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxib29sND47CituYXRpdmUgdHlwZWRlZiBU
ZXh0dXJlQ3ViZTx1Y2hhcj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1Y2hhcjI+Owor
bmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dWNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1
cmVDdWJlPHVjaGFyND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1c2hvcnQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dXNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
Q3ViZTx1c2hvcnQzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHVzaG9ydDQ+OworbmF0
aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8dWludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3Vi
ZTx1aW50Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTx1aW50Mz47CituYXRpdmUgdHlw
ZWRlZiBUZXh0dXJlQ3ViZTx1aW50ND47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxjaGFy
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGNoYXIyPjsKK25hdGl2ZSB0eXBlZGVmIFRl
eHR1cmVDdWJlPGNoYXIzPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGNoYXI0PjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPHNob3J0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVD
dWJlPHNob3J0Mj47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxzaG9ydDM+OworbmF0aXZl
IHR5cGVkZWYgVGV4dHVyZUN1YmU8c2hvcnQ0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJl
PGludD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxpbnQyPjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmVDdWJlPGludDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8aW50ND47Citu
YXRpdmUgdHlwZWRlZiBUZXh0dXJlQ3ViZTxoYWxmPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVD
dWJlPGhhbGYyPjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGhhbGYzPjsKK25hdGl2ZSB0
eXBlZGVmIFRleHR1cmVDdWJlPGhhbGY0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGZs
b2F0PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVDdWJlPGZsb2F0Mj47CituYXRpdmUgdHlwZWRl
ZiBUZXh0dXJlQ3ViZTxmbG9hdDM+OworbmF0aXZlIHR5cGVkZWYgVGV4dHVyZUN1YmU8ZmxvYXQ0
PjsKK25hdGl2ZSB0eXBlZGVmIFRleHR1cmVEZXB0aDJEPGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVm
IFRleHR1cmVEZXB0aDJEPGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVwdGgyRDxm
bG9hdD47CituYXRpdmUgdHlwZWRlZiBSV1RleHR1cmVEZXB0aDJEPGhhbGY+OworbmF0aXZlIHR5
cGVkZWYgVGV4dHVyZURlcHRoMkRBcnJheTxmbG9hdD47CituYXRpdmUgdHlwZWRlZiBUZXh0dXJl
RGVwdGgyREFycmF5PGhhbGY+OworbmF0aXZlIHR5cGVkZWYgUldUZXh0dXJlRGVwdGgyREFycmF5
PGZsb2F0PjsKK25hdGl2ZSB0eXBlZGVmIFJXVGV4dHVyZURlcHRoMkRBcnJheTxoYWxmPjsKK25h
dGl2ZSB0eXBlZGVmIFRleHR1cmVEZXB0aEN1YmU8ZmxvYXQ+OworbmF0aXZlIHR5cGVkZWYgVGV4
dHVyZURlcHRoQ3ViZTxoYWxmPjsKKworbmF0aXZlIG9wZXJhdG9yIHVjaGFyKHVzaG9ydCk7CiBu
YXRpdmUgb3BlcmF0b3IgdWNoYXIodWludCk7CituYXRpdmUgb3BlcmF0b3IgdWNoYXIoY2hhcik7
CituYXRpdmUgb3BlcmF0b3IgdWNoYXIoc2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIHVjaGFyKGlu
dCk7CituYXRpdmUgb3BlcmF0b3IgdWNoYXIoaGFsZik7CiBuYXRpdmUgb3BlcmF0b3IgdWNoYXIo
ZmxvYXQpOwotbmF0aXZlIG9wZXJhdG9yIGZsb2F0KGludCk7Ci1uYXRpdmUgb3BlcmF0b3IgZmxv
YXQodWludCk7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRv
ciB1c2hvcnQodWludCk7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KGNoYXIpOworbmF0aXZlIG9w
ZXJhdG9yIHVzaG9ydChzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdXNob3J0KGludCk7CituYXRp
dmUgb3BlcmF0b3IgdXNob3J0KGhhbGYpOworbmF0aXZlIG9wZXJhdG9yIHVzaG9ydChmbG9hdCk7
CituYXRpdmUgb3BlcmF0b3IgdWludCh1Y2hhcik7CituYXRpdmUgb3BlcmF0b3IgdWludCh1c2hv
cnQpOworbmF0aXZlIG9wZXJhdG9yIHVpbnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgdWludChz
aG9ydCk7CituYXRpdmUgb3BlcmF0b3IgdWludChpbnQpOworbmF0aXZlIG9wZXJhdG9yIHVpbnQo
aGFsZik7CituYXRpdmUgb3BlcmF0b3IgdWludChmbG9hdCk7CituYXRpdmUgb3BlcmF0b3IgY2hh
cih1Y2hhcik7CituYXRpdmUgb3BlcmF0b3IgY2hhcih1c2hvcnQpOworbmF0aXZlIG9wZXJhdG9y
IGNoYXIodWludCk7CituYXRpdmUgb3BlcmF0b3IgY2hhcihzaG9ydCk7CituYXRpdmUgb3BlcmF0
b3IgY2hhcihpbnQpOworbmF0aXZlIG9wZXJhdG9yIGNoYXIoaGFsZik7CituYXRpdmUgb3BlcmF0
b3IgY2hhcihmbG9hdCk7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQodWNoYXIpOworbmF0aXZlIG9w
ZXJhdG9yIHNob3J0KHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQodWludCk7CituYXRp
dmUgb3BlcmF0b3Igc2hvcnQoY2hhcik7CituYXRpdmUgb3BlcmF0b3Igc2hvcnQoaW50KTsKK25h
dGl2ZSBvcGVyYXRvciBzaG9ydChoYWxmKTsKK25hdGl2ZSBvcGVyYXRvciBzaG9ydChmbG9hdCk7
CituYXRpdmUgb3BlcmF0b3IgaW50KHVjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodXNob3J0
KTsKK25hdGl2ZSBvcGVyYXRvciBpbnQodWludCk7CituYXRpdmUgb3BlcmF0b3IgaW50KGNoYXIp
OworbmF0aXZlIG9wZXJhdG9yIGludChzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgaW50KGhhbGYp
OworbmF0aXZlIG9wZXJhdG9yIGludChmbG9hdCk7CituYXRpdmUgb3BlcmF0b3IgaGFsZih1Y2hh
cik7CituYXRpdmUgb3BlcmF0b3IgaGFsZih1c2hvcnQpOworbmF0aXZlIG9wZXJhdG9yIGhhbGYo
dWludCk7CituYXRpdmUgb3BlcmF0b3IgaGFsZihjaGFyKTsKK25hdGl2ZSBvcGVyYXRvciBoYWxm
KHNob3J0KTsKK25hdGl2ZSBvcGVyYXRvciBoYWxmKGludCk7CituYXRpdmUgb3BlcmF0b3IgaGFs
ZihmbG9hdCk7CiBuYXRpdmUgb3BlcmF0b3IgZmxvYXQodWNoYXIpOworbmF0aXZlIG9wZXJhdG9y
IGZsb2F0KHVzaG9ydCk7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQodWludCk7CituYXRpdmUgb3Bl
cmF0b3IgZmxvYXQoY2hhcik7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQoc2hvcnQpOworbmF0aXZl
IG9wZXJhdG9yIGZsb2F0KGludCk7CituYXRpdmUgb3BlcmF0b3IgZmxvYXQoaGFsZik7CisKK29w
ZXJhdG9yIGJvb2wodWNoYXIgeCkgeworICAgIHJldHVybiB4ICE9IDA7Cit9CitvcGVyYXRvciBi
b29sKHVzaG9ydCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2wodWlu
dCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woY2hhciB4KSB7Cisg
ICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJhdG9yIGJvb2woc2hvcnQgeCkgeworICAgIHJldHVy
biB4ICE9IDA7Cit9CitvcGVyYXRvciBib29sKGludCB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsK
K30KK29wZXJhdG9yIGJvb2woaGFsZiB4KSB7CisgICAgcmV0dXJuIHggIT0gMDsKK30KK29wZXJh
dG9yIGJvb2woZmxvYXQgeCkgeworICAgIHJldHVybiB4ICE9IDA7Cit9CiAKK25hdGl2ZSBvcGVy
YXRvciBpbnQoYXRvbWljX2ludCk7CituYXRpdmUgb3BlcmF0b3IgdWludChhdG9taWNfdWludCk7
CisKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0oYm9vbCwgYm9vbCk7Citib29sIG9wZXJhdG9yJihi
b29sIGEsIGJvb2wgYikgeworICAgIHJldHVybiBhICYmIGI7Cit9Citib29sIG9wZXJhdG9yfChi
b29sIGEsIGJvb2wgYikgeworICAgIHJldHVybiBhIHx8IGI7Cit9Citib29sIG9wZXJhdG9yXihi
b29sIGEsIGJvb2wgYikgeworICAgIGlmIChhKQorICAgICAgICByZXR1cm4gIWI7CisgICAgcmV0
dXJuIGI7Cit9Citib29sIG9wZXJhdG9yfihib29sIHZhbHVlKSB7CisgICAgcmV0dXJuICF2YWx1
ZTsKK30KIG5hdGl2ZSBpbnQgb3BlcmF0b3IrKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJh
dG9yKyh1aW50LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yKyh1Y2hhciBhLCB1Y2hhciBiKSB7IHJl
dHVybiB1Y2hhcih1aW50KGEpICsgdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvciso
ZmxvYXQsIGZsb2F0KTsKLWludCBvcGVyYXRvcisrKGludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUg
KyAxOyB9Ci11aW50IG9wZXJhdG9yKysodWludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgKyAxOyB9
Ci11Y2hhciBvcGVyYXRvcisrKHVjaGFyIHZhbHVlKSB7IHJldHVybiB2YWx1ZSArIDE7IH0KIG5h
dGl2ZSBpbnQgb3BlcmF0b3ItKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yLSh1aW50
LCB1aW50KTsKLXVjaGFyIG9wZXJhdG9yLSh1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hh
cih1aW50KGEpIC0gdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQsIGZs
b2F0KTsKLWludCBvcGVyYXRvci0tKGludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgLSAxOyB9Ci11
aW50IG9wZXJhdG9yLS0odWludCB2YWx1ZSkgeyByZXR1cm4gdmFsdWUgLSAxOyB9Ci11Y2hhciBv
cGVyYXRvci0tKHVjaGFyIHZhbHVlKSB7IHJldHVybiB2YWx1ZSAtIDE7IH0KIG5hdGl2ZSBpbnQg
b3BlcmF0b3IqKGludCwgaW50KTsKLW5hdGl2ZSB1aW50IG9wZXJhdG9yKih1aW50LCB1aW50KTsK
LXVjaGFyIG9wZXJhdG9yKih1Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1Y2hhcih1aW50KGEp
ICogdWludChiKSk7IH0KLW5hdGl2ZSBmbG9hdCBvcGVyYXRvciooZmxvYXQsIGZsb2F0KTsKIG5h
dGl2ZSBpbnQgb3BlcmF0b3IvKGludCwgaW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9yPT0oaW50
LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I8KGludCwgaW50KTsKK25hdGl2ZSBib29sIG9w
ZXJhdG9yPD0oaW50LCBpbnQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I+KGludCwgaW50KTsKK25h
dGl2ZSBib29sIG9wZXJhdG9yPj0oaW50LCBpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IrKHVp
bnQsIHVpbnQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3ItKHVpbnQsIHVpbnQpOworbmF0aXZlIHVp
bnQgb3BlcmF0b3IqKHVpbnQsIHVpbnQpOwogbmF0aXZlIHVpbnQgb3BlcmF0b3IvKHVpbnQsIHVp
bnQpOwotdWNoYXIgb3BlcmF0b3IvKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVp
bnQoYSkgLyB1aW50KGIpKTsgfQorbmF0aXZlIGJvb2wgb3BlcmF0b3I9PSh1aW50LCB1aW50KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPCh1aW50LCB1aW50KTsKK25hdGl2ZSBib29sIG9wZXJhdG9y
PD0odWludCwgdWludCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4odWludCwgdWludCk7CituYXRp
dmUgYm9vbCBvcGVyYXRvcj49KHVpbnQsIHVpbnQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yKyhm
bG9hdCwgZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLShmbG9hdCwgZmxvYXQpOworbmF0
aXZlIGZsb2F0IG9wZXJhdG9yKihmbG9hdCwgZmxvYXQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9y
LyhmbG9hdCwgZmxvYXQpOworbmF0aXZlIGJvb2wgb3BlcmF0b3I9PShmbG9hdCwgZmxvYXQpOwor
bmF0aXZlIGJvb2wgb3BlcmF0b3I8KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRv
cjw9KGZsb2F0LCBmbG9hdCk7CituYXRpdmUgYm9vbCBvcGVyYXRvcj4oZmxvYXQsIGZsb2F0KTsK
K25hdGl2ZSBib29sIG9wZXJhdG9yPj0oZmxvYXQsIGZsb2F0KTsKIG5hdGl2ZSBpbnQgb3BlcmF0
b3ImKGludCwgaW50KTsKIG5hdGl2ZSBpbnQgb3BlcmF0b3J8KGludCwgaW50KTsKIG5hdGl2ZSBp
bnQgb3BlcmF0b3JeKGludCwgaW50KTsKQEAgLTE0NCw5NSArNjgyLDY0Nzc3IEBAIG5hdGl2ZSB1
aW50IG9wZXJhdG9yXih1aW50LCB1aW50KTsKIG5hdGl2ZSB1aW50IG9wZXJhdG9yfih1aW50KTsK
IG5hdGl2ZSB1aW50IG9wZXJhdG9yPDwodWludCwgdWludCk7CiBuYXRpdmUgdWludCBvcGVyYXRv
cj4+KHVpbnQsIHVpbnQpOwotdWNoYXIgb3BlcmF0b3ImKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0
dXJuIHVjaGFyKHVpbnQoYSkgJiB1aW50KGIpKTsgfQotdWNoYXIgb3BlcmF0b3J8KHVjaGFyIGEs
IHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgfCB1aW50KGIpKTsgfQotdWNoYXIgb3Bl
cmF0b3JeKHVjaGFyIGEsIHVjaGFyIGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgXiB1aW50KGIp
KTsgfQotdWNoYXIgb3BlcmF0b3J+KHVjaGFyIHZhbHVlKSB7IHJldHVybiB1Y2hhcih+dWludCh2
YWx1ZSkpOyB9Ci11Y2hhciBvcGVyYXRvcjw8KHVjaGFyIGEsIHVpbnQgYikgeyByZXR1cm4gdWNo
YXIodWludChhKSA8PCAoYiAmIDcpKTsgfQotdWNoYXIgb3BlcmF0b3I+Pih1Y2hhciBhLCB1aW50
IGIpIHsgcmV0dXJuIHVjaGFyKHVpbnQoYSkgPj4gKGIgJiA3KSk7IH0KLW5hdGl2ZSBmbG9hdCBv
cGVyYXRvci8oZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPT0oaW50LCBpbnQp
OwotbmF0aXZlIGJvb2wgb3BlcmF0b3I9PSh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I9PSh1
Y2hhciBhLCB1Y2hhciBiKSB7IHJldHVybiB1aW50KGEpID09IHVpbnQoYik7IH0KLW5hdGl2ZSBi
b29sIG9wZXJhdG9yPT0oYm9vbCwgYm9vbCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcj09KGZsb2F0
LCBmbG9hdCk7Ci1uYXRpdmUgYm9vbCBvcGVyYXRvcjwoaW50LCBpbnQpOwotbmF0aXZlIGJvb2wg
b3BlcmF0b3I8KHVpbnQsIHVpbnQpOwotYm9vbCBvcGVyYXRvcjwodWNoYXIgYSwgdWNoYXIgYikg
eyByZXR1cm4gdWludChhKSA8IHVpbnQoYik7IH0KLW5hdGl2ZSBib29sIG9wZXJhdG9yPChmbG9h
dCwgZmxvYXQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I8PShpbnQsIGludCk7Ci1uYXRpdmUgYm9v
bCBvcGVyYXRvcjw9KHVpbnQsIHVpbnQpOwotYm9vbCBvcGVyYXRvcjw9KHVjaGFyIGEsIHVjaGFy
IGIpIHsgcmV0dXJuIHVpbnQoYSkgPD0gdWludChiKTsgfQotbmF0aXZlIGJvb2wgb3BlcmF0b3I8
PShmbG9hdCwgZmxvYXQpOwotbmF0aXZlIGJvb2wgb3BlcmF0b3I+KGludCwgaW50KTsKLW5hdGl2
ZSBib29sIG9wZXJhdG9yPih1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I+KHVjaGFyIGEsIHVj
aGFyIGIpIHsgcmV0dXJuIHVpbnQoYSkgPiB1aW50KGIpOyB9Ci1uYXRpdmUgYm9vbCBvcGVyYXRv
cj4oZmxvYXQsIGZsb2F0KTsKLW5hdGl2ZSBib29sIG9wZXJhdG9yPj0oaW50LCBpbnQpOwotbmF0
aXZlIGJvb2wgb3BlcmF0b3I+PSh1aW50LCB1aW50KTsKLWJvb2wgb3BlcmF0b3I+PSh1Y2hhciBh
LCB1Y2hhciBiKSB7IHJldHVybiB1aW50KGEpID49IHVpbnQoYik7IH0KLW5hdGl2ZSBib29sIG9w
ZXJhdG9yPj0oZmxvYXQsIGZsb2F0KTsKLQotYm9vbCBvcGVyYXRvciYoYm9vbCBhLCBib29sIGIp
Ci17Ci0gICAgaWYgKGEpCi0gICAgICAgIHJldHVybiBiOwotICAgIHJldHVybiBmYWxzZTsKK3Vj
aGFyIG9wZXJhdG9yKyh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJuIHVjaGFyKHVpbnQo
YSkgKyB1aW50KGIpKTsKIH0KLQotYm9vbCBvcGVyYXRvcnwoYm9vbCBhLCBib29sIGIpCi17Ci0g
ICAgaWYgKGEpCi0gICAgICAgIHJldHVybiB0cnVlOwotICAgIGlmIChiKQotICAgICAgICByZXR1
cm4gdHJ1ZTsKLSAgICByZXR1cm4gZmFsc2U7Cit1Y2hhciBvcGVyYXRvci0odWNoYXIgYSwgdWNo
YXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIC0gdWludChiKSk7CiB9Ci0KLWJvb2wg
b3BlcmF0b3JeKGJvb2wgYSwgYm9vbCBiKQotewotICAgIGlmIChhKQotICAgICAgICByZXR1cm4g
IWI7Ci0gICAgcmV0dXJuIGI7Cit1Y2hhciBvcGVyYXRvcioodWNoYXIgYSwgdWNoYXIgYikgewor
ICAgIHJldHVybiB1Y2hhcih1aW50KGEpICogdWludChiKSk7CiB9Ci0KLWJvb2wgb3BlcmF0b3J+
KGJvb2wgdmFsdWUpCi17Ci0gICAgcmV0dXJuICF2YWx1ZTsKK3VjaGFyIG9wZXJhdG9yLyh1Y2hh
ciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJuIHVjaGFyKHVpbnQoYSkgLyB1aW50KGIpKTsKIH0K
LWA7Ci0KLS8vIEZJWE1FOiBPbmNlIHRoZSBzdGFuZGFyZCBsaWJyYXJ5IGhhcyBiZWVuIHJlcGxh
Y2VkIHdpdGggYSBuZXcgdmVyc2lvbiwgdGhpcyBjb21tZW50cyBzaG91bGQgYmUgcmVtb3ZlZC4K
LS8vIFRoaXMgbGlzdCBpcyB1c2VkIHRvIHJlc3RyaWN0IHRoZSBhdmFpbGFiaWxpdHkgb2YgdmVj
dG9yIHR5cGVzIGF2YWlsYWJsZSBpbiB0aGUgbGFuZ2F1Z2UuCi0vLyBQZXJtaXNzaWJsZSB2ZWN0
b3IgZWxlbWVudCB0eXBlcyBtdXN0IGFwcGVhciBpbiB0aGlzIGxpc3QgYW5kIGluIHRoZSBzdGFu
ZGFyZCBsaWJyYXJ5Ci1jb25zdCBWZWN0b3JFbGVtZW50VHlwZXMgPSBbICJib29sIiwgInVjaGFy
IiwgImNoYXIiLCAidXNob3J0IiwgInNob3J0IiwgInVpbnQiLCAiaW50IiwgImhhbGYiLCAiZmxv
YXQiIF07Ci1jb25zdCBWZWN0b3JFbGVtZW50U2l6ZXMgPSBbIDIsIDMsIDQgXTsKLQotZnVuY3Rp
b24gYWxsVmVjdG9yVHlwZU5hbWVzKCkKLXsKLSAgICBjb25zdCBuYW1lcyA9IFtdOwotICAgIGZv
ciAobGV0IGVsZW1lbnRUeXBlIG9mIFZlY3RvckVsZW1lbnRUeXBlcykgewotICAgICAgICBmb3Ig
KGxldCBzaXplIG9mIFZlY3RvckVsZW1lbnRTaXplcykKLSAgICAgICAgICAgIG5hbWVzLnB1c2go
YCR7ZWxlbWVudFR5cGV9JHtzaXplfWApOwotICAgIH0KLSAgICByZXR1cm4gbmFtZXM7Cit1Y2hh
ciBvcGVyYXRvciYodWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEp
ICYgdWludChiKSk7CiB9Cit1Y2hhciBvcGVyYXRvcnwodWNoYXIgYSwgdWNoYXIgYikgeworICAg
IHJldHVybiB1Y2hhcih1aW50KGEpIHwgdWludChiKSk7Cit9Cit1Y2hhciBvcGVyYXRvcl4odWNo
YXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEpIF4gdWludChiKSk7Cit9
Cit1Y2hhciBvcGVyYXRvcn4odWNoYXIgYSkgeworICAgIHJldHVybiB1Y2hhcih+dWludChhKSk7
Cit9Citib29sIG9wZXJhdG9yPT0odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50
KGEpID09IHVpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPCh1Y2hhciBhLCB1Y2hhciBiKSB7Cisg
ICAgcmV0dXJuIHVpbnQoYSkgPCB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KHVjaGFyIGEs
IHVjaGFyIGIpIHsKKyAgICByZXR1cm4gdWludChhKSA8PSB1aW50KGIpOworfQorYm9vbCBvcGVy
YXRvcj4odWNoYXIgYSwgdWNoYXIgYikgeworICAgIHJldHVybiB1aW50KGEpID4gdWludChiKTsK
K30KK2Jvb2wgb3BlcmF0b3I+PSh1Y2hhciBhLCB1Y2hhciBiKSB7CisgICAgcmV0dXJuIHVpbnQo
YSkgPj0gdWludChiKTsKK30KK3VzaG9ydCBvcGVyYXRvcisodXNob3J0IGEsIHVzaG9ydCBiKSB7
CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpICsgdWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0
b3ItKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1c2hvcnQodWludChhKSAtIHVp
bnQoYikpOworfQordXNob3J0IG9wZXJhdG9yKih1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICBy
ZXR1cm4gdXNob3J0KHVpbnQoYSkgKiB1aW50KGIpKTsKK30KK3VzaG9ydCBvcGVyYXRvci8odXNo
b3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpIC8gdWludChiKSk7
Cit9Cit1c2hvcnQgb3BlcmF0b3ImKHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1
c2hvcnQodWludChhKSAmIHVpbnQoYikpOworfQordXNob3J0IG9wZXJhdG9yfCh1c2hvcnQgYSwg
dXNob3J0IGIpIHsKKyAgICByZXR1cm4gdXNob3J0KHVpbnQoYSkgfCB1aW50KGIpKTsKK30KK3Vz
aG9ydCBvcGVyYXRvcl4odXNob3J0IGEsIHVzaG9ydCBiKSB7CisgICAgcmV0dXJuIHVzaG9ydCh1
aW50KGEpIF4gdWludChiKSk7Cit9Cit1c2hvcnQgb3BlcmF0b3J+KHVzaG9ydCBhKSB7CisgICAg
cmV0dXJuIHVzaG9ydCh+dWludChhKSk7Cit9Citib29sIG9wZXJhdG9yPT0odXNob3J0IGEsIHVz
aG9ydCBiKSB7CisgICAgcmV0dXJuIHVpbnQoYSkgPT0gdWludChiKTsKK30KK2Jvb2wgb3BlcmF0
b3I8KHVzaG9ydCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpIDwgdWludChiKTsK
K30KK2Jvb2wgb3BlcmF0b3I8PSh1c2hvcnQgYSwgdXNob3J0IGIpIHsKKyAgICByZXR1cm4gdWlu
dChhKSA8PSB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcj4odXNob3J0IGEsIHVzaG9ydCBiKSB7
CisgICAgcmV0dXJuIHVpbnQoYSkgPiB1aW50KGIpOworfQorYm9vbCBvcGVyYXRvcj49KHVzaG9y
dCBhLCB1c2hvcnQgYikgeworICAgIHJldHVybiB1aW50KGEpID49IHVpbnQoYik7Cit9Cit1Y2hh
ciBvcGVyYXRvcjw8KHVjaGFyIGEsIHVpbnQgYikgeworICAgIHJldHVybiB1Y2hhcih1aW50KGEp
IDw8IChiICYgMjU1KSk7Cit9Cit1c2hvcnQgb3BlcmF0b3I8PCh1c2hvcnQgYSwgdWludCBiKSB7
CisgICAgcmV0dXJuIHVzaG9ydCh1aW50KGEpIDw8IChiICYgNjU1MzUpKTsKK30KK3VjaGFyIG9w
ZXJhdG9yPj4odWNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIHVjaGFyKHVpbnQoYSkgPj4g
KGIgJiAyNTUpKTsKK30KK3VzaG9ydCBvcGVyYXRvcj4+KHVzaG9ydCBhLCB1aW50IGIpIHsKKyAg
ICByZXR1cm4gdXNob3J0KHVpbnQoYSkgPj4gKGIgJiA2NTUzNSkpOworfQorY2hhciBvcGVyYXRv
cisoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgKyBpbnQoYikpOwor
fQorY2hhciBvcGVyYXRvci0oY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQo
YSkgLSBpbnQoYikpOworfQorY2hhciBvcGVyYXRvciooY2hhciBhLCBjaGFyIGIpIHsKKyAgICBy
ZXR1cm4gY2hhcihpbnQoYSkgKiBpbnQoYikpOworfQorY2hhciBvcGVyYXRvci8oY2hhciBhLCBj
aGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgLyBpbnQoYikpOworfQorY2hhciBvcGVy
YXRvciYoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihpbnQoYSkgJiBpbnQoYikp
OworfQorY2hhciBvcGVyYXRvcnwoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gY2hhcihp
bnQoYSkgfCBpbnQoYikpOworfQorY2hhciBvcGVyYXRvcl4oY2hhciBhLCBjaGFyIGIpIHsKKyAg
ICByZXR1cm4gY2hhcihpbnQoYSkgXiBpbnQoYikpOworfQorY2hhciBvcGVyYXRvcn4oY2hhciBh
KSB7CisgICAgcmV0dXJuIGNoYXIofmludChhKSk7Cit9Citib29sIG9wZXJhdG9yPT0oY2hhciBh
LCBjaGFyIGIpIHsKKyAgICByZXR1cm4gaW50KGEpID09IGludChiKTsKK30KK2Jvb2wgb3BlcmF0
b3I+KGNoYXIgYSwgY2hhciBiKSB7CisgICAgcmV0dXJuIGludChhKSA+IGludChiKTsKK30KK2Jv
b2wgb3BlcmF0b3I+PShjaGFyIGEsIGNoYXIgYikgeworICAgIHJldHVybiBpbnQoYSkgPj0gaW50
KGIpOworfQorYm9vbCBvcGVyYXRvcjwoY2hhciBhLCBjaGFyIGIpIHsKKyAgICByZXR1cm4gaW50
KGEpIDwgaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KGNoYXIgYSwgY2hhciBiKSB7CisgICAg
cmV0dXJuIGludChhKSA8PSBpbnQoYik7Cit9CitzaG9ydCBvcGVyYXRvcisoc2hvcnQgYSwgc2hv
cnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgKyBpbnQoYikpOworfQorc2hvcnQgb3Bl
cmF0b3ItKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpIC0gaW50
KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yKihzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0dXJu
IHNob3J0KGludChhKSAqIGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvci8oc2hvcnQgYSwgc2hv
cnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgLyBpbnQoYikpOworfQorc2hvcnQgb3Bl
cmF0b3ImKHNob3J0IGEsIHNob3J0IGIpIHsKKyAgICByZXR1cm4gc2hvcnQoaW50KGEpICYgaW50
KGIpKTsKK30KK3Nob3J0IG9wZXJhdG9yfChzaG9ydCBhLCBzaG9ydCBiKSB7CisgICAgcmV0dXJu
IHNob3J0KGludChhKSB8IGludChiKSk7Cit9CitzaG9ydCBvcGVyYXRvcl4oc2hvcnQgYSwgc2hv
cnQgYikgeworICAgIHJldHVybiBzaG9ydChpbnQoYSkgXiBpbnQoYikpOworfQorc2hvcnQgb3Bl
cmF0b3J+KHNob3J0IGEpIHsKKyAgICByZXR1cm4gc2hvcnQofmludChhKSk7Cit9Citib29sIG9w
ZXJhdG9yPT0oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPT0gaW50KGIp
OworfQorYm9vbCBvcGVyYXRvcj4oc2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQo
YSkgPiBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPj0oc2hvcnQgYSwgc2hvcnQgYikgeworICAg
IHJldHVybiBpbnQoYSkgPj0gaW50KGIpOworfQorYm9vbCBvcGVyYXRvcjwoc2hvcnQgYSwgc2hv
cnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPCBpbnQoYik7Cit9Citib29sIG9wZXJhdG9yPD0o
c2hvcnQgYSwgc2hvcnQgYikgeworICAgIHJldHVybiBpbnQoYSkgPD0gaW50KGIpOworfQorY2hh
ciBvcGVyYXRvcjw8KGNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpIDw8
IChiICYgMjU1KSk7Cit9CitzaG9ydCBvcGVyYXRvcjw8KHNob3J0IGEsIHVpbnQgYikgeworICAg
IHJldHVybiBzaG9ydChpbnQoYSkgPDwgKGIgJiA2NTUzNSkpOworfQorY2hhciBvcGVyYXRvcj4+
KGNoYXIgYSwgdWludCBiKSB7CisgICAgcmV0dXJuIGNoYXIoaW50KGEpID4+IChiICYgMjU1KSk7
Cit9CitzaG9ydCBvcGVyYXRvcj4+KHNob3J0IGEsIHVpbnQgYikgeworICAgIHJldHVybiBzaG9y
dChpbnQoYSkgPj4gKGIgJiA2NTUzNSkpOworfQordWNoYXIgb3BlcmF0b3IrKyh1Y2hhciB2YWx1
ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9Cit1Y2hhciBvcGVyYXRvci0tKHVjaGFyIHZh
bHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK3VzaG9ydCBvcGVyYXRvcisrKHVzaG9y
dCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9Cit1c2hvcnQgb3BlcmF0b3ItLSh1
c2hvcnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQordWludCBvcGVyYXRvcisr
KHVpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQordWludCBvcGVyYXRvci0t
KHVpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorY2hhciBvcGVyYXRvcisr
KGNoYXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQorY2hhciBvcGVyYXRvci0t
KGNoYXIgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorc2hvcnQgb3BlcmF0b3Ir
KyhzaG9ydCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitzaG9ydCBvcGVyYXRv
ci0tKHNob3J0IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK2ludCBvcGVyYXRv
cisrKGludCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitpbnQgb3BlcmF0b3It
LShpbnQgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQoraGFsZiBvcGVyYXRvcisr
KGhhbGYgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgKyAxOworfQoraGFsZiBvcGVyYXRvci0t
KGhhbGYgdmFsdWUpIHsKKyAgICByZXR1cm4gdmFsdWUgLSAxOworfQorZmxvYXQgb3BlcmF0b3Ir
KyhmbG9hdCB2YWx1ZSkgeworICAgIHJldHVybiB2YWx1ZSArIDE7Cit9CitmbG9hdCBvcGVyYXRv
ci0tKGZsb2F0IHZhbHVlKSB7CisgICAgcmV0dXJuIHZhbHVlIC0gMTsKK30KK2hhbGYgb3BlcmF0
b3IrKGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxvYXQoYSkgKyBmbG9hdChi
KSk7Cit9CitoYWxmIG9wZXJhdG9yLShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBoYWxm
KGZsb2F0KGEpIC0gZmxvYXQoYikpOworfQoraGFsZiBvcGVyYXRvciooaGFsZiBhLCBoYWxmIGIp
IHsKKyAgICByZXR1cm4gaGFsZihmbG9hdChhKSAqIGZsb2F0KGIpKTsKK30KK2hhbGYgb3BlcmF0
b3IvKGhhbGYgYSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGhhbGYoZmxvYXQoYSkgLyBmbG9hdChi
KSk7Cit9Citib29sIG9wZXJhdG9yPT0oaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxv
YXQoYSkgPT0gZmxvYXQoYik7Cit9Citib29sIG9wZXJhdG9yPChoYWxmIGEsIGhhbGYgYikgewor
ICAgIHJldHVybiBmbG9hdChhKSA8IGZsb2F0KGIpOworfQorYm9vbCBvcGVyYXRvcjw9KGhhbGYg
YSwgaGFsZiBiKSB7CisgICAgcmV0dXJuIGZsb2F0KGEpIDw9IGZsb2F0KGIpOworfQorYm9vbCBv
cGVyYXRvcj4oaGFsZiBhLCBoYWxmIGIpIHsKKyAgICByZXR1cm4gZmxvYXQoYSkgPCBmbG9hdChi
KTsKK30KK2Jvb2wgb3BlcmF0b3I+PShoYWxmIGEsIGhhbGYgYikgeworICAgIHJldHVybiBmbG9h
dChhKSA8PSBmbG9hdChiKTsKK30KK2NoYXIgb3BlcmF0b3ItKGNoYXIgeCkgeworICAgIHJldHVy
biBjaGFyKC1pbnQoeCkpOworfQorc2hvcnQgb3BlcmF0b3ItKHNob3J0IHgpIHsKKyAgICByZXR1
cm4gc2hvcnQoLWludCh4KSk7Cit9CitoYWxmIG9wZXJhdG9yLShoYWxmIHgpIHsKKyAgICByZXR1
cm4gaGFsZigtZmxvYXQoeCkpOworfQorbmF0aXZlIGludCBvcGVyYXRvci0oaW50KTsKK25hdGl2
ZSBmbG9hdCBvcGVyYXRvci0oZmxvYXQpOwogCi0vLyBQcm92aWRlcyBvcGVyYXRvciZbXQotc3Rh
bmRhcmRMaWJyYXJ5ICs9IE9wZXJhdG9yQW5kZXJJbmRleGVyLmZ1bmN0aW9ucygpLmpvaW4oIjtc
biIpICsgIjtcbiI7Ci0KLS8vIE5hdGl2ZSB2ZWN0b3IgdHlwZXMgYXJlIGxpa2Ugc3RydWN0cyBp
biB0aGUgbGFuZ2F1Z2UsIGJ1dCB0aGV5IGRvIG5vdCBoYXZlIHRoZSBhbmRlciBmaWVsZCBhY2Nl
c3MuCi0vLyBJdCBpcyBub3QgcG9zc2libGUgdG8gdGFrZSB0aGUgYWRkcmVzcyBvZiBhIHZlY3Rv
ciBmaWVsZC4KLXN0YW5kYXJkTGlicmFyeSArPSBCdWlsdGluVmVjdG9yR2V0dGVyLmZ1bmN0aW9u
cygpLmpvaW4oIjtcbiIpICsgIjtcbiI7Ci1zdGFuZGFyZExpYnJhcnkgKz0gQnVpbHRpblZlY3Rv
clNldHRlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotc3RhbmRhcmRMaWJyYXJ5
ICs9IEJ1aWx0aW5WZWN0b3JJbmRleEdldHRlci5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7
XG4iOwotc3RhbmRhcmRMaWJyYXJ5ICs9IEJ1aWx0aW5WZWN0b3JJbmRleFNldHRlci5mdW5jdGlv
bnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotCi0vLyBGSVhNRTogRm9yIG5hdGl2ZSB0eXBlcyB0
aGVzZSBjb3VsZCBiZSBpbmNsdWRlZCBhcyBzb3VyY2UgaW4gdGhlIHN0YW5kYXJkIGxpYnJhcnku
Ci0vLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg4Njg1Ci1zdGFu
ZGFyZExpYnJhcnkgKz0gT3BlcmF0b3JCb29sLmZ1bmN0aW9ucygpLmpvaW4oIjtcbiIpICsgIjtc
biI7Ci1zdGFuZGFyZExpYnJhcnkgKz0gQnVpbHRpblZlY3RvckVxdWFsaXR5T3BlcmF0b3IuZnVu
Y3Rpb25zKCkuam9pbigiO1xuIikgKyAiO1xuIjsKLQotLy8gRklYTUU6IFRoZXNlIG5lZWQgdG8g
YmUgaW5jbHVkZWQgYXMgc291cmNlIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5Lgotc3RhbmRhcmRM
aWJyYXJ5ICs9IFN3aXp6bGVPcC5mdW5jdGlvbnMoKS5qb2luKCI7XG4iKSArICI7XG4iOwotc3Rh
bmRhcmRMaWJyYXJ5ICs9IEJ1aWx0aW5WZWN0b3JDb25zdHJ1Y3RvcnMuZnVuY3Rpb25zKCkuam9p
bigiO1xuIikgKyAiO1xuIjsKK3VjaGFyMiBvcGVyYXRvcisodWNoYXIyIGEsIHVjaGFyMiBiKSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9w
ZXJhdG9yLSh1Y2hhcjIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IqKHVjaGFyMiBhLCB1Y2hhcjIgYikg
eworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMiBv
cGVyYXRvcioodWNoYXIyIGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyMiBiKSB7CisgICAg
dWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLyh1Y2hh
cjIgYSwgdWNoYXIyIGIpIHsKKyAgICB1Y2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFb
MF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjIgb3BlcmF0b3IvKHVjaGFyMiBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXIy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLyh1Y2hhciBhLCB1
Y2hhcjIgYikgeworICAgIHVjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
MyBvcGVyYXRvcisodWNoYXIzIGEsIHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXIzIG9wZXJhdG9yLSh1Y2hhcjMgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjMgb3BlcmF0b3IqKHVjaGFyMyBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJb
MV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyMyBvcGVyYXRvcioodWNoYXIzIGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOwor
ICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMg
b3BlcmF0b3IqKHVjaGFyIGEsIHVjaGFyMyBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9y
Lyh1Y2hhcjMgYSwgdWNoYXIzIGIpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3Vs
dFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0
b3IvKHVjaGFyMyBhLCB1Y2hhciBiKSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0g
PSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLyh1Y2hh
ciBhLCB1Y2hhcjMgYikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAv
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvcisodWNoYXI0IGEsIHVj
aGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsg
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLSh1Y2hhcjQgYSwgdWNoYXI0IGIpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
LSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFb
M10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IqKHVjaGFy
NCBhLCB1Y2hhcjQgYikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvcioodWNoYXI0IGEsIHVjaGFyIGIpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJlc3VsdFszXSA9IGFbM10g
KiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IqKHVjaGFyIGEsIHVj
aGFyNCBiKSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAg
ICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLyh1Y2hhcjQgYSwgdWNoYXI0IGIpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAg
IHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IvKHVjaGFyNCBhLCB1Y2hhciBi
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXN1
bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lyh1Y2hhciBhLCB1Y2hhcjQgYikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDIgb3BlcmF0b3IrKHVzaG9ydDIgYSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3ItKHVz
aG9ydDIgYSwgdXNob3J0MiBiKSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IqKHVzaG9ydDIgYSwgdXNob3J0MiBiKSB7Cisg
ICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3Bl
cmF0b3IqKHVzaG9ydDIgYSwgdXNob3J0IGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvcioodXNob3J0IGEsIHVzaG9ydDIgYikgewor
ICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9y
Lyh1c2hvcnQyIGEsIHVzaG9ydDIgYikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLyh1c2hvcnQyIGEsIHVzaG9ydCBiKSB7
CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0
b3IvKHVzaG9ydCBhLCB1c2hvcnQyIGIpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvcisodXNob3J0MyBhLCB1c2hvcnQzIGIpIHsKKyAg
ICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1
bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci0odXNob3J0MyBhLCB1c2hvcnQzIGIp
IHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAg
ICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC0gYlsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvcioodXNob3J0MyBhLCB1c2hv
cnQzIGIpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICog
YlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvcioodXNob3J0MyBh
LCB1c2hvcnQgYikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBi
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yKih1c2hvcnQgYSwgdXNo
b3J0MyBiKSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IvKHVzaG9ydDMgYSwgdXNob3J0
MyBiKSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IvKHVzaG9ydDMgYSwg
dXNob3J0IGIpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci8odXNob3J0IGEsIHVzaG9y
dDMgYikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKyh1c2hvcnQ0IGEsIHVzaG9ydDQg
YikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJd
OworICAgIHJlc3VsdFszXSA9IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLSh1c2hvcnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
LSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFb
M10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKih1c2hv
cnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsy
XSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiWzNdOworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yKih1c2hvcnQ0IGEsIHVzaG9ydCBiKSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0WzNd
ID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IqKHVz
aG9ydCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBh
ICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci8odXNob3J0NCBhLCB1c2hvcnQ0IGIpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10g
PSBhWzNdIC8gYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci8o
dXNob3J0NCBhLCB1c2hvcnQgYikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJlc3VsdFsyXSA9
IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10gLyBiOworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLyh1c2hvcnQgYSwgdXNob3J0NCBiKSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAv
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yKyh1aW50MiBhLCB1aW50
MiBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MiBvcGVyYXRvci0odWludDIgYSwgdWludDIgYikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IqKHVpbnQyIGEsIHVpbnQyIGIpIHsK
KyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJh
dG9yKih1aW50MiBhLCB1aW50IGIpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
ID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQyIG9wZXJhdG9yKih1aW50IGEsIHVpbnQyIGIpIHsKKyAgICB1aW50MiByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLyh1aW50MiBhLCB1aW50MiBi
KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBv
cGVyYXRvci8odWludDIgYSwgdWludCBiKSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci8odWludCBhLCB1aW50MiBiKSB7CisgICAgdWludDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgLyBi
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvcisodWludDMgYSwgdWlu
dDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3ItKHVpbnQzIGEsIHVpbnQz
IGIpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJbMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yKih1aW50MyBhLCB1aW50MyBi
KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvcioodWludDMgYSwgdWludCBiKSB7
CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvcioodWludCBhLCB1aW50MyBiKSB7CisgICAgdWludDMg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEgKiBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50MyBvcGVyYXRvci8odWludDMgYSwgdWludDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDMgb3BlcmF0b3IvKHVpbnQzIGEsIHVpbnQgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1
bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iv
KHVpbnQgYSwgdWludDMgYikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
IC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhIC8g
YlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IrKHVpbnQ0IGEsIHVp
bnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSArIGJb
Ml07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLSh1aW50NCBhLCB1aW50NCBiKSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvcioodWludDQgYSwgdWlu
dDQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsy
XTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IqKHVpbnQ0IGEsIHVpbnQgYikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IqKHVpbnQgYSwgdWludDQgYikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
ICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICog
YlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IvKHVpbnQ0IGEsIHVp
bnQ0IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGJb
Ml07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLyh1aW50NCBhLCB1aW50IGIpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7CisgICAg
cmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLyh1aW50IGEsIHVpbnQ0IGIpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0g
YSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAv
IGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yKyhjaGFyMiBhLCBj
aGFyMiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMiBvcGVyYXRvci0oY2hhcjIgYSwgY2hhcjIgYikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IqKGNoYXIyIGEsIGNoYXIyIGIp
IHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9w
ZXJhdG9yKihjaGFyMiBhLCBjaGFyIGIpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yKihjaGFyIGEsIGNoYXIyIGIpIHsKKyAgICBjaGFyMiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJb
MV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLyhjaGFyMiBhLCBjaGFy
MiBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MiBvcGVyYXRvci8oY2hhcjIgYSwgY2hhciBiKSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci8oY2hhciBhLCBjaGFyMiBiKSB7CisgICAgY2hh
cjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEg
LyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvcisoY2hhcjMgYSwg
Y2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsg
YlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3ItKGNoYXIzIGEsIGNo
YXIzIGIpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAtIGJbMF07
CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAtIGJb
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yKihjaGFyMyBhLCBjaGFy
MyBiKSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOwor
ICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvciooY2hhcjMgYSwgY2hhciBi
KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvciooY2hhciBhLCBjaGFyMyBiKSB7CisgICAgY2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGEg
KiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMyBvcGVyYXRvci8oY2hhcjMgYSwgY2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsx
XTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjMgb3BlcmF0b3IvKGNoYXIzIGEsIGNoYXIgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICBy
ZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0
b3IvKGNoYXIgYSwgY2hhcjMgYikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0g
PSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBh
IC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IrKGNoYXI0IGEs
IGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAr
IGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLShjaGFyNCBhLCBjaGFyNCBiKSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10g
LSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvciooY2hhcjQgYSwg
Y2hhcjQgYikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICog
YlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IqKGNoYXI0IGEsIGNoYXIgYikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYjsKKyAg
ICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IqKGNoYXIgYSwgY2hhcjQgYikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBh
ICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IvKGNoYXI0IGEs
IGNoYXI0IGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAv
IGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLyhjaGFyNCBhLCBjaGFyIGIpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGI7Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLyhjaGFyIGEsIGNoYXI0IGIpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0g
YSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MiBvcGVyYXRvcisoc2hvcnQy
IGEsIHNob3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBd
ICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQyIG9wZXJhdG9yLShzaG9ydDIgYSwgc2hvcnQyIGIpIHsKKyAgICBzaG9ydDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IqKHNob3J0
MiBhLCBzaG9ydDIgYikgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0MiBvcGVyYXRvciooc2hvcnQyIGEsIHNob3J0IGIpIHsKKyAgICBzaG9ydDIg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
KiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IqKHNob3J0IGEsIHNo
b3J0MiBiKSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQy
IG9wZXJhdG9yLyhzaG9ydDIgYSwgc2hvcnQyIGIpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IvKHNob3J0MiBhLCBzaG9ydCBi
KSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQyIG9wZXJh
dG9yLyhzaG9ydCBhLCBzaG9ydDIgYikgeworICAgIHNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvcisoc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgc2hv
cnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0g
PSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLShzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IqKHNob3J0MyBhLCBzaG9ydDMgYikgeworICAg
IHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0
WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvciooc2hvcnQzIGEsIHNob3J0IGIpIHsKKyAg
ICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IqKHNob3J0IGEsIHNob3J0MyBiKSB7CisgICAgc2hvcnQz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICog
YlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQzIG9wZXJhdG9yLyhzaG9ydDMgYSwgc2hvcnQzIGIpIHsKKyAgICBzaG9ydDMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBi
WzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDMgb3BlcmF0b3IvKHNob3J0MyBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsK
KyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQz
IG9wZXJhdG9yLyhzaG9ydCBhLCBzaG9ydDMgYikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
cisoc2hvcnQ0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLShzaG9ydDQgYSwgc2hvcnQ0IGIpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAg
IHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3IqKHNob3J0NCBhLCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAqIGJbM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvciooc2hvcnQ0IGEsIHNob3J0
IGIpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJl
c3VsdFszXSA9IGFbM10gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3IqKHNob3J0IGEsIHNob3J0NCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLyhzaG9ydDQgYSwgc2hvcnQ0IGIpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJlc3VsdFszXSA9
IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IvKHNo
b3J0NCBhLCBzaG9ydCBiKSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLyhzaG9ydCBhLCBzaG9ydDQgYikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07Cisg
ICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJbM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IrKGludDIgYSwgaW50MiBiKSB7CisgICAg
aW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSArIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYVsxXSArIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3ItKGlu
dDIgYSwgaW50MiBiKSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAt
IGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDIgb3BlcmF0b3IqKGludDIgYSwgaW50MiBiKSB7CisgICAgaW50MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IqKGludDIgYSwgaW50IGIpIHsK
KyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRb
MV0gPSBhWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvciooaW50
IGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGEgKiBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQy
IG9wZXJhdG9yLyhpbnQyIGEsIGludDIgYikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLyhpbnQyIGEsIGludCBiKSB7CisgICAgaW50
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsx
XSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IvKGludCBhLCBpbnQy
IGIpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRv
cisoaW50MyBhLCBpbnQzIGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci0oaW50
MyBhLCBpbnQzIGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0g
YlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC0gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC0gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvciooaW50MyBhLCBp
bnQzIGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYlswXTsK
KyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYlsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvciooaW50MyBhLCBpbnQgYikg
eworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yKihpbnQgYSwgaW50MyBiKSB7CisgICAgaW50MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAqIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYSAqIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMg
b3BlcmF0b3IvKGludDMgYSwgaW50MyBiKSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVz
dWx0WzJdID0gYVsyXSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0
b3IvKGludDMgYSwgaW50IGIpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci8oaW50IGEsIGludDMg
YikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJl
c3VsdFsxXSA9IGEgLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgLyBiWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yKyhpbnQ0IGEsIGludDQgYikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gKyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKyBiWzJdOworICAgIHJlc3VsdFszXSA9
IGFbM10gKyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLShpbnQ0
IGEsIGludDQgYikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBi
WzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0g
LSBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yKihpbnQ0IGEsIGludDQgYikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFd
OworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiWzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gKiBi
WzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yKihpbnQ0IGEsIGludCBi
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVz
dWx0WzFdID0gYVsxXSAqIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGI7CisgICAgcmVzdWx0
WzNdID0gYVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IqKGlu
dCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlsw
XTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsK
KyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci8oaW50NCBhLCBpbnQ0IGIpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYlszXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci8oaW50NCBhLCBpbnQgYikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFb
MV0gLyBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiOworICAgIHJlc3VsdFszXSA9IGFbM10g
LyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLyhpbnQgYSwgaW50NCBi
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVz
dWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0
WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yKyho
YWxmMiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFb
MF0gKyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKyBiWzFdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMiBvcGVyYXRvci0oaGFsZjIgYSwgaGFsZjIgYikgeworICAgIGhhbGYyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC0gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFd
IC0gYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IqKGhhbGYyIGEs
IGhhbGYyIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJb
MF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyIG9wZXJhdG9yKihoYWxmMiBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYVswXSAqIGI7CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yKihoYWxmIGEsIGhhbGYyIGIpIHsKKyAg
ICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAqIGJbMF07CisgICAgcmVzdWx0WzFd
ID0gYSAqIGJbMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLyhoYWxm
MiBhLCBoYWxmMiBiKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
LyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMiBvcGVyYXRvci8oaGFsZjIgYSwgaGFsZiBiKSB7CisgICAgaGFsZjIgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gLyBiOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci8oaGFsZiBhLCBoYWxmMiBiKSB7
CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgLyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvciso
aGFsZjMgYSwgaGFsZjMgYikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdICsgYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3ItKGhh
bGYzIGEsIGhhbGYzIGIpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVsw
XSAtIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAtIGJbMV07CisgICAgcmVzdWx0WzJdID0g
YVsyXSAtIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yKihoYWxm
MyBhLCBoYWxmMyBiKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFb
Ml0gKiBiWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvciooaGFsZjMg
YSwgaGFsZiBiKSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBi
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvciooaGFsZiBhLCBoYWxmMyBiKSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGEgKiBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGEgKiBiWzFdOworICAgIHJlc3VsdFsyXSA9IGEgKiBiWzJdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci8oaGFsZjMgYSwgaGFsZjMgYikgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC8gYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYlsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjMgb3BlcmF0b3IvKGhhbGYzIGEsIGhhbGYgYikgeworICAgIGhhbGYzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8g
YjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjMgb3BlcmF0b3IvKGhhbGYgYSwgaGFsZjMgYikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF0gPSBhIC8gYlswXTsKKyAgICByZXN1bHRbMV0gPSBhIC8gYlsxXTsKKyAgICByZXN1
bHRbMl0gPSBhIC8gYlsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Ir
KGhhbGY0IGEsIGhhbGY0IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSArIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSArIGJbMV07CisgICAgcmVzdWx0WzJd
ID0gYVsyXSArIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSArIGJbM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLShoYWxmNCBhLCBoYWxmNCBiKSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOworICAgIHJlc3VsdFsz
XSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvcioo
aGFsZjQgYSwgaGFsZjQgYikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
WzBdICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICogYlsxXTsKKyAgICByZXN1bHRbMl0g
PSBhWzJdICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICogYlszXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IqKGhhbGY0IGEsIGhhbGYgYikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICogYjsKKyAgICByZXN1bHRbMV0gPSBhWzFd
ICogYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdICogYjsKKyAgICByZXN1bHRbM10gPSBhWzNdICog
YjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjQg
YikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1
bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iv
KGhhbGY0IGEsIGhhbGY0IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0g
YVswXSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAvIGJbMV07CisgICAgcmVzdWx0WzJd
ID0gYVsyXSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVszXSAvIGJbM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLyhoYWxmNCBhLCBoYWxmIGIpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAvIGI7CisgICAgcmVzdWx0WzFdID0gYVsx
XSAvIGI7CisgICAgcmVzdWx0WzJdID0gYVsyXSAvIGI7CisgICAgcmVzdWx0WzNdID0gYVszXSAv
IGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLyhoYWxmIGEsIGhhbGY0
IGIpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAg
cmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVz
dWx0WzNdID0gYSAvIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRv
cisoZmxvYXQyIGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQyIG9wZXJhdG9yLShmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0
b3IqKGZsb2F0MiBhLCBmbG9hdDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvciooZmxvYXQyIGEsIGZsb2F0IGIpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAgIHJlc3VsdFsx
XSA9IGFbMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IqKGZs
b2F0IGEsIGZsb2F0MiBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBh
ICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQyIG9wZXJhdG9yLyhmbG9hdDIgYSwgZmxvYXQyIGIpIHsKKyAgICBmbG9hdDIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9IGFbMV0g
LyBiWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IvKGZsb2F0MiBh
LCBmbG9hdCBiKSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8g
YjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQyIG9wZXJhdG9yLyhmbG9hdCBhLCBmbG9hdDIgYikgeworICAgIGZsb2F0MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvcisoZmxvYXQzIGEsIGZsb2F0MyBiKSB7
CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICBy
ZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLShmbG9hdDMgYSwgZmxvYXQzIGIp
IHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBdOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBiWzJdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IqKGZsb2F0MyBhLCBmbG9hdDMg
YikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07Cisg
ICAgcmVzdWx0WzFdID0gYVsxXSAqIGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvciooZmxvYXQzIGEsIGZsb2F0
IGIpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gKiBiOworICAg
IHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBiOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0MyBiKSB7Cisg
ICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRb
MV0gPSBhICogYlsxXTsKKyAgICByZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzIG9wZXJhdG9yLyhmbG9hdDMgYSwgZmxvYXQzIGIpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3VsdFsxXSA9
IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IvKGZsb2F0MyBhLCBmbG9hdCBiKSB7CisgICAgZmxv
YXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBh
WzFdIC8gYjsKKyAgICByZXN1bHRbMl0gPSBhWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQzIG9wZXJhdG9yLyhmbG9hdCBhLCBmbG9hdDMgYikgeworICAgIGZsb2F0MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAvIGJbMV07
CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvcisoZmxvYXQ0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhWzBdICsgYlswXTsKKyAgICByZXN1bHRbMV0gPSBhWzFdICsgYlsxXTsK
KyAgICByZXN1bHRbMl0gPSBhWzJdICsgYlsyXTsKKyAgICByZXN1bHRbM10gPSBhWzNdICsgYlsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLShmbG9hdDQgYSwgZmxv
YXQ0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLSBiWzBd
OworICAgIHJlc3VsdFsxXSA9IGFbMV0gLSBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLSBi
WzJdOworICAgIHJlc3VsdFszXSA9IGFbM10gLSBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IqKGZsb2F0NCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdID0gYVswXSAqIGJbMF07CisgICAgcmVzdWx0WzFdID0gYVsxXSAq
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYVsyXSAqIGJbMl07CisgICAgcmVzdWx0WzNdID0gYVsz
XSAqIGJbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvciooZmxvYXQ0
IGEsIGZsb2F0IGIpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0g
KiBiOworICAgIHJlc3VsdFsxXSA9IGFbMV0gKiBiOworICAgIHJlc3VsdFsyXSA9IGFbMl0gKiBi
OworICAgIHJlc3VsdFszXSA9IGFbM10gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0NCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSBhICogYlswXTsKKyAgICByZXN1bHRbMV0gPSBhICogYlsxXTsKKyAgICBy
ZXN1bHRbMl0gPSBhICogYlsyXTsKKyAgICByZXN1bHRbM10gPSBhICogYlszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLyhmbG9hdDQgYSwgZmxvYXQ0IGIpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFbMF0gLyBiWzBdOworICAgIHJlc3Vs
dFsxXSA9IGFbMV0gLyBiWzFdOworICAgIHJlc3VsdFsyXSA9IGFbMl0gLyBiWzJdOworICAgIHJl
c3VsdFszXSA9IGFbM10gLyBiWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3IvKGZsb2F0NCBhLCBmbG9hdCBiKSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF0gPSBhWzBdIC8gYjsKKyAgICByZXN1bHRbMV0gPSBhWzFdIC8gYjsKKyAgICByZXN1bHRb
Ml0gPSBhWzJdIC8gYjsKKyAgICByZXN1bHRbM10gPSBhWzNdIC8gYjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLyhmbG9hdCBhLCBmbG9hdDQgYikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gYSAvIGJbMF07CisgICAgcmVzdWx0WzFdID0gYSAv
IGJbMV07CisgICAgcmVzdWx0WzJdID0gYSAvIGJbMl07CisgICAgcmVzdWx0WzNdID0gYSAvIGJb
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLShjaGFyMiBhKSB7Cisg
ICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9
IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci0oY2hhcjMgYSkg
eworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRb
MV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3ItKGNoYXI0IGEpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0g
LWFbMl07CisgICAgcmVzdWx0WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0MiBvcGVyYXRvci0oc2hvcnQyIGEpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDMgb3BlcmF0b3ItKHNob3J0MyBhKSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXN1bHRb
Ml0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLShzaG9y
dDQgYSkgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAg
cmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmVzdWx0WzNd
ID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3ItKGludDIgYSkg
eworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsx
XSA9IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLShpbnQzIGEp
IHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRb
MV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci0oaW50NCBhKSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFb
Ml07CisgICAgcmVzdWx0WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYy
IG9wZXJhdG9yLShoYWxmMiBhKSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9
IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1hWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMyBvcGVyYXRvci0oaGFsZjMgYSkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSAtYVswXTsKKyAgICByZXN1bHRbMV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3ItKGhhbGY0IGEpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0g
LWFbMV07CisgICAgcmVzdWx0WzJdID0gLWFbMl07CisgICAgcmVzdWx0WzNdID0gLWFbM107Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MiBvcGVyYXRvci0oZmxvYXQyIGEpIHsKKyAgICBm
bG9hdDIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IC1hWzBdOworICAgIHJlc3VsdFsxXSA9IC1h
WzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3ItKGZsb2F0MyBhKSB7
CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSAtYVswXTsKKyAgICByZXN1bHRb
MV0gPSAtYVsxXTsKKyAgICByZXN1bHRbMl0gPSAtYVsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLShmbG9hdDQgYSkgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdID0gLWFbMF07CisgICAgcmVzdWx0WzFdID0gLWFbMV07CisgICAgcmVzdWx0WzJd
ID0gLWFbMl07CisgICAgcmVzdWx0WzNdID0gLWFbM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDIgb3BlcmF0b3IrKGhhbGYyeDIgYSwgaGFsZjJ4MiBiKSB7CisgICAgaGFsZjJ4MiBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSArIGJbMF1bMF07CisgICAgcmVzdWx0
WzBdWzFdID0gYVswXVsxXSArIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAr
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSArIGJbMV1bMV07CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgb3BlcmF0b3ItKGhhbGYyeDIgYSwgaGFsZjJ4MiBiKSB7
CisgICAgaGFsZjJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAtIGJbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAtIGJbMF1bMV07CisgICAgcmVzdWx0WzFd
WzBdID0gYVsxXVswXSAtIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAtIGJb
MV1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgb3BlcmF0b3ItKGhhbGYyeDIg
YSkgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IC1hWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IC1hWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IC1hWzFdWzBd
OworICAgIHJlc3VsdFsxXVsxXSA9IC1hWzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMngyIG9wZXJhdG9yKihoYWxmMngyIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAgIHJlc3VsdFsw
XVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmMngyIG9wZXJhdG9yKihoYWxmMngyIGEsIGhhbGYgYikgeworICAg
IGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiOworICAgIHJl
c3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBi
OworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmMngyIG9wZXJhdG9yKihoYWxmIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGEgKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9
IGEgKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGEgKiBiWzFdWzBdOworICAgIHJlc3Vs
dFsxXVsxXSA9IGEgKiBiWzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngyIG9w
ZXJhdG9yLyhoYWxmMngyIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFb
MF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMngyIG9wZXJhdG9yLyhoYWxmMngyIGEsIGhhbGYgYikgeworICAgIGhhbGYyeDIg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLyBiOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiOworICAgIHJl
c3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngy
IG9wZXJhdG9yLyhoYWxmIGEsIGhhbGYyeDIgYikgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGEgLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGEgLyBiWzBd
WzFdOworICAgIHJlc3VsdFsxXVswXSA9IGEgLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9
IGEgLyBiWzFdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIG9wZXJhdG9yKyho
YWxmMngzIGEsIGhhbGYyeDMgYikgeworICAgIGhhbGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBi
WzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3Vs
dFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0g
KyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMngzIG9wZXJhdG9yLShoYWxmMngzIGEsIGhhbGYyeDMgYikg
eworICAgIGhhbGYyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLSBiWzBd
WzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLSBiWzBdWzFdOworICAgIHJlc3VsdFsw
XVsyXSA9IGFbMF1bMl0gLSBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLSBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLSBiWzFdWzFdOworICAgIHJlc3Vs
dFsxXVsyXSA9IGFbMV1bMl0gLSBiWzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
MngzIG9wZXJhdG9yLShoYWxmMngzIGEpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSAtYVswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSAtYVswXVsxXTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSAtYVswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSAtYVsxXVswXTsKKyAg
ICByZXN1bHRbMV1bMV0gPSAtYVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSAtYVsxXVsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBvcGVyYXRvciooaGFsZjJ4MyBhLCBoYWxm
MngzIGIpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
ICogYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYlswXVsxXTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFd
WzBdICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYlsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjJ4MyBvcGVyYXRvciooaGFsZjJ4MyBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMngzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0g
PSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjJ4MyBvcGVyYXRvciooaGFsZiBhLCBoYWxmMngzIGIpIHsKKyAgICBoYWxmMngzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhICogYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBh
ICogYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhICogYlswXVsyXTsKKyAgICByZXN1bHRb
MV1bMF0gPSBhICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhICogYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhICogYlsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4MyBvcGVyYXRvci8oaGFsZjJ4MyBhLCBoYWxmMngzIGIpIHsKKyAgICBoYWxmMngzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhWzBdWzFdIC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYlsw
XVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYlsxXVswXTsKKyAgICByZXN1bHRb
MV1bMV0gPSBhWzFdWzFdIC8gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8g
YlsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBvcGVyYXRvci8oaGFsZjJ4
MyBhLCBoYWxmIGIpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBh
WzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRb
MF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBvcGVyYXRvci8oaGFsZiBhLCBo
YWxmMngzIGIpIHsKKyAgICBoYWxmMngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhIC8g
YlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhIC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1b
Ml0gPSBhIC8gYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhIC8gYlsxXVswXTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBhIC8gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhIC8gYlsxXVsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBvcGVyYXRvcisoaGFsZjJ4NCBhLCBo
YWxmMng0IGIpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBd
WzBdICsgYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICsgYlswXVsxXTsKKyAg
ICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICsgYlswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gPSBh
WzBdWzNdICsgYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICsgYlsxXVswXTsK
KyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICsgYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0g
PSBhWzFdWzJdICsgYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdICsgYlsxXVsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBvcGVyYXRvci0oaGFsZjJ4NCBhLCBo
YWxmMng0IGIpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBd
WzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAg
ICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gPSBh
WzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsK
KyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0g
PSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdIC0gYlsxXVsz
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4NCBvcGVyYXRvci0oaGFsZjJ4NCBhKSB7
CisgICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAg
cmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07Cisg
ICAgcmVzdWx0WzBdWzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1b
Ml07CisgICAgcmVzdWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDQgb3BlcmF0b3IqKGhhbGYyeDQgYSwgaGFsZjJ4NCBiKSB7CisgICAgaGFsZjJ4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAqIGJbMF1bMF07CisgICAgcmVzdWx0
WzBdWzFdID0gYVswXVsxXSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAq
IGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGJbMF1bM107CisgICAgcmVz
dWx0WzFdWzBdID0gYVsxXVswXSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsx
XSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGJbMV1bMl07CisgICAg
cmVzdWx0WzFdWzNdID0gYVsxXVszXSAqIGJbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDQgb3BlcmF0b3IqKGhhbGYyeDQgYSwgaGFsZiBiKSB7CisgICAgaGFsZjJ4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAqIGI7CisgICAgcmVzdWx0WzBdWzFdID0g
YVswXVsxXSAqIGI7CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAqIGI7CisgICAgcmVzdWx0
WzBdWzNdID0gYVswXVszXSAqIGI7CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAqIGI7Cisg
ICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAqIGI7CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsy
XSAqIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyeDQgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjJ4NCBiKSB7CisgICAgaGFsZjJ4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBd
WzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAg
cmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJbMV1b
MF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0g
YSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJbMV1bM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyeDQgb3BlcmF0b3IvKGhhbGYyeDQgYSwgaGFsZjJ4NCBiKSB7Cisg
ICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAvIGJbMF1bMF07
CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJd
ID0gYVswXVsyXSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGJbMF1b
M107CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFd
WzFdID0gYVsxXVsxXSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAvIGJb
MV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAvIGJbMV1bM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyeDQgb3BlcmF0b3IvKGhhbGYyeDQgYSwgaGFsZiBiKSB7CisgICAg
aGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAvIGI7CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSAvIGI7CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAvIGI7
CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGI7CisgICAgcmVzdWx0WzFdWzBdID0gYVsx
XVswXSAvIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAvIGI7CisgICAgcmVzdWx0WzFd
WzJdID0gYVsxXVsyXSAvIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAvIGI7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgb3BlcmF0b3IvKGhhbGYgYSwgaGFsZjJ4NCBiKSB7
CisgICAgaGFsZjJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07Cisg
ICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJb
MF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBd
ID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVz
dWx0WzFdWzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAvIGJbMV1bM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgb3BlcmF0b3IrKGhhbGYzeDIgYSwgaGFs
ZjN4MiBiKSB7CisgICAgaGFsZjN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVsw
XSArIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSArIGJbMF1bMV07CisgICAg
cmVzdWx0WzFdWzBdID0gYVsxXVswXSArIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsx
XVsxXSArIGJbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSArIGJbMl1bMF07Cisg
ICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSArIGJbMl1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzeDIgb3BlcmF0b3ItKGhhbGYzeDIgYSwgaGFsZjN4MiBiKSB7CisgICAgaGFsZjN4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAtIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSAtIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVsw
XSAtIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAtIGJbMV1bMV07CisgICAg
cmVzdWx0WzJdWzBdID0gYVsyXVswXSAtIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsy
XVsxXSAtIGJbMl1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgb3BlcmF0b3It
KGhhbGYzeDIgYSkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IC1h
WzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IC1hWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9
IC1hWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IC1hWzFdWzFdOworICAgIHJlc3VsdFsyXVsw
XSA9IC1hWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IC1hWzJdWzFdOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJhdG9yKihoYWxmM3gyIGEsIGhhbGYzeDIgYikgeworICAg
IGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFd
OworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsx
XSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9w
ZXJhdG9yKihoYWxmM3gyIGEsIGhhbGYgYikgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGFbMF1bMF0gKiBiOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBi
OworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gKiBiOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiOworICAgIHJlc3VsdFsy
XVsxXSA9IGFbMl1bMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJh
dG9yKihoYWxmIGEsIGhhbGYzeDIgYikgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGEgKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGEgKiBiWzBdWzFdOwor
ICAgIHJlc3VsdFsxXVswXSA9IGEgKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGEgKiBi
WzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGEgKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsx
XSA9IGEgKiBiWzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJhdG9y
LyhoYWxmM3gyIGEsIGhhbGYzeDIgYikgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0g
LyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJl
c3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1b
MF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJdWzFdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJhdG9yLyhoYWxmM3gyIGEsIGhhbGYgYikg
eworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1b
MF0gLyBiOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiOworICAgIHJlc3VsdFsyXVsw
XSA9IGFbMl1bMF0gLyBiOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmM3gyIG9wZXJhdG9yLyhoYWxmIGEsIGhhbGYzeDIgYikgewor
ICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGEgLyBiWzBdWzBdOworICAg
IHJlc3VsdFswXVsxXSA9IGEgLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGEgLyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGEgLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9
IGEgLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGEgLyBiWzJdWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmM3gzIG9wZXJhdG9yKyhoYWxmM3gzIGEsIGhhbGYzeDMgYikgewor
ICAgIGhhbGYzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBd
OworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsy
XSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsx
XVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKyBi
WzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJlc3Vs
dFsyXVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
M3gzIG9wZXJhdG9yLShoYWxmM3gzIGEsIGhhbGYzeDMgYikgeworICAgIGhhbGYzeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLSBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLSBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLSBiWzBd
WzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLSBiWzFdWzBdOworICAgIHJlc3VsdFsx
XVsxXSA9IGFbMV1bMV0gLSBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLSBi
WzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gLSBiWzJdWzBdOworICAgIHJlc3Vs
dFsyXVsxXSA9IGFbMl1bMV0gLSBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0g
LSBiWzJdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIG9wZXJhdG9yLShoYWxm
M3gzIGEpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSAtYVswXVsw
XTsKKyAgICByZXN1bHRbMF1bMV0gPSAtYVswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSAtYVsw
XVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSAtYVsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSAt
YVsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSAtYVsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0g
PSAtYVsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSAtYVsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSAtYVsyXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBvcGVyYXRvcioo
aGFsZjN4MyBhLCBoYWxmM3gzIGIpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBhWzBdWzBdICogYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICog
YlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYlswXVsyXTsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFd
ICogYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYlsxXVsyXTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJd
WzFdICogYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICogYlsyXVsyXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBvcGVyYXRvciooaGFsZjN4MyBhLCBoYWxmIGIp
IHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsK
KyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBd
WzJdICogYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1b
MV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICog
YjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjN4MyBvcGVyYXRvciooaGFsZiBhLCBoYWxmM3gzIGIpIHsKKyAgICBoYWxmM3gzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhICogYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0g
PSBhICogYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhICogYlswXVsyXTsKKyAgICByZXN1
bHRbMV1bMF0gPSBhICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhICogYlsxXVsxXTsK
KyAgICByZXN1bHRbMV1bMl0gPSBhICogYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhICog
YlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhICogYlsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhICogYlsyXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBvcGVyYXRv
ci8oaGFsZjN4MyBhLCBoYWxmM3gzIGIpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFd
WzFdIC8gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYlsxXVsyXTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBh
WzJdWzFdIC8gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYlsyXVsyXTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBvcGVyYXRvci8oaGFsZjN4MyBhLCBoYWxm
IGIpIHsKKyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8g
YjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMF1bMl0gPSBh
WzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRb
MV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAg
ICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFd
IC8gYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjN4MyBvcGVyYXRvci8oaGFsZiBhLCBoYWxmM3gzIGIpIHsKKyAgICBoYWxmM3gz
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhIC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhIC8gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBhIC8gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhIC8gYlsxXVsx
XTsKKyAgICByZXN1bHRbMV1bMl0gPSBhIC8gYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBh
IC8gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhIC8gYlsyXVsxXTsKKyAgICByZXN1bHRb
Ml1bMl0gPSBhIC8gYlsyXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCBvcGVy
YXRvcisoaGFsZjN4NCBhLCBoYWxmM3g0IGIpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBhWzBdWzBdICsgYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdICsgYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICsgYlswXVsyXTsKKyAg
ICByZXN1bHRbMF1bM10gPSBhWzBdWzNdICsgYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBh
WzFdWzBdICsgYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICsgYlsxXVsxXTsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICsgYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10g
PSBhWzFdWzNdICsgYlsxXVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICsgYlsyXVsw
XTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICsgYlsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhWzJdWzJdICsgYlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdICsgYlsy
XVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCBvcGVyYXRvci0oaGFsZjN4NCBh
LCBoYWxmM3g0IGIpIHsKKyAgICBoYWxmM3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBh
WzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsK
KyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRbMF1bM10g
PSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVsw
XTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdIC0gYlsx
XVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC0g
YlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC0gYlsyXVszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjN4NCBvcGVyYXRvci0oaGFsZjN4NCBhKSB7CisgICAgaGFsZjN4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzBd
WzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0
WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmVz
dWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07Cisg
ICAgcmVzdWx0WzJdWzNdID0gLWFbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
eDQgb3BlcmF0b3IqKGhhbGYzeDQgYSwgaGFsZjN4NCBiKSB7CisgICAgaGFsZjN4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gYVswXVsxXSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAqIGJbMF1b
Ml07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGJbMF1bM107CisgICAgcmVzdWx0WzFd
WzBdID0gYVsxXVswXSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAqIGJb
MV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGJbMV1bMl07CisgICAgcmVzdWx0
WzFdWzNdID0gYVsxXVszXSAqIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAq
IGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSAqIGJbMl1bMV07CisgICAgcmVz
dWx0WzJdWzJdID0gYVsyXVsyXSAqIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYVsyXVsz
XSAqIGJbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgb3BlcmF0b3IqKGhh
bGYzeDQgYSwgaGFsZiBiKSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYVswXVswXSAqIGI7CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAqIGI7CisgICAgcmVz
dWx0WzBdWzJdID0gYVswXVsyXSAqIGI7CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGI7
CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAqIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsx
XVsxXSAqIGI7CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGI7CisgICAgcmVzdWx0WzFd
WzNdID0gYVsxXVszXSAqIGI7CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAqIGI7CisgICAg
cmVzdWx0WzJdWzFdID0gYVsyXVsxXSAqIGI7CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAq
IGI7CisgICAgcmVzdWx0WzJdWzNdID0gYVsyXVszXSAqIGI7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzeDQgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjN4NCBiKSB7CisgICAgaGFsZjN4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVz
dWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAq
IGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJbMV1bM107CisgICAgcmVzdWx0WzJd
WzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAqIGJbMl1bMV07CisgICAg
cmVzdWx0WzJdWzJdID0gYSAqIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYSAqIGJbMl1b
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgb3BlcmF0b3IvKGhhbGYzeDQgYSwg
aGFsZjN4NCBiKSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVsw
XVswXSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAvIGJbMF1bMV07Cisg
ICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0g
YVswXVszXSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVswXSAvIGJbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJd
ID0gYVsxXVsyXSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAvIGJbMV1b
M107CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJd
WzFdID0gYVsyXVsxXSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAvIGJb
Ml1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYVsyXVszXSAvIGJbMl1bM107CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYzeDQgb3BlcmF0b3IvKGhhbGYzeDQgYSwgaGFsZiBiKSB7CisgICAg
aGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAvIGI7CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSAvIGI7CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAvIGI7
CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGI7CisgICAgcmVzdWx0WzFdWzBdID0gYVsx
XVswXSAvIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAvIGI7CisgICAgcmVzdWx0WzFd
WzJdID0gYVsxXVsyXSAvIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVszXSAvIGI7CisgICAg
cmVzdWx0WzJdWzBdID0gYVsyXVswXSAvIGI7CisgICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSAv
IGI7CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAvIGI7CisgICAgcmVzdWx0WzJdWzNdID0g
YVsyXVszXSAvIGI7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDQgb3BlcmF0b3IvKGhh
bGYgYSwgaGFsZjN4NCBiKSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVz
dWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107
CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAv
IGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFd
WzNdID0gYSAvIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1b
Ml07CisgICAgcmVzdWx0WzJdWzNdID0gYSAvIGJbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0eDIgb3BlcmF0b3IrKGhhbGY0eDIgYSwgaGFsZjR4MiBiKSB7CisgICAgaGFsZjR4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSArIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSArIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVsw
XSArIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSArIGJbMV1bMV07CisgICAg
cmVzdWx0WzJdWzBdID0gYVsyXVswXSArIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsy
XVsxXSArIGJbMl1bMV07CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSArIGJbM11bMF07Cisg
ICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSArIGJbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0eDIgb3BlcmF0b3ItKGhhbGY0eDIgYSwgaGFsZjR4MiBiKSB7CisgICAgaGFsZjR4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAtIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYVswXVsxXSAtIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYVsxXVsw
XSAtIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAtIGJbMV1bMV07CisgICAg
cmVzdWx0WzJdWzBdID0gYVsyXVswXSAtIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsy
XVsxXSAtIGJbMl1bMV07CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAtIGJbM11bMF07Cisg
ICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAtIGJbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0eDIgb3BlcmF0b3ItKGhhbGY0eDIgYSkgeworICAgIGhhbGY0eDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IC1hWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IC1hWzBdWzFd
OworICAgIHJlc3VsdFsxXVswXSA9IC1hWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IC1hWzFd
WzFdOworICAgIHJlc3VsdFsyXVswXSA9IC1hWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IC1h
WzJdWzFdOworICAgIHJlc3VsdFszXVswXSA9IC1hWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9
IC1hWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9wZXJhdG9yKihoYWxm
NHgyIGEsIGhhbGY0eDIgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBd
WzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsx
XVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBi
WzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJlc3Vs
dFszXVswXSA9IGFbM11bMF0gKiBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0g
KiBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9wZXJhdG9yKihoYWxm
NHgyIGEsIGhhbGYgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IGFbMF1bMF0gKiBiOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiOworICAgIHJlc3Vs
dFsxXVswXSA9IGFbMV1bMF0gKiBiOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiOwor
ICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1b
MV0gKiBiOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gKiBiOworICAgIHJlc3VsdFszXVsx
XSA9IGFbM11bMV0gKiBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9wZXJhdG9y
KihoYWxmIGEsIGhhbGY0eDIgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGEgKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGEgKiBiWzBdWzFdOworICAg
IHJlc3VsdFsxXVswXSA9IGEgKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGEgKiBiWzFd
WzFdOworICAgIHJlc3VsdFsyXVswXSA9IGEgKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9
IGEgKiBiWzJdWzFdOworICAgIHJlc3VsdFszXVswXSA9IGEgKiBiWzNdWzBdOworICAgIHJlc3Vs
dFszXVsxXSA9IGEgKiBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9w
ZXJhdG9yLyhoYWxmNHgyIGEsIGhhbGY0eDIgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFb
MF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9
IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJdWzFd
OworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gLyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsx
XSA9IGFbM11bMV0gLyBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgyIG9w
ZXJhdG9yLyhoYWxmNHgyIGEsIGhhbGYgYikgeworICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGFbMF1bMF0gLyBiOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBi
OworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gLyBiOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gLyBiOworICAgIHJlc3VsdFsy
XVsxXSA9IGFbMl1bMV0gLyBiOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gLyBiOworICAg
IHJlc3VsdFszXVsxXSA9IGFbM11bMV0gLyBiOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NHgyIG9wZXJhdG9yLyhoYWxmIGEsIGhhbGY0eDIgYikgeworICAgIGhhbGY0eDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGEgLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGEgLyBi
WzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGEgLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsx
XSA9IGEgLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGEgLyBiWzJdWzBdOworICAgIHJl
c3VsdFsyXVsxXSA9IGEgLyBiWzJdWzFdOworICAgIHJlc3VsdFszXVswXSA9IGEgLyBiWzNdWzBd
OworICAgIHJlc3VsdFszXVsxXSA9IGEgLyBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNHgzIG9wZXJhdG9yKyhoYWxmNHgzIGEsIGhhbGY0eDMgYikgeworICAgIGhhbGY0eDMg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3Vs
dFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0g
KyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJl
c3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1b
Ml0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKyBiWzJdWzBdOworICAg
IHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFb
Ml1bMl0gKyBiWzJdWzJdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gKyBiWzNdWzBdOwor
ICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKyBiWzNdWzFdOworICAgIHJlc3VsdFszXVsyXSA9
IGFbM11bMl0gKyBiWzNdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIG9wZXJh
dG9yLShoYWxmNHgzIGEsIGhhbGY0eDMgYikgeworICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJl
c3VsdFswXVswXSA9IGFbMF1bMF0gLSBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1b
MV0gLSBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLSBiWzBdWzJdOworICAg
IHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLSBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gLSBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLSBiWzFdWzJdOwor
ICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gLSBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9
IGFbMl1bMV0gLSBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gLSBiWzJdWzJd
OworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gLSBiWzNdWzBdOworICAgIHJlc3VsdFszXVsx
XSA9IGFbM11bMV0gLSBiWzNdWzFdOworICAgIHJlc3VsdFszXVsyXSA9IGFbM11bMl0gLSBiWzNd
WzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHgzIG9wZXJhdG9yLShoYWxmNHgzIGEp
IHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSAtYVswXVswXTsKKyAg
ICByZXN1bHRbMF1bMV0gPSAtYVswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSAtYVswXVsyXTsK
KyAgICByZXN1bHRbMV1bMF0gPSAtYVsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSAtYVsxXVsx
XTsKKyAgICByZXN1bHRbMV1bMl0gPSAtYVsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSAtYVsy
XVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSAtYVsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSAt
YVsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSAtYVszXVswXTsKKyAgICByZXN1bHRbM11bMV0g
PSAtYVszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSAtYVszXVsyXTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjR4MyBvcGVyYXRvciooaGFsZjR4MyBhLCBoYWxmNHgzIGIpIHsKKyAgICBo
YWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYlswXVswXTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBh
WzBdWzJdICogYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYlsxXVswXTsK
KyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0g
PSBhWzFdWzJdICogYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYlsyXVsw
XTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYlsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhWzJdWzJdICogYlsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdICogYlsz
XVswXTsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdICogYlszXVsxXTsKKyAgICByZXN1bHRb
M11bMl0gPSBhWzNdWzJdICogYlszXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4
MyBvcGVyYXRvciooaGFsZjR4MyBhLCBoYWxmIGIpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
ICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMV1bMF0g
PSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1
bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsK
KyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJd
WzJdICogYjsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdICogYjsKKyAgICByZXN1bHRbM11b
MV0gPSBhWzNdWzFdICogYjsKKyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdICogYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBvcGVyYXRvciooaGFsZiBhLCBoYWxmNHgzIGIpIHsK
KyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhICogYlswXVswXTsKKyAg
ICByZXN1bHRbMF1bMV0gPSBhICogYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhICogYlsw
XVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhICogYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0g
PSBhICogYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhICogYlsxXVsyXTsKKyAgICByZXN1
bHRbMl1bMF0gPSBhICogYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhICogYlsyXVsxXTsK
KyAgICByZXN1bHRbMl1bMl0gPSBhICogYlsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSBhICog
YlszXVswXTsKKyAgICByZXN1bHRbM11bMV0gPSBhICogYlszXVsxXTsKKyAgICByZXN1bHRbM11b
Ml0gPSBhICogYlszXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBvcGVyYXRv
ci8oaGFsZjR4MyBhLCBoYWxmNHgzIGIpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC8gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFd
WzFdIC8gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYlsxXVsyXTsKKyAg
ICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBh
WzJdWzFdIC8gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYlsyXVsyXTsK
KyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC8gYlszXVswXTsKKyAgICByZXN1bHRbM11bMV0g
PSBhWzNdWzFdIC8gYlszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdIC8gYlszXVsy
XTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4MyBvcGVyYXRvci8oaGFsZjR4MyBhLCBo
YWxmIGIpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
IC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMF1bMl0g
PSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1
bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsK
KyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJd
WzFdIC8gYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYjsKKyAgICByZXN1bHRbM11b
MF0gPSBhWzNdWzBdIC8gYjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC8gYjsKKyAgICBy
ZXN1bHRbM11bMl0gPSBhWzNdWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4
MyBvcGVyYXRvci8oaGFsZiBhLCBoYWxmNHgzIGIpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhIC8gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhIC8gYlsw
XVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhIC8gYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0g
PSBhIC8gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhIC8gYlsxXVsxXTsKKyAgICByZXN1
bHRbMV1bMl0gPSBhIC8gYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhIC8gYlsyXVswXTsK
KyAgICByZXN1bHRbMl1bMV0gPSBhIC8gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhIC8g
YlsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSBhIC8gYlszXVswXTsKKyAgICByZXN1bHRbM11b
MV0gPSBhIC8gYlszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSBhIC8gYlszXVsyXTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBvcGVyYXRvcisoaGFsZjR4NCBhLCBoYWxmNHg0IGIp
IHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICsgYlsw
XVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICsgYlswXVsxXTsKKyAgICByZXN1bHRb
MF1bMl0gPSBhWzBdWzJdICsgYlswXVsyXTsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBdWzNdICsg
YlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICsgYlsxXVswXTsKKyAgICByZXN1
bHRbMV1bMV0gPSBhWzFdWzFdICsgYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJd
ICsgYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdICsgYlsxXVszXTsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhWzJdWzBdICsgYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJd
WzFdICsgYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICsgYlsyXVsyXTsKKyAg
ICByZXN1bHRbMl1bM10gPSBhWzJdWzNdICsgYlsyXVszXTsKKyAgICByZXN1bHRbM11bMF0gPSBh
WzNdWzBdICsgYlszXVswXTsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdICsgYlszXVsxXTsK
KyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdICsgYlszXVsyXTsKKyAgICByZXN1bHRbM11bM10g
PSBhWzNdWzNdICsgYlszXVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBvcGVy
YXRvci0oaGFsZjR4NCBhLCBoYWxmNHg0IGIpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAg
ICByZXN1bHRbMF1bM10gPSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBh
WzFdWzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10g
PSBhWzFdWzNdIC0gYlsxXVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVsw
XTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhWzJdWzJdIC0gYlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC0gYlsy
XVszXTsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC0gYlszXVswXTsKKyAgICByZXN1bHRb
M11bMV0gPSBhWzNdWzFdIC0gYlszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdIC0g
YlszXVsyXTsKKyAgICByZXN1bHRbM11bM10gPSBhWzNdWzNdIC0gYlszXVszXTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjR4NCBvcGVyYXRvci0oaGFsZjR4NCBhKSB7CisgICAgaGFsZjR4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzBd
WzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0
WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmVz
dWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07Cisg
ICAgcmVzdWx0WzJdWzNdID0gLWFbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gLWFbM11bMF07
CisgICAgcmVzdWx0WzNdWzFdID0gLWFbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gLWFbM11b
Ml07CisgICAgcmVzdWx0WzNdWzNdID0gLWFbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0eDQgb3BlcmF0b3IqKGhhbGY0eDQgYSwgaGFsZjR4NCBiKSB7CisgICAgaGFsZjR4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAqIGJbMF1bMF07CisgICAgcmVzdWx0
WzBdWzFdID0gYVswXVsxXSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAq
IGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGJbMF1bM107CisgICAgcmVz
dWx0WzFdWzBdID0gYVsxXVswXSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsx
XSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGJbMV1bMl07CisgICAg
cmVzdWx0WzFdWzNdID0gYVsxXVszXSAqIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYVsy
XVswXSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSAqIGJbMl1bMV07Cisg
ICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAqIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0g
YVsyXVszXSAqIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAqIGJbM11bMF07
CisgICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAqIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJd
ID0gYVszXVsyXSAqIGJbM11bMl07CisgICAgcmVzdWx0WzNdWzNdID0gYVszXVszXSAqIGJbM11b
M107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgb3BlcmF0b3IqKGhhbGY0eDQgYSwg
aGFsZiBiKSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVsw
XSAqIGI7CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAqIGI7CisgICAgcmVzdWx0WzBdWzJd
ID0gYVswXVsyXSAqIGI7CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAqIGI7CisgICAgcmVz
dWx0WzFdWzBdID0gYVsxXVswXSAqIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAqIGI7
CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAqIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsx
XVszXSAqIGI7CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAqIGI7CisgICAgcmVzdWx0WzJd
WzFdID0gYVsyXVsxXSAqIGI7CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAqIGI7CisgICAg
cmVzdWx0WzJdWzNdID0gYVsyXVszXSAqIGI7CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAq
IGI7CisgICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAqIGI7CisgICAgcmVzdWx0WzNdWzJdID0g
YVszXVsyXSAqIGI7CisgICAgcmVzdWx0WzNdWzNdID0gYVszXVszXSAqIGI7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0eDQgb3BlcmF0b3IqKGhhbGYgYSwgaGFsZjR4NCBiKSB7CisgICAg
aGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07
CisgICAgcmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAq
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFd
WzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJbMV1bM107CisgICAg
cmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAqIGJbMl1b
MV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAqIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0g
YSAqIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYSAqIGJbM11bMF07CisgICAgcmVzdWx0
WzNdWzFdID0gYSAqIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAqIGJbM11bMl07Cisg
ICAgcmVzdWx0WzNdWzNdID0gYSAqIGJbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0eDQgb3BlcmF0b3IvKGhhbGY0eDQgYSwgaGFsZjR4NCBiKSB7CisgICAgaGFsZjR4NCByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBd
WzFdID0gYVswXVsxXSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYVswXVsyXSAvIGJb
MF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGJbMF1bM107CisgICAgcmVzdWx0
WzFdWzBdID0gYVsxXVswXSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAv
IGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAvIGJbMV1bMl07CisgICAgcmVz
dWx0WzFdWzNdID0gYVsxXVszXSAvIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVsw
XSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYVsyXVsxXSAvIGJbMl1bMV07CisgICAg
cmVzdWx0WzJdWzJdID0gYVsyXVsyXSAvIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYVsy
XVszXSAvIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAvIGJbM11bMF07Cisg
ICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAvIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0g
YVszXVsyXSAvIGJbM11bMl07CisgICAgcmVzdWx0WzNdWzNdID0gYVszXVszXSAvIGJbM11bM107
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDQgb3BlcmF0b3IvKGhhbGY0eDQgYSwgaGFs
ZiBiKSB7CisgICAgaGFsZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYVswXVswXSAv
IGI7CisgICAgcmVzdWx0WzBdWzFdID0gYVswXVsxXSAvIGI7CisgICAgcmVzdWx0WzBdWzJdID0g
YVswXVsyXSAvIGI7CisgICAgcmVzdWx0WzBdWzNdID0gYVswXVszXSAvIGI7CisgICAgcmVzdWx0
WzFdWzBdID0gYVsxXVswXSAvIGI7CisgICAgcmVzdWx0WzFdWzFdID0gYVsxXVsxXSAvIGI7Cisg
ICAgcmVzdWx0WzFdWzJdID0gYVsxXVsyXSAvIGI7CisgICAgcmVzdWx0WzFdWzNdID0gYVsxXVsz
XSAvIGI7CisgICAgcmVzdWx0WzJdWzBdID0gYVsyXVswXSAvIGI7CisgICAgcmVzdWx0WzJdWzFd
ID0gYVsyXVsxXSAvIGI7CisgICAgcmVzdWx0WzJdWzJdID0gYVsyXVsyXSAvIGI7CisgICAgcmVz
dWx0WzJdWzNdID0gYVsyXVszXSAvIGI7CisgICAgcmVzdWx0WzNdWzBdID0gYVszXVswXSAvIGI7
CisgICAgcmVzdWx0WzNdWzFdID0gYVszXVsxXSAvIGI7CisgICAgcmVzdWx0WzNdWzJdID0gYVsz
XVsyXSAvIGI7CisgICAgcmVzdWx0WzNdWzNdID0gYVszXVszXSAvIGI7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0eDQgb3BlcmF0b3IvKGhhbGYgYSwgaGFsZjR4NCBiKSB7CisgICAgaGFs
ZjR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0
WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07Cisg
ICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJd
ID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAvIGJbMV1bM107CisgICAgcmVz
dWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAvIGJbMl1bMV07
CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gYSAv
IGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYSAvIGJbM11bMF07CisgICAgcmVzdWx0WzNd
WzFdID0gYSAvIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAvIGJbM11bMl07CisgICAg
cmVzdWx0WzNdWzNdID0gYSAvIGJbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
MngyIG9wZXJhdG9yKyhmbG9hdDJ4MiBhLCBmbG9hdDJ4MiBiKSB7CisgICAgZmxvYXQyeDIgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFsw
XVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDJ4MiBvcGVyYXRvci0oZmxvYXQyeDIgYSwgZmxvYXQyeDIgYikg
eworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlsw
XVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRb
MV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0g
YlsxXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDIgb3BlcmF0b3ItKGZsb2F0
MngyIGEpIHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gLWFb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MngyIG9wZXJhdG9yKihmbG9hdDJ4MiBhLCBmbG9hdDJ4MiBiKSB7CisgICAgZmxv
YXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAg
IHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFb
MV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBvcGVyYXRvciooZmxvYXQyeDIgYSwgZmxv
YXQgYikgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
ICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMV1bMF0g
PSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQyeDIgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0MngyIGIpIHsK
KyAgICBmbG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07Cisg
ICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngyIG9wZXJhdG9yLyhmbG9hdDJ4MiBhLCBmbG9hdDJ4MiBiKSB7CisgICAg
ZmxvYXQyeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MiBvcGVyYXRvci8oZmxvYXQyeDIgYSwg
ZmxvYXQgYikgeworICAgIGZsb2F0MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBd
WzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1b
MF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDIgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0MngyIGIp
IHsKKyAgICBmbG9hdDJ4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07
CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYSAv
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0MngzIG9wZXJhdG9yKyhmbG9hdDJ4MyBhLCBmbG9hdDJ4MyBiKSB7Cisg
ICAgZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBd
OworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsy
XSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsx
XVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4
MyBvcGVyYXRvci0oZmxvYXQyeDMgYSwgZmxvYXQyeDMgYikgeworICAgIGZsb2F0MngzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlsw
XVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRb
MV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0g
YlsxXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgb3BlcmF0b3ItKGZsb2F0
MngzIGEpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFb
MF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0g
LWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MngzIG9wZXJhdG9yKihmbG9hdDJ4MyBhLCBmbG9hdDJ4MyBiKSB7CisgICAg
ZmxvYXQyeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9
IGFbMF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBd
OworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsy
XSA9IGFbMV1bMl0gKiBiWzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBv
cGVyYXRvciooZmxvYXQyeDMgYSwgZmxvYXQgYikgeworICAgIGZsb2F0MngzIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
ICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMV1bMF0g
PSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1
bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMg
b3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0MngzIGIpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJb
MF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBd
ID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVz
dWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mngz
IG9wZXJhdG9yLyhmbG9hdDJ4MyBhLCBmbG9hdDJ4MyBiKSB7CisgICAgZmxvYXQyeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBd
WzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsx
XVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBi
WzFdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4MyBvcGVyYXRvci8oZmxvYXQy
eDMgYSwgZmxvYXQgYikgeworICAgIGZsb2F0MngzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1
bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsK
KyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFd
WzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDMgb3BlcmF0b3IvKGZsb2F0
IGEsIGZsb2F0MngzIGIpIHsKKyAgICBmbG9hdDJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVz
dWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAv
IGJbMV1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IG9wZXJhdG9yKyhmbG9h
dDJ4NCBhLCBmbG9hdDJ4NCBiKSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBi
WzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3Vs
dFswXVszXSA9IGFbMF1bM10gKyBiWzBdWzNdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0g
KyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJl
c3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1b
M10gKyBiWzFdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBvcGVyYXRvci0o
ZmxvYXQyeDQgYSwgZmxvYXQyeDQgYikgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFd
WzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBh
WzFdWzNdIC0gYlsxXVszXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDQgb3BlcmF0
b3ItKGZsb2F0Mng0IGEpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBd
WzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0
WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVz
dWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gLWFbMV1bM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IG9wZXJhdG9yKihmbG9hdDJ4NCBhLCBmbG9hdDJ4
NCBiKSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0g
KiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJl
c3VsdFswXVsyXSA9IGFbMF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1b
M10gKiBiWzBdWzNdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAg
IHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFb
MV1bMl0gKiBiWzFdWzJdOworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gKiBiWzFdWzNdOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBvcGVyYXRvciooZmxvYXQyeDQgYSwgZmxv
YXQgYikgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
ICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0g
PSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBdWzNdICogYjsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFd
WzNdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQyeDQgb3BlcmF0b3IqKGZsb2F0
IGEsIGZsb2F0Mng0IGIpIHsKKyAgICBmbG9hdDJ4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVz
dWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107
CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAq
IGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFd
WzNdID0gYSAqIGJbMV1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0Mng0IG9wZXJh
dG9yLyhmbG9hdDJ4NCBhLCBmbG9hdDJ4NCBiKSB7CisgICAgZmxvYXQyeDQgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFb
MF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBdWzJdOwor
ICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gLyBiWzBdWzNdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFd
OworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBiWzFdWzJdOworICAgIHJlc3VsdFsxXVsz
XSA9IGFbMV1bM10gLyBiWzFdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDJ4NCBv
cGVyYXRvci8oZmxvYXQyeDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0Mng0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC8gYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMF1bM10g
PSBhWzBdWzNdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1
bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsK
KyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQyeDQgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0Mng0IGIpIHsKKyAgICBmbG9hdDJ4NCBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVz
dWx0WzBdWzNdID0gYSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07
CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAv
IGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAvIGJbMV1bM107CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0M3gyIG9wZXJhdG9yKyhmbG9hdDN4MiBhLCBmbG9hdDN4MiBiKSB7Cisg
ICAgZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBd
OworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVsw
XSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFd
WzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKyBiWzJdWzBdOworICAgIHJlc3VsdFsy
XVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4
MiBvcGVyYXRvci0oZmxvYXQzeDIgYSwgZmxvYXQzeDIgYikgeworICAgIGZsb2F0M3gyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsx
XVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0g
YlsyXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDIgb3BlcmF0b3ItKGZsb2F0
M3gyIGEpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gLWFb
MV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0g
LWFbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0M3gyIG9wZXJhdG9yKihmbG9hdDN4MiBhLCBmbG9hdDN4MiBiKSB7CisgICAg
ZmxvYXQzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFd
OworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsx
XSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBv
cGVyYXRvciooZmxvYXQzeDIgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
ICogYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0g
PSBhWzFdWzFdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICByZXN1
bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDIg
b3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0M3gyIGIpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJb
MF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFd
ID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVz
dWx0WzJdWzFdID0gYSAqIGJbMl1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gy
IG9wZXJhdG9yLyhmbG9hdDN4MiBhLCBmbG9hdDN4MiBiKSB7CisgICAgZmxvYXQzeDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFd
WzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsy
XVswXSA9IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBi
WzJdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MiBvcGVyYXRvci8oZmxvYXQz
eDIgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC8gYjsK
KyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJd
WzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDIgb3BlcmF0b3IvKGZsb2F0
IGEsIGZsb2F0M3gyIGIpIHsKKyAgICBmbG9hdDN4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBd
ID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVz
dWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07
CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAv
IGJbMl1bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIG9wZXJhdG9yKyhmbG9h
dDN4MyBhLCBmbG9hdDN4MyBiKSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFsw
XVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBi
WzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3Vs
dFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0g
KyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJl
c3VsdFsyXVswXSA9IGFbMl1bMF0gKyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1b
MV0gKyBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4MyBvcGVyYXRvci0oZmxvYXQzeDMgYSwgZmxvYXQz
eDMgYikgeworICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBd
IC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICBy
ZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFd
WzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBh
WzJdWzBdIC0gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsK
KyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC0gYlsyXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzeDMgb3BlcmF0b3ItKGZsb2F0M3gzIGEpIHsKKyAgICBmbG9hdDN4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFb
MF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0g
LWFbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJd
ID0gLWFbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAgcmVzdWx0WzJd
WzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0M3gzIG9wZXJhdG9yKihmbG9hdDN4MyBhLCBmbG9hdDN4MyBiKSB7
CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBd
WzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFsw
XVsyXSA9IGFbMF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3Vs
dFsxXVsyXSA9IGFbMV1bMl0gKiBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0g
KiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJl
c3VsdFsyXVsyXSA9IGFbMl1bMl0gKiBiWzJdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDN4MyBvcGVyYXRvciooZmxvYXQzeDMgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3gzIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0g
PSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1
bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsK
KyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJd
WzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXN1bHRbMl1b
Ml0gPSBhWzJdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDMgb3BlcmF0
b3IqKGZsb2F0IGEsIGZsb2F0M3gzIGIpIHsKKyAgICBmbG9hdDN4MyByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07
CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gYSAq
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVzdWx0WzFd
WzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gYSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAqIGJbMl1b
Ml07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3gzIG9wZXJhdG9yLyhmbG9hdDN4MyBh
LCBmbG9hdDN4MyBiKSB7CisgICAgZmxvYXQzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9
IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiWzBdWzFd
OworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVsw
XSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFd
WzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBiWzFdWzJdOworICAgIHJlc3VsdFsy
XVswXSA9IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBi
WzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gLyBiWzJdWzJdOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDN4MyBvcGVyYXRvci8oZmxvYXQzeDMgYSwgZmxvYXQgYikgewor
ICAgIGZsb2F0M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAg
ICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJd
IC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0g
PSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAgICByZXN1
bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsK
KyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzeDMgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0M3gzIGIpIHsKKyAgICBmbG9hdDN4MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVz
dWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07
CisgICAgcmVzdWx0WzFdWzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gYSAv
IGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJd
WzJdID0gYSAvIGJbMl1bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0IG9wZXJh
dG9yKyhmbG9hdDN4NCBhLCBmbG9hdDN4NCBiKSB7CisgICAgZmxvYXQzeDQgcmVzdWx0OworICAg
IHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFb
MF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOwor
ICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gKyBiWzBdWzNdOworICAgIHJlc3VsdFsxXVswXSA9
IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFd
OworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsxXVsz
XSA9IGFbMV1bM10gKyBiWzFdWzNdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKyBiWzJd
WzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJlc3VsdFsy
XVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAgIHJlc3VsdFsyXVszXSA9IGFbMl1bM10gKyBi
WzJdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBvcGVyYXRvci0oZmxvYXQz
eDQgYSwgZmxvYXQzeDQgYikgeworICAgIGZsb2F0M3g0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlsw
XVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRb
MF1bM10gPSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0g
YlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1
bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNd
IC0gYlsxXVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJd
WzJdIC0gYlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC0gYlsyXVszXTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgb3BlcmF0b3ItKGZsb2F0M3g0IGEpIHsKKyAg
ICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAg
cmVzdWx0WzBdWzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07Cisg
ICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07
CisgICAgcmVzdWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1b
MF07CisgICAgcmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFb
Ml1bMl07CisgICAgcmVzdWx0WzJdWzNdID0gLWFbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0M3g0IG9wZXJhdG9yKihmbG9hdDN4NCBhLCBmbG9hdDN4NCBiKSB7CisgICAgZmxv
YXQzeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAg
IHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFb
MF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gKiBiWzBdWzNdOwor
ICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9
IGFbMV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKiBiWzFdWzJd
OworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gKiBiWzFdWzNdOworICAgIHJlc3VsdFsyXVsw
XSA9IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJd
WzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKiBiWzJdWzJdOworICAgIHJlc3VsdFsy
XVszXSA9IGFbMl1bM10gKiBiWzJdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4
NCBvcGVyYXRvciooZmxvYXQzeDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3g0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMF1b
M10gPSBhWzBdWzNdICogYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICBy
ZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICog
YjsKKyAgICByZXN1bHRbMV1bM10gPSBhWzFdWzNdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBh
WzJdWzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXN1bHRb
Ml1bMl0gPSBhWzJdWzJdICogYjsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdICogYjsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzeDQgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0M3g0
IGIpIHsKKyAgICBmbG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0g
YSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0
WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07Cisg
ICAgcmVzdWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJb
MV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFd
ID0gYSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAqIGJbMl1bMl07CisgICAgcmVz
dWx0WzJdWzNdID0gYSAqIGJbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0M3g0
IG9wZXJhdG9yLyhmbG9hdDN4NCBhLCBmbG9hdDN4NCBiKSB7CisgICAgZmxvYXQzeDQgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsx
XSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBd
WzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gLyBiWzBdWzNdOworICAgIHJlc3VsdFsx
XVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBi
WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBiWzFdWzJdOworICAgIHJlc3Vs
dFsxXVszXSA9IGFbMV1bM10gLyBiWzFdWzNdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0g
LyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJdWzFdOworICAgIHJl
c3VsdFsyXVsyXSA9IGFbMl1bMl0gLyBiWzJdWzJdOworICAgIHJlc3VsdFsyXVszXSA9IGFbMl1b
M10gLyBiWzJdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDN4NCBvcGVyYXRvci8o
ZmxvYXQzeDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0M3g0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAg
ICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBdWzNd
IC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0g
PSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAgICByZXN1
bHRbMV1bM10gPSBhWzFdWzNdIC8gYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsK
KyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJd
WzJdIC8gYjsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC8gYjsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzeDQgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0M3g0IGIpIHsKKyAgICBm
bG9hdDN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVz
dWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07
CisgICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gYSAv
IGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFd
WzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAvIGJbMV1bM107CisgICAg
cmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAvIGJbMl1b
MV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1bMl07CisgICAgcmVzdWx0WzJdWzNdID0g
YSAvIGJbMl1bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIG9wZXJhdG9yKyhm
bG9hdDR4MiBhLCBmbG9hdDR4MiBiKSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0g
KyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJl
c3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1b
MF0gKyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAg
IHJlc3VsdFszXVswXSA9IGFbM11bMF0gKyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFb
M11bMV0gKyBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiBvcGVyYXRv
ci0oZmxvYXQ0eDIgYSwgZmxvYXQ0eDIgYikgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMl1bMF0gPSBh
WzJdWzBdIC0gYlsyXVswXTsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsK
KyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC0gYlszXVswXTsKKyAgICByZXN1bHRbM11bMV0g
PSBhWzNdWzFdIC0gYlszXVsxXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDIgb3Bl
cmF0b3ItKGZsb2F0NHgyIGEpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVzdWx0
WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVz
dWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAg
cmVzdWx0WzNdWzBdID0gLWFbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0gLWFbM11bMV07Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIG9wZXJhdG9yKihmbG9hdDR4MiBhLCBmbG9h
dDR4MiBiKSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1b
MF0gKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAg
IHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0gKiBiWzJdWzBdOwor
ICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJdWzFdOworICAgIHJlc3VsdFszXVswXSA9
IGFbM11bMF0gKiBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKiBiWzNdWzFd
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MiBvcGVyYXRvciooZmxvYXQ0eDIgYSwg
ZmxvYXQgYikgeworICAgIGZsb2F0NHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBd
WzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMV1b
MF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICBy
ZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdICog
YjsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdICogYjsKKyAgICByZXN1bHRbM11bMV0gPSBh
WzNdWzFdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDIgb3BlcmF0b3IqKGZs
b2F0IGEsIGZsb2F0NHgyIGIpIHsKKyAgICBmbG9hdDR4MiByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAg
cmVzdWx0WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1b
MV07CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0g
YSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzNdWzBdID0gYSAqIGJbM11bMF07CisgICAgcmVzdWx0
WzNdWzFdID0gYSAqIGJbM11bMV07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgyIG9w
ZXJhdG9yLyhmbG9hdDR4MiBhLCBmbG9hdDR4MiBiKSB7CisgICAgZmxvYXQ0eDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9
IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBd
OworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsyXVsw
XSA9IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJd
WzFdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gLyBiWzNdWzBdOworICAgIHJlc3VsdFsz
XVsxXSA9IGFbM11bMV0gLyBiWzNdWzFdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4
MiBvcGVyYXRvci8oZmxvYXQ0eDIgYSwgZmxvYXQgYikgeworICAgIGZsb2F0NHgyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBd
WzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1b
MV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8gYjsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC8g
YjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0eDIgb3BlcmF0b3IvKGZsb2F0IGEsIGZsb2F0NHgyIGIpIHsKKyAgICBmbG9hdDR4
MiByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBd
WzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAg
cmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1b
MF07CisgICAgcmVzdWx0WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzNdWzBdID0g
YSAvIGJbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0gYSAvIGJbM11bMV07CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NHgzIG9wZXJhdG9yKyhmbG9hdDR4MyBhLCBmbG9hdDR4MyBiKSB7
CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBd
WzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFsw
XVsyXSA9IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBi
WzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3Vs
dFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFbMl1bMF0g
KyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBiWzJdWzFdOworICAgIHJl
c3VsdFsyXVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11b
MF0gKyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKyBiWzNdWzFdOworICAg
IHJlc3VsdFszXVsyXSA9IGFbM11bMl0gKyBiWzNdWzJdOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDR4MyBvcGVyYXRvci0oZmxvYXQ0eDMgYSwgZmxvYXQ0eDMgYikgeworICAgIGZsb2F0
NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICBy
ZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBd
WzJdIC0gYlswXVsyXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC0gYlsxXVswXTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAgICByZXN1bHRbMV1bMl0gPSBh
WzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsK
KyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0g
PSBhWzJdWzJdIC0gYlsyXVsyXTsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC0gYlszXVsw
XTsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC0gYlszXVsxXTsKKyAgICByZXN1bHRbM11b
Ml0gPSBhWzNdWzJdIC0gYlszXVsyXTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDMg
b3BlcmF0b3ItKGZsb2F0NHgzIGEpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gLWFbMF1bMV07CisgICAgcmVz
dWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAg
cmVzdWx0WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07Cisg
ICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAgcmVzdWx0WzJdWzFdID0gLWFbMl1bMV07
CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07CisgICAgcmVzdWx0WzNdWzBdID0gLWFbM11b
MF07CisgICAgcmVzdWx0WzNdWzFdID0gLWFbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gLWFb
M11bMl07CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIG9wZXJhdG9yKihmbG9hdDR4
MyBhLCBmbG9hdDR4MyBiKSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVsw
XSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBd
WzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1bMl0gKiBiWzBdWzJdOworICAgIHJlc3VsdFsx
XVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gKiBi
WzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKiBiWzFdWzJdOworICAgIHJlc3Vs
dFsyXVswXSA9IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0g
KiBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKiBiWzJdWzJdOworICAgIHJl
c3VsdFszXVswXSA9IGFbM11bMF0gKiBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11b
MV0gKiBiWzNdWzFdOworICAgIHJlc3VsdFszXVsyXSA9IGFbM11bMl0gKiBiWzNdWzJdOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4MyBvcGVyYXRvciooZmxvYXQ0eDMgYSwgZmxvYXQg
YikgeworICAgIGZsb2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdICog
YjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1bHRbMF1bMl0gPSBh
WzBdWzJdICogYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRb
MV1bMV0gPSBhWzFdWzFdICogYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAg
ICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFd
ICogYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICogYjsKKyAgICByZXN1bHRbM11bMF0g
PSBhWzNdWzBdICogYjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdICogYjsKKyAgICByZXN1
bHRbM11bMl0gPSBhWzNdWzJdICogYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDMg
b3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0NHgzIGIpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJb
MF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gYSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBd
ID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07CisgICAgcmVz
dWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07
CisgICAgcmVzdWx0WzJdWzFdID0gYSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAq
IGJbMl1bMl07CisgICAgcmVzdWx0WzNdWzBdID0gYSAqIGJbM11bMF07CisgICAgcmVzdWx0WzNd
WzFdID0gYSAqIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAqIGJbM11bMl07CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NHgzIG9wZXJhdG9yLyhmbG9hdDR4MyBhLCBmbG9hdDR4
MyBiKSB7CisgICAgZmxvYXQ0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0g
LyBiWzBdWzBdOworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJl
c3VsdFswXVsyXSA9IGFbMF1bMl0gLyBiWzBdWzJdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1b
MF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAg
IHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBiWzFdWzJdOworICAgIHJlc3VsdFsyXVswXSA9IGFb
Ml1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gLyBiWzJdWzFdOwor
ICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gLyBiWzJdWzJdOworICAgIHJlc3VsdFszXVswXSA9
IGFbM11bMF0gLyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gLyBiWzNdWzFd
OworICAgIHJlc3VsdFszXVsyXSA9IGFbM11bMl0gLyBiWzNdWzJdOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDR4MyBvcGVyYXRvci8oZmxvYXQ0eDMgYSwgZmxvYXQgYikgeworICAgIGZs
b2F0NHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1
bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsK
KyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFd
WzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAgICByZXN1bHRbMl1b
MF0gPSBhWzJdWzBdIC8gYjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsKKyAgICBy
ZXN1bHRbMl1bMl0gPSBhWzJdWzJdIC8gYjsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC8g
YjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC8gYjsKKyAgICByZXN1bHRbM11bMl0gPSBh
WzNdWzJdIC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDMgb3BlcmF0b3IvKGZs
b2F0IGEsIGZsb2F0NHgzIGIpIHsKKyAgICBmbG9hdDR4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gYSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAg
cmVzdWx0WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1b
MF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0g
YSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVzdWx0
WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1bMl07Cisg
ICAgcmVzdWx0WzNdWzBdID0gYSAvIGJbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0gYSAvIGJb
M11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAvIGJbM11bMl07CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NHg0IG9wZXJhdG9yKyhmbG9hdDR4NCBhLCBmbG9hdDR4NCBiKSB7CisgICAg
ZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKyBiWzBdWzBdOwor
ICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gKyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9
IGFbMF1bMl0gKyBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gKyBiWzBdWzNd
OworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKyBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsx
XSA9IGFbMV1bMV0gKyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKyBiWzFd
WzJdOworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gKyBiWzFdWzNdOworICAgIHJlc3VsdFsy
XVswXSA9IGFbMl1bMF0gKyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKyBi
WzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKyBiWzJdWzJdOworICAgIHJlc3Vs
dFsyXVszXSA9IGFbMl1bM10gKyBiWzJdWzNdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0g
KyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKyBiWzNdWzFdOworICAgIHJl
c3VsdFszXVsyXSA9IGFbM11bMl0gKyBiWzNdWzJdOworICAgIHJlc3VsdFszXVszXSA9IGFbM11b
M10gKyBiWzNdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBvcGVyYXRvci0o
ZmxvYXQ0eDQgYSwgZmxvYXQ0eDQgYikgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC0gYlswXVswXTsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFd
IC0gYlswXVsxXTsKKyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC0gYlswXVsyXTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBhWzBdWzNdIC0gYlswXVszXTsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFd
WzBdIC0gYlsxXVswXTsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFdWzFdIC0gYlsxXVsxXTsKKyAg
ICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC0gYlsxXVsyXTsKKyAgICByZXN1bHRbMV1bM10gPSBh
WzFdWzNdIC0gYlsxXVszXTsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC0gYlsyXVswXTsK
KyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC0gYlsyXVsxXTsKKyAgICByZXN1bHRbMl1bMl0g
PSBhWzJdWzJdIC0gYlsyXVsyXTsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC0gYlsyXVsz
XTsKKyAgICByZXN1bHRbM11bMF0gPSBhWzNdWzBdIC0gYlszXVswXTsKKyAgICByZXN1bHRbM11b
MV0gPSBhWzNdWzFdIC0gYlszXVsxXTsKKyAgICByZXN1bHRbM11bMl0gPSBhWzNdWzJdIC0gYlsz
XVsyXTsKKyAgICByZXN1bHRbM11bM10gPSBhWzNdWzNdIC0gYlszXVszXTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0eDQgb3BlcmF0b3ItKGZsb2F0NHg0IGEpIHsKKyAgICBmbG9hdDR4
NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gLWFbMF1bMF07CisgICAgcmVzdWx0WzBdWzFd
ID0gLWFbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0gLWFbMF1bMl07CisgICAgcmVzdWx0WzBd
WzNdID0gLWFbMF1bM107CisgICAgcmVzdWx0WzFdWzBdID0gLWFbMV1bMF07CisgICAgcmVzdWx0
WzFdWzFdID0gLWFbMV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gLWFbMV1bMl07CisgICAgcmVz
dWx0WzFdWzNdID0gLWFbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gLWFbMl1bMF07CisgICAg
cmVzdWx0WzJdWzFdID0gLWFbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gLWFbMl1bMl07Cisg
ICAgcmVzdWx0WzJdWzNdID0gLWFbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gLWFbM11bMF07
CisgICAgcmVzdWx0WzNdWzFdID0gLWFbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gLWFbM11b
Ml07CisgICAgcmVzdWx0WzNdWzNdID0gLWFbM11bM107CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NHg0IG9wZXJhdG9yKihmbG9hdDR4NCBhLCBmbG9hdDR4NCBiKSB7CisgICAgZmxvYXQ0
eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gKiBiWzBdWzBdOworICAgIHJl
c3VsdFswXVsxXSA9IGFbMF1bMV0gKiBiWzBdWzFdOworICAgIHJlc3VsdFswXVsyXSA9IGFbMF1b
Ml0gKiBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gKiBiWzBdWzNdOworICAg
IHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gKiBiWzFdWzBdOworICAgIHJlc3VsdFsxXVsxXSA9IGFb
MV1bMV0gKiBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gKiBiWzFdWzJdOwor
ICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gKiBiWzFdWzNdOworICAgIHJlc3VsdFsyXVswXSA9
IGFbMl1bMF0gKiBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0gKiBiWzJdWzFd
OworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gKiBiWzJdWzJdOworICAgIHJlc3VsdFsyXVsz
XSA9IGFbMl1bM10gKiBiWzJdWzNdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11bMF0gKiBiWzNd
WzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gKiBiWzNdWzFdOworICAgIHJlc3VsdFsz
XVsyXSA9IGFbM11bMl0gKiBiWzNdWzJdOworICAgIHJlc3VsdFszXVszXSA9IGFbM11bM10gKiBi
WzNdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBvcGVyYXRvciooZmxvYXQ0
eDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBhWzBdWzBdICogYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdICogYjsKKyAgICByZXN1
bHRbMF1bMl0gPSBhWzBdWzJdICogYjsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBdWzNdICogYjsK
KyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdICogYjsKKyAgICByZXN1bHRbMV1bMV0gPSBhWzFd
WzFdICogYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdICogYjsKKyAgICByZXN1bHRbMV1b
M10gPSBhWzFdWzNdICogYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdICogYjsKKyAgICBy
ZXN1bHRbMl1bMV0gPSBhWzJdWzFdICogYjsKKyAgICByZXN1bHRbMl1bMl0gPSBhWzJdWzJdICog
YjsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdICogYjsKKyAgICByZXN1bHRbM11bMF0gPSBh
WzNdWzBdICogYjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdICogYjsKKyAgICByZXN1bHRb
M11bMl0gPSBhWzNdWzJdICogYjsKKyAgICByZXN1bHRbM11bM10gPSBhWzNdWzNdICogYjsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgb3BlcmF0b3IqKGZsb2F0IGEsIGZsb2F0NHg0
IGIpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYSAqIGJbMF1b
MF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAqIGJbMF1bMV07CisgICAgcmVzdWx0WzBdWzJdID0g
YSAqIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAqIGJbMF1bM107CisgICAgcmVzdWx0
WzFdWzBdID0gYSAqIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAqIGJbMV1bMV07Cisg
ICAgcmVzdWx0WzFdWzJdID0gYSAqIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNdID0gYSAqIGJb
MV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYSAqIGJbMl1bMF07CisgICAgcmVzdWx0WzJdWzFd
ID0gYSAqIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAqIGJbMl1bMl07CisgICAgcmVz
dWx0WzJdWzNdID0gYSAqIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYSAqIGJbM11bMF07
CisgICAgcmVzdWx0WzNdWzFdID0gYSAqIGJbM11bMV07CisgICAgcmVzdWx0WzNdWzJdID0gYSAq
IGJbM11bMl07CisgICAgcmVzdWx0WzNdWzNdID0gYSAqIGJbM11bM107CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NHg0IG9wZXJhdG9yLyhmbG9hdDR4NCBhLCBmbG9hdDR4NCBiKSB7Cisg
ICAgZmxvYXQ0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFbMF1bMF0gLyBiWzBdWzBd
OworICAgIHJlc3VsdFswXVsxXSA9IGFbMF1bMV0gLyBiWzBdWzFdOworICAgIHJlc3VsdFswXVsy
XSA9IGFbMF1bMl0gLyBiWzBdWzJdOworICAgIHJlc3VsdFswXVszXSA9IGFbMF1bM10gLyBiWzBd
WzNdOworICAgIHJlc3VsdFsxXVswXSA9IGFbMV1bMF0gLyBiWzFdWzBdOworICAgIHJlc3VsdFsx
XVsxXSA9IGFbMV1bMV0gLyBiWzFdWzFdOworICAgIHJlc3VsdFsxXVsyXSA9IGFbMV1bMl0gLyBi
WzFdWzJdOworICAgIHJlc3VsdFsxXVszXSA9IGFbMV1bM10gLyBiWzFdWzNdOworICAgIHJlc3Vs
dFsyXVswXSA9IGFbMl1bMF0gLyBiWzJdWzBdOworICAgIHJlc3VsdFsyXVsxXSA9IGFbMl1bMV0g
LyBiWzJdWzFdOworICAgIHJlc3VsdFsyXVsyXSA9IGFbMl1bMl0gLyBiWzJdWzJdOworICAgIHJl
c3VsdFsyXVszXSA9IGFbMl1bM10gLyBiWzJdWzNdOworICAgIHJlc3VsdFszXVswXSA9IGFbM11b
MF0gLyBiWzNdWzBdOworICAgIHJlc3VsdFszXVsxXSA9IGFbM11bMV0gLyBiWzNdWzFdOworICAg
IHJlc3VsdFszXVsyXSA9IGFbM11bMl0gLyBiWzNdWzJdOworICAgIHJlc3VsdFszXVszXSA9IGFb
M11bM10gLyBiWzNdWzNdOworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDR4NCBvcGVyYXRv
ci8oZmxvYXQ0eDQgYSwgZmxvYXQgYikgeworICAgIGZsb2F0NHg0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBhWzBdWzBdIC8gYjsKKyAgICByZXN1bHRbMF1bMV0gPSBhWzBdWzFdIC8gYjsK
KyAgICByZXN1bHRbMF1bMl0gPSBhWzBdWzJdIC8gYjsKKyAgICByZXN1bHRbMF1bM10gPSBhWzBd
WzNdIC8gYjsKKyAgICByZXN1bHRbMV1bMF0gPSBhWzFdWzBdIC8gYjsKKyAgICByZXN1bHRbMV1b
MV0gPSBhWzFdWzFdIC8gYjsKKyAgICByZXN1bHRbMV1bMl0gPSBhWzFdWzJdIC8gYjsKKyAgICBy
ZXN1bHRbMV1bM10gPSBhWzFdWzNdIC8gYjsKKyAgICByZXN1bHRbMl1bMF0gPSBhWzJdWzBdIC8g
YjsKKyAgICByZXN1bHRbMl1bMV0gPSBhWzJdWzFdIC8gYjsKKyAgICByZXN1bHRbMl1bMl0gPSBh
WzJdWzJdIC8gYjsKKyAgICByZXN1bHRbMl1bM10gPSBhWzJdWzNdIC8gYjsKKyAgICByZXN1bHRb
M11bMF0gPSBhWzNdWzBdIC8gYjsKKyAgICByZXN1bHRbM11bMV0gPSBhWzNdWzFdIC8gYjsKKyAg
ICByZXN1bHRbM11bMl0gPSBhWzNdWzJdIC8gYjsKKyAgICByZXN1bHRbM11bM10gPSBhWzNdWzNd
IC8gYjsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0eDQgb3BlcmF0b3IvKGZsb2F0IGEs
IGZsb2F0NHg0IGIpIHsKKyAgICBmbG9hdDR4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
YSAvIGJbMF1bMF07CisgICAgcmVzdWx0WzBdWzFdID0gYSAvIGJbMF1bMV07CisgICAgcmVzdWx0
WzBdWzJdID0gYSAvIGJbMF1bMl07CisgICAgcmVzdWx0WzBdWzNdID0gYSAvIGJbMF1bM107Cisg
ICAgcmVzdWx0WzFdWzBdID0gYSAvIGJbMV1bMF07CisgICAgcmVzdWx0WzFdWzFdID0gYSAvIGJb
MV1bMV07CisgICAgcmVzdWx0WzFdWzJdID0gYSAvIGJbMV1bMl07CisgICAgcmVzdWx0WzFdWzNd
ID0gYSAvIGJbMV1bM107CisgICAgcmVzdWx0WzJdWzBdID0gYSAvIGJbMl1bMF07CisgICAgcmVz
dWx0WzJdWzFdID0gYSAvIGJbMl1bMV07CisgICAgcmVzdWx0WzJdWzJdID0gYSAvIGJbMl1bMl07
CisgICAgcmVzdWx0WzJdWzNdID0gYSAvIGJbMl1bM107CisgICAgcmVzdWx0WzNdWzBdID0gYSAv
IGJbM11bMF07CisgICAgcmVzdWx0WzNdWzFdID0gYSAvIGJbM11bMV07CisgICAgcmVzdWx0WzNd
WzJdID0gYSAvIGJbM11bMl07CisgICAgcmVzdWx0WzNdWzNdID0gYSAvIGJbM11bM107CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2wyKGJvb2wgeCwgYm9vbCB5KSB7CisgICAg
Ym9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2wzKGJvb2wgeCwgYm9vbCB5LCBib29sIHop
IHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0g
eTsKKyAgICByZXN1bHQueiA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJv
b2wzKGJvb2wyIHgsIGJvb2wgeSkgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2wzKGJvb2wgeCwgYm9vbDIgeSkgeworICAgIGJvb2wz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7CisgICAgcmVz
dWx0LnogPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wg
eCwgYm9vbCB5LCBib29sIHosIGJvb2wgdykgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1
bHQudyA9IHc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wyIHgs
IGJvb2wgeSwgYm9vbCB6KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geC54
OworICAgIHJlc3VsdC55ID0geC55OworICAgIHJlc3VsdC56ID0geTsKKyAgICByZXN1bHQudyA9
IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wgeCwgYm9vbDIg
eSwgYm9vbCB6KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICBy
ZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wgeCwgYm9vbCB5LCBib29s
MiB6KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQu
eSA9IHk7CisgICAgcmVzdWx0LnogPSB6Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wyIHgsIGJvb2wyIHkpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7Cisg
ICAgcmVzdWx0LnogPSB5Lng7CisgICAgcmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK29wZXJhdG9yIGJvb2w0KGJvb2wzIHgsIGJvb2wgeSkgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQu
eiA9IHguejsKKyAgICByZXN1bHQudyA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIGJvb2w0KGJvb2wgeCwgYm9vbDMgeSkgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAg
cmVzdWx0LncgPSB5Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVu
Z3RoKGJvb2wyKSB7CisgICAgcmV0dXJuIDI7Cit9Cit1aW50IG9wZXJhdG9yLmxlbmd0aChib29s
MykgeworICAgIHJldHVybiAzOworfQordWludCBvcGVyYXRvci5sZW5ndGgoYm9vbDQpIHsKKyAg
ICByZXR1cm4gNDsKK30KK29wZXJhdG9yIHVjaGFyMih1Y2hhciB4LCB1Y2hhciB5KSB7CisgICAg
dWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1Y2hhcjModWNoYXIgeCwgdWNoYXIgeSwgdWNo
YXIgeikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3Vs
dC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIHVjaGFyMyh1Y2hhcjIgeCwgdWNoYXIgeSkgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1Y2hhcjModWNoYXIgeCwgdWNoYXIyIHkp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9
IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0
b3IgdWNoYXI0KHVjaGFyIHgsIHVjaGFyIHksIHVjaGFyIHosIHVjaGFyIHcpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVz
dWx0LnogPSB6OworICAgIHJlc3VsdC53ID0gdzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3Bl
cmF0b3IgdWNoYXI0KHVjaGFyMiB4LCB1Y2hhciB5LCB1Y2hhciB6KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1
bHQueiA9IHk7CisgICAgcmVzdWx0LncgPSB6OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVy
YXRvciB1Y2hhcjQodWNoYXIgeCwgdWNoYXIyIHksIHVjaGFyIHopIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQu
eiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIHVjaGFyNCh1Y2hhciB4LCB1Y2hhciB5LCB1Y2hhcjIgeikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9
IHoueDsKKyAgICByZXN1bHQudyA9IHoueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0
b3IgdWNoYXI0KHVjaGFyMiB4LCB1Y2hhcjIgeSkgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7
CisgICAgcmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVj
aGFyNCh1Y2hhcjMgeCwgdWNoYXIgeSkgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB4Lno7CisgICAg
cmVzdWx0LncgPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1Y2hhcjQodWNo
YXIgeCwgdWNoYXIzIHkpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsK
KyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9
IHkuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludCBvcGVyYXRvci5sZW5ndGgodWNoYXIy
KSB7CisgICAgcmV0dXJuIDI7Cit9Cit1aW50IG9wZXJhdG9yLmxlbmd0aCh1Y2hhcjMpIHsKKyAg
ICByZXR1cm4gMzsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVjaGFyNCkgeworICAgIHJldHVy
biA0OworfQorb3BlcmF0b3IgdXNob3J0Mih1c2hvcnQgeCwgdXNob3J0IHkpIHsKKyAgICB1c2hv
cnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1c2hvcnQzKHVzaG9ydCB4LCB1c2hvcnQgeSwgdXNo
b3J0IHopIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVz
dWx0LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3Bl
cmF0b3IgdXNob3J0Myh1c2hvcnQyIHgsIHVzaG9ydCB5KSB7CisgICAgdXNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0Lnog
PSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1c2hvcnQzKHVzaG9ydCB4LCB1
c2hvcnQyIHkpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAg
cmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK29wZXJhdG9yIHVzaG9ydDQodXNob3J0IHgsIHVzaG9ydCB5LCB1c2hvcnQgeiwgdXNob3J0
IHcpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0
LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1bHQudyA9IHc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIHVzaG9ydDQodXNob3J0MiB4LCB1c2hvcnQgeSwgdXNob3J0
IHopIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1
bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmVzdWx0LncgPSB6OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1c2hvcnQ0KHVzaG9ydCB4LCB1c2hvcnQyIHksIHVz
aG9ydCB6KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJl
c3VsdC55ID0geS54OworICAgIHJlc3VsdC56ID0geS55OworICAgIHJlc3VsdC53ID0gejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgdXNob3J0NCh1c2hvcnQgeCwgdXNob3J0IHks
IHVzaG9ydDIgeikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAg
ICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVzaG9ydDQodXNob3J0MiB4LCB1c2hv
cnQyIHkpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICBy
ZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHkueDsKKyAgICByZXN1bHQudyA9IHkueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgdXNob3J0NCh1c2hvcnQzIHgsIHVzaG9y
dCB5KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVz
dWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB4Lno7CisgICAgcmVzdWx0LncgPSB5OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciB1c2hvcnQ0KHVzaG9ydCB4LCB1c2hvcnQzIHkp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0Lnkg
PSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVzaG9ydDIpIHsKKyAgICByZXR1
cm4gMjsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVzaG9ydDMpIHsKKyAgICByZXR1cm4gMzsK
K30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVzaG9ydDQpIHsKKyAgICByZXR1cm4gNDsKK30KK29w
ZXJhdG9yIHVpbnQyKHVpbnQgeCwgdWludCB5KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29w
ZXJhdG9yIHVpbnQzKHVpbnQgeCwgdWludCB5LCB1aW50IHopIHsKKyAgICB1aW50MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQzKHVpbnQyIHgsIHVpbnQgeSkg
eworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9
IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9y
IHVpbnQzKHVpbnQgeCwgdWludDIgeSkgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQ0KHVpbnQgeCwgdWludCB5LCB1aW50IHosIHVp
bnQgdykgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0
LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1bHQudyA9IHc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQ0KHVpbnQyIHgsIHVpbnQgeSwgdWludCB6KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geC54OworICAgIHJlc3VsdC55ID0geC55
OworICAgIHJlc3VsdC56ID0geTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK29wZXJhdG9yIHVpbnQ0KHVpbnQgeCwgdWludDIgeSwgdWludCB6KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICBy
ZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K29wZXJhdG9yIHVpbnQ0KHVpbnQgeCwgdWludCB5LCB1aW50MiB6KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0Lnog
PSB6Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIHVpbnQ0KHVpbnQyIHgsIHVpbnQyIHkpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7Cisg
ICAgcmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQ0
KHVpbnQzIHgsIHVpbnQgeSkgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgu
eDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHguejsKKyAgICByZXN1bHQu
dyA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHVpbnQ0KHVpbnQgeCwgdWlu
dDMgeSkgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0
LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKHVpbnQyKSB7CisgICAgcmV0
dXJuIDI7Cit9Cit1aW50IG9wZXJhdG9yLmxlbmd0aCh1aW50MykgeworICAgIHJldHVybiAzOwor
fQordWludCBvcGVyYXRvci5sZW5ndGgodWludDQpIHsKKyAgICByZXR1cm4gNDsKK30KK29wZXJh
dG9yIGNoYXIyKGNoYXIgeCwgY2hhciB5KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIGNoYXIzKGNoYXIgeCwgY2hhciB5LCBjaGFyIHopIHsKKyAgICBjaGFyMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGNoYXIzKGNoYXIyIHgsIGNoYXIgeSkgewor
ICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgu
eTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGNo
YXIzKGNoYXIgeCwgY2hhcjIgeSkgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIGNoYXI0KGNoYXIgeCwgY2hhciB5LCBjaGFyIHosIGNoYXIg
dykgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0Lnkg
PSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1bHQudyA9IHc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK29wZXJhdG9yIGNoYXI0KGNoYXIyIHgsIGNoYXIgeSwgY2hhciB6KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geC54OworICAgIHJlc3VsdC55ID0geC55Owor
ICAgIHJlc3VsdC56ID0geTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK29wZXJhdG9yIGNoYXI0KGNoYXIgeCwgY2hhcjIgeSwgY2hhciB6KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1
bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29w
ZXJhdG9yIGNoYXI0KGNoYXIgeCwgY2hhciB5LCBjaGFyMiB6KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6
Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9y
IGNoYXI0KGNoYXIyIHgsIGNoYXIyIHkpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7CisgICAg
cmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGNoYXI0KGNo
YXIzIHgsIGNoYXIgeSkgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsK
KyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHguejsKKyAgICByZXN1bHQudyA9
IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGNoYXI0KGNoYXIgeCwgY2hhcjMg
eSkgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0Lnkg
PSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKGNoYXIyKSB7CisgICAgcmV0dXJu
IDI7Cit9Cit1aW50IG9wZXJhdG9yLmxlbmd0aChjaGFyMykgeworICAgIHJldHVybiAzOworfQor
dWludCBvcGVyYXRvci5sZW5ndGgoY2hhcjQpIHsKKyAgICByZXR1cm4gNDsKK30KK29wZXJhdG9y
IHNob3J0MihzaG9ydCB4LCBzaG9ydCB5KSB7CisgICAgc2hvcnQyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVy
YXRvciBzaG9ydDMoc2hvcnQgeCwgc2hvcnQgeSwgc2hvcnQgeikgeworICAgIHNob3J0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9
IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHNob3J0MyhzaG9ydDIgeCwgc2hv
cnQgeSkgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVz
dWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9Citv
cGVyYXRvciBzaG9ydDMoc2hvcnQgeCwgc2hvcnQyIHkpIHsKKyAgICBzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHku
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3Igc2hvcnQ0KHNob3J0IHgsIHNob3J0
IHksIHNob3J0IHosIHNob3J0IHcpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6OworICAgIHJlc3VsdC53
ID0gdzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3Igc2hvcnQ0KHNob3J0MiB4LCBz
aG9ydCB5LCBzaG9ydCB6KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgu
eDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmVzdWx0Lncg
PSB6OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBzaG9ydDQoc2hvcnQgeCwgc2hv
cnQyIHksIHNob3J0IHopIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsK
KyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9
IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHNob3J0NChzaG9ydCB4LCBzaG9y
dCB5LCBzaG9ydDIgeikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Owor
ICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHoueDsKKyAgICByZXN1bHQudyA9IHou
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3Igc2hvcnQ0KHNob3J0MiB4LCBzaG9y
dDIgeSkgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVz
dWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7CisgICAgcmVzdWx0LncgPSB5Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIHNob3J0NChzaG9ydDMgeCwgc2hvcnQgeSkg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0Lnkg
PSB4Lnk7CisgICAgcmVzdWx0LnogPSB4Lno7CisgICAgcmVzdWx0LncgPSB5OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitvcGVyYXRvciBzaG9ydDQoc2hvcnQgeCwgc2hvcnQzIHkpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAg
ICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHkuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludCBvcGVyYXRvci5sZW5ndGgoc2hvcnQyKSB7CisgICAgcmV0dXJuIDI7Cit9Cit1
aW50IG9wZXJhdG9yLmxlbmd0aChzaG9ydDMpIHsKKyAgICByZXR1cm4gMzsKK30KK3VpbnQgb3Bl
cmF0b3IubGVuZ3RoKHNob3J0NCkgeworICAgIHJldHVybiA0OworfQorb3BlcmF0b3IgaW50Mihp
bnQgeCwgaW50IHkpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAg
cmVzdWx0LnkgPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBpbnQzKGludCB4
LCBpbnQgeSwgaW50IHopIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7Cisg
ICAgcmVzdWx0LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorb3BlcmF0b3IgaW50MyhpbnQyIHgsIGludCB5KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBpbnQzKGludCB4LCBpbnQyIHkpIHsKKyAg
ICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7Cisg
ICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGludDQo
aW50IHgsIGludCB5LCBpbnQgeiwgaW50IHcpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJlc3VsdC56ID0gejsKKyAgICByZXN1
bHQudyA9IHc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGludDQoaW50MiB4LCBp
bnQgeSwgaW50IHopIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAg
ICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmVzdWx0LncgPSB6Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBpbnQ0KGludCB4LCBpbnQyIHksIGludCB6
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0g
eS54OworICAgIHJlc3VsdC56ID0geS55OworICAgIHJlc3VsdC53ID0gejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorb3BlcmF0b3IgaW50NChpbnQgeCwgaW50IHksIGludDIgeikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVz
dWx0LnogPSB6Lng7CisgICAgcmVzdWx0LncgPSB6Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K29wZXJhdG9yIGludDQoaW50MiB4LCBpbnQyIHkpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHkueDsK
KyAgICByZXN1bHQudyA9IHkueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgaW50
NChpbnQzIHgsIGludCB5KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7
CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB4Lno7CisgICAgcmVzdWx0Lncg
PSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBpbnQ0KGludCB4LCBpbnQzIHkp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5
Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKGludDIpIHsKKyAgICByZXR1cm4gMjsK
K30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKGludDMpIHsKKyAgICByZXR1cm4gMzsKK30KK3VpbnQg
b3BlcmF0b3IubGVuZ3RoKGludDQpIHsKKyAgICByZXR1cm4gNDsKK30KK29wZXJhdG9yIGhhbGYy
KGhhbGYgeCwgaGFsZiB5KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsK
KyAgICByZXN1bHQueSA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGYz
KGhhbGYgeCwgaGFsZiB5LCBoYWxmIHopIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGYzKGhhbGYyIHgsIGhhbGYgeSkgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1bHQueSA9IHgueTsKKyAgICBy
ZXN1bHQueiA9IHk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGYzKGhhbGYg
eCwgaGFsZjIgeSkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAg
cmVzdWx0LnkgPSB5Lng7CisgICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK29wZXJhdG9yIGhhbGY0KGhhbGYgeCwgaGFsZiB5LCBoYWxmIHosIGhhbGYgdykgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5OworICAg
IHJlc3VsdC56ID0gejsKKyAgICByZXN1bHQudyA9IHc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K29wZXJhdG9yIGhhbGY0KGhhbGYyIHgsIGhhbGYgeSwgaGFsZiB6KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0geC54OworICAgIHJlc3VsdC55ID0geC55OworICAgIHJlc3Vs
dC56ID0geTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJh
dG9yIGhhbGY0KGhhbGYgeCwgaGFsZjIgeSwgaGFsZiB6KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHku
eTsKKyAgICByZXN1bHQudyA9IHo7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhh
bGY0KGhhbGYgeCwgaGFsZiB5LCBoYWxmMiB6KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6Lng7CisgICAg
cmVzdWx0LncgPSB6Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGY0KGhh
bGYyIHgsIGhhbGYyIHkpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7
CisgICAgcmVzdWx0LnkgPSB4Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7CisgICAgcmVzdWx0Lncg
PSB5Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGY0KGhhbGYzIHgsIGhh
bGYgeSkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICByZXN1
bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHguejsKKyAgICByZXN1bHQudyA9IHk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGhhbGY0KGhhbGYgeCwgaGFsZjMgeSkgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7CisgICAgcmVzdWx0LnkgPSB5Lng7Cisg
ICAgcmVzdWx0LnogPSB5Lnk7CisgICAgcmVzdWx0LncgPSB5Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQgb3BlcmF0b3IubGVuZ3RoKGhhbGYyKSB7CisgICAgcmV0dXJuIDI7Cit9Cit1
aW50IG9wZXJhdG9yLmxlbmd0aChoYWxmMykgeworICAgIHJldHVybiAzOworfQordWludCBvcGVy
YXRvci5sZW5ndGgoaGFsZjQpIHsKKyAgICByZXR1cm4gNDsKK30KK29wZXJhdG9yIGZsb2F0Mihm
bG9hdCB4LCBmbG9hdCB5KSB7CisgICAgZmxvYXQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHg7
CisgICAgcmVzdWx0LnkgPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBmbG9h
dDMoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB4OworICAgIHJlc3VsdC55ID0geTsKKyAgICByZXN1bHQueiA9IHo7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGZsb2F0MyhmbG9hdDIgeCwgZmxvYXQgeSkgewor
ICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4
Lnk7CisgICAgcmVzdWx0LnogPSB5OworICAgIHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBm
bG9hdDMoZmxvYXQgeCwgZmxvYXQyIHkpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgZmxvYXQ0KGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0
IHosIGZsb2F0IHcpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAg
ICByZXN1bHQueSA9IHk7CisgICAgcmVzdWx0LnogPSB6OworICAgIHJlc3VsdC53ID0gdzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgZmxvYXQ0KGZsb2F0MiB4LCBmbG9hdCB5LCBm
bG9hdCB6KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHgueDsKKyAgICBy
ZXN1bHQueSA9IHgueTsKKyAgICByZXN1bHQueiA9IHk7CisgICAgcmVzdWx0LncgPSB6OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitvcGVyYXRvciBmbG9hdDQoZmxvYXQgeCwgZmxvYXQyIHksIGZs
b2F0IHopIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1
bHQueSA9IHkueDsKKyAgICByZXN1bHQueiA9IHkueTsKKyAgICByZXN1bHQudyA9IHo7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK29wZXJhdG9yIGZsb2F0NChmbG9hdCB4LCBmbG9hdCB5LCBmbG9h
dDIgeikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4OworICAgIHJlc3Vs
dC55ID0geTsKKyAgICByZXN1bHQueiA9IHoueDsKKyAgICByZXN1bHQudyA9IHoueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorb3BlcmF0b3IgZmxvYXQ0KGZsb2F0MiB4LCBmbG9hdDIgeSkgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4
Lnk7CisgICAgcmVzdWx0LnogPSB5Lng7CisgICAgcmVzdWx0LncgPSB5Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK29wZXJhdG9yIGZsb2F0NChmbG9hdDMgeCwgZmxvYXQgeSkgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB4Lng7CisgICAgcmVzdWx0LnkgPSB4Lnk7Cisg
ICAgcmVzdWx0LnogPSB4Lno7CisgICAgcmVzdWx0LncgPSB5OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitvcGVyYXRvciBmbG9hdDQoZmxvYXQgeCwgZmxvYXQzIHkpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0geDsKKyAgICByZXN1bHQueSA9IHkueDsKKyAgICByZXN1bHQu
eiA9IHkueTsKKyAgICByZXN1bHQudyA9IHkuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dCBvcGVyYXRvci5sZW5ndGgoZmxvYXQyKSB7CisgICAgcmV0dXJuIDI7Cit9Cit1aW50IG9wZXJh
dG9yLmxlbmd0aChmbG9hdDMpIHsKKyAgICByZXR1cm4gMzsKK30KK3VpbnQgb3BlcmF0b3IubGVu
Z3RoKGZsb2F0NCkgeworICAgIHJldHVybiA0OworfQorYm9vbCBvcGVyYXRvcj09KGJvb2wyIGEs
IGJvb2wyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55OworfQorYm9v
bCBvcGVyYXRvcj09KGJvb2wzIGEsIGJvb2wzIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAm
JiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9wZXJhdG9yPT0oYm9vbDQgYSwg
Ym9vbDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09
IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGJvb2wgb3BlcmF0b3IueChib29sMik7Citu
YXRpdmUgYm9vbCBvcGVyYXRvci55KGJvb2wyKTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLngoYm9v
bDMpOworbmF0aXZlIGJvb2wgb3BlcmF0b3IueShib29sMyk7CituYXRpdmUgYm9vbCBvcGVyYXRv
ci56KGJvb2wzKTsKK25hdGl2ZSBib29sIG9wZXJhdG9yLngoYm9vbDQpOworbmF0aXZlIGJvb2wg
b3BlcmF0b3IueShib29sNCk7CituYXRpdmUgYm9vbCBvcGVyYXRvci56KGJvb2w0KTsKK25hdGl2
ZSBib29sIG9wZXJhdG9yLncoYm9vbDQpOworbmF0aXZlIGJvb2wyIG9wZXJhdG9yLng9KGJvb2wy
LCBib29sKTsKK25hdGl2ZSBib29sMiBvcGVyYXRvci55PShib29sMiwgYm9vbCk7CituYXRpdmUg
Ym9vbDMgb3BlcmF0b3IueD0oYm9vbDMsIGJvb2wpOworbmF0aXZlIGJvb2wzIG9wZXJhdG9yLnk9
KGJvb2wzLCBib29sKTsKK25hdGl2ZSBib29sMyBvcGVyYXRvci56PShib29sMywgYm9vbCk7Citu
YXRpdmUgYm9vbDQgb3BlcmF0b3IueD0oYm9vbDQsIGJvb2wpOworbmF0aXZlIGJvb2w0IG9wZXJh
dG9yLnk9KGJvb2w0LCBib29sKTsKK25hdGl2ZSBib29sNCBvcGVyYXRvci56PShib29sNCwgYm9v
bCk7CituYXRpdmUgYm9vbDQgb3BlcmF0b3Iudz0oYm9vbDQsIGJvb2wpOworYm9vbCBvcGVyYXRv
cltdKGJvb2wyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAg
IGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAg
ICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0cmFwOwor
ICAgIH0KK30KK2Jvb2wgb3BlcmF0b3JbXShib29sMyB2LCB1aW50IGluZGV4KSB7CisgICAgc3dp
dGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54Owor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBjYXNlIDI6
CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAg
dHJhcDsKKyAgICB9Cit9Citib29sIG9wZXJhdG9yW10oYm9vbDQgdiwgdWludCBpbmRleCkgewor
ICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJu
IHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAg
Y2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgorICAgICAg
ICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7Cisg
ICAgfQorfQorYm9vbDIgb3BlcmF0b3JbXT0oYm9vbDIgdiwgdWludCBpbmRleCwgYm9vbCBhKSB7
CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2Lngg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYu
eSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbDMgb3BlcmF0b3JbXT0oYm9vbDMg
diwgdWludCBpbmRleCwgYm9vbCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBj
YXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0dXJuIHY7Cit9
Citib29sNCBvcGVyYXRvcltdPShib29sNCB2LCB1aW50IGluZGV4LCBib29sIGEpIHsKKyAgICBz
d2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYueCA9IGE7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgdi55ID0gYTsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICB2LnogPSBh
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAgIHYudyA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRy
YXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KHVjaGFyMiBhLCB1
Y2hhcjIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnk7Cit9Citib29s
IG9wZXJhdG9yPT0odWNoYXIzIGEsIHVjaGFyMyBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLngg
JiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVyYXRvcj09KHVjaGFyNCBh
LCB1Y2hhcjQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56
ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHVjaGFyIG9wZXJhdG9yLngodWNoYXIy
KTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRvci55KHVjaGFyMik7CituYXRpdmUgdWNoYXIgb3BlcmF0
b3IueCh1Y2hhcjMpOworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLnkodWNoYXIzKTsKK25hdGl2ZSB1
Y2hhciBvcGVyYXRvci56KHVjaGFyMyk7CituYXRpdmUgdWNoYXIgb3BlcmF0b3IueCh1Y2hhcjQp
OworbmF0aXZlIHVjaGFyIG9wZXJhdG9yLnkodWNoYXI0KTsKK25hdGl2ZSB1Y2hhciBvcGVyYXRv
ci56KHVjaGFyNCk7CituYXRpdmUgdWNoYXIgb3BlcmF0b3Iudyh1Y2hhcjQpOworbmF0aXZlIHVj
aGFyMiBvcGVyYXRvci54PSh1Y2hhcjIsIHVjaGFyKTsKK25hdGl2ZSB1Y2hhcjIgb3BlcmF0b3Iu
eT0odWNoYXIyLCB1Y2hhcik7CituYXRpdmUgdWNoYXIzIG9wZXJhdG9yLng9KHVjaGFyMywgdWNo
YXIpOworbmF0aXZlIHVjaGFyMyBvcGVyYXRvci55PSh1Y2hhcjMsIHVjaGFyKTsKK25hdGl2ZSB1
Y2hhcjMgb3BlcmF0b3Iuej0odWNoYXIzLCB1Y2hhcik7CituYXRpdmUgdWNoYXI0IG9wZXJhdG9y
Lng9KHVjaGFyNCwgdWNoYXIpOworbmF0aXZlIHVjaGFyNCBvcGVyYXRvci55PSh1Y2hhcjQsIHVj
aGFyKTsKK25hdGl2ZSB1Y2hhcjQgb3BlcmF0b3Iuej0odWNoYXI0LCB1Y2hhcik7CituYXRpdmUg
dWNoYXI0IG9wZXJhdG9yLnc9KHVjaGFyNCwgdWNoYXIpOwordWNoYXIgb3BlcmF0b3JbXSh1Y2hh
cjIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAw
OgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAg
cmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQor
fQordWNoYXIgb3BlcmF0b3JbXSh1Y2hhcjMgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAo
aW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAg
ICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAg
ICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7
CisgICAgfQorfQordWNoYXIgb3BlcmF0b3JbXSh1Y2hhcjQgdiwgdWludCBpbmRleCkgeworICAg
IHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYu
eDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2Fz
ZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgorICAgICAgICAg
ICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAg
fQorfQordWNoYXIyIG9wZXJhdG9yW109KHVjaGFyMiB2LCB1aW50IGluZGV4LCB1Y2hhciBhKSB7
CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2Lngg
PSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYu
eSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordWNoYXIzIG9wZXJhdG9yW109KHVjaGFy
MyB2LCB1aW50IGluZGV4LCB1Y2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAg
ICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0dXJuIHY7
Cit9Cit1Y2hhcjQgb3BlcmF0b3JbXT0odWNoYXI0IHYsIHVpbnQgaW5kZXgsIHVjaGFyIGEpIHsK
KyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYueCA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgdi55
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICB2
LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAg
IHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KHVzaG9y
dDIgYSwgdXNob3J0MiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueTsK
K30KK2Jvb2wgb3BlcmF0b3I9PSh1c2hvcnQzIGEsIHVzaG9ydDMgYikgeworICAgIHJldHVybiBh
LnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3BlcmF0b3I9
PSh1c2hvcnQ0IGEsIHVzaG9ydDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9
PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHVzaG9ydCBvcGVy
YXRvci54KHVzaG9ydDIpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci55KHVzaG9ydDIpOworbmF0
aXZlIHVzaG9ydCBvcGVyYXRvci54KHVzaG9ydDMpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci55
KHVzaG9ydDMpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci56KHVzaG9ydDMpOworbmF0aXZlIHVz
aG9ydCBvcGVyYXRvci54KHVzaG9ydDQpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci55KHVzaG9y
dDQpOworbmF0aXZlIHVzaG9ydCBvcGVyYXRvci56KHVzaG9ydDQpOworbmF0aXZlIHVzaG9ydCBv
cGVyYXRvci53KHVzaG9ydDQpOworbmF0aXZlIHVzaG9ydDIgb3BlcmF0b3IueD0odXNob3J0Miwg
dXNob3J0KTsKK25hdGl2ZSB1c2hvcnQyIG9wZXJhdG9yLnk9KHVzaG9ydDIsIHVzaG9ydCk7Citu
YXRpdmUgdXNob3J0MyBvcGVyYXRvci54PSh1c2hvcnQzLCB1c2hvcnQpOworbmF0aXZlIHVzaG9y
dDMgb3BlcmF0b3IueT0odXNob3J0MywgdXNob3J0KTsKK25hdGl2ZSB1c2hvcnQzIG9wZXJhdG9y
Lno9KHVzaG9ydDMsIHVzaG9ydCk7CituYXRpdmUgdXNob3J0NCBvcGVyYXRvci54PSh1c2hvcnQ0
LCB1c2hvcnQpOworbmF0aXZlIHVzaG9ydDQgb3BlcmF0b3IueT0odXNob3J0NCwgdXNob3J0KTsK
K25hdGl2ZSB1c2hvcnQ0IG9wZXJhdG9yLno9KHVzaG9ydDQsIHVzaG9ydCk7CituYXRpdmUgdXNo
b3J0NCBvcGVyYXRvci53PSh1c2hvcnQ0LCB1c2hvcnQpOwordXNob3J0IG9wZXJhdG9yW10odXNo
b3J0MiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNl
IDA6CisgICAgICAgICAgICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAg
ICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9
Cit9Cit1c2hvcnQgb3BlcmF0b3JbXSh1c2hvcnQzIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0
Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7Cisg
ICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGNhc2UgMjoK
KyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0
cmFwOworICAgIH0KK30KK3VzaG9ydCBvcGVyYXRvcltdKHVzaG9ydDQgdiwgdWludCBpbmRleCkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0
dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgorICAg
ICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7
CisgICAgfQorfQordXNob3J0MiBvcGVyYXRvcltdPSh1c2hvcnQyIHYsIHVpbnQgaW5kZXgsIHVz
aG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAg
ICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAg
ICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordXNob3J0MyBvcGVyYXRv
cltdPSh1c2hvcnQzIHYsIHVpbnQgaW5kZXgsIHVzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRl
eCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cisg
ICAgcmV0dXJuIHY7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yW109KHVzaG9ydDQgdiwgdWludCBpbmRl
eCwgdXNob3J0IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgor
ICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6
CisgICAgICAgICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
MzoKKyAgICAgICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBv
cGVyYXRvcj09KHVpbnQyIGEsIHVpbnQyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBh
LnkgPT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KHVpbnQzIGEsIHVpbnQzIGIpIHsKKyAgICBy
ZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9w
ZXJhdG9yPT0odWludDQgYSwgdWludDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEu
eSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHVpbnQgb3Bl
cmF0b3IueCh1aW50Mik7CituYXRpdmUgdWludCBvcGVyYXRvci55KHVpbnQyKTsKK25hdGl2ZSB1
aW50IG9wZXJhdG9yLngodWludDMpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IueSh1aW50Myk7Citu
YXRpdmUgdWludCBvcGVyYXRvci56KHVpbnQzKTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLngodWlu
dDQpOworbmF0aXZlIHVpbnQgb3BlcmF0b3IueSh1aW50NCk7CituYXRpdmUgdWludCBvcGVyYXRv
ci56KHVpbnQ0KTsKK25hdGl2ZSB1aW50IG9wZXJhdG9yLncodWludDQpOworbmF0aXZlIHVpbnQy
IG9wZXJhdG9yLng9KHVpbnQyLCB1aW50KTsKK25hdGl2ZSB1aW50MiBvcGVyYXRvci55PSh1aW50
MiwgdWludCk7CituYXRpdmUgdWludDMgb3BlcmF0b3IueD0odWludDMsIHVpbnQpOworbmF0aXZl
IHVpbnQzIG9wZXJhdG9yLnk9KHVpbnQzLCB1aW50KTsKK25hdGl2ZSB1aW50MyBvcGVyYXRvci56
PSh1aW50MywgdWludCk7CituYXRpdmUgdWludDQgb3BlcmF0b3IueD0odWludDQsIHVpbnQpOwor
bmF0aXZlIHVpbnQ0IG9wZXJhdG9yLnk9KHVpbnQ0LCB1aW50KTsKK25hdGl2ZSB1aW50NCBvcGVy
YXRvci56PSh1aW50NCwgdWludCk7CituYXRpdmUgdWludDQgb3BlcmF0b3Iudz0odWludDQsIHVp
bnQpOwordWludCBvcGVyYXRvcltdKHVpbnQyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2gg
KGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAg
ICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICB0cmFwOworICAgIH0KK30KK3VpbnQgb3BlcmF0b3JbXSh1aW50MyB2LCB1aW50
IGluZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAg
ICAgICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55
OworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZh
dWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9Cit1aW50IG9wZXJhdG9yW10odWludDQg
diwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgor
ICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0
dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAg
ICAgY2FzZSAzOgorICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorfQordWludDIgb3BlcmF0b3JbXT0odWludDIgdiwgdWlu
dCBpbmRleCwgdWludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6
CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
MToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQordWludDMg
b3BlcmF0b3JbXT0odWludDMgdiwgdWludCBpbmRleCwgdWludCBhKSB7CisgICAgc3dpdGNoIChp
bmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9
CisgICAgcmV0dXJuIHY7Cit9Cit1aW50NCBvcGVyYXRvcltdPSh1aW50NCB2LCB1aW50IGluZGV4
LCB1aW50IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAg
ICAgICAgIHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAg
ICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6Cisg
ICAgICAgICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoK
KyAgICAgICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVy
YXRvcj09KGNoYXIyIGEsIGNoYXIyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkg
PT0gYi55OworfQorYm9vbCBvcGVyYXRvcj09KGNoYXIzIGEsIGNoYXIzIGIpIHsKKyAgICByZXR1
cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9wZXJh
dG9yPT0oY2hhcjQgYSwgY2hhcjQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9
PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGNoYXIgb3BlcmF0
b3IueChjaGFyMik7CituYXRpdmUgY2hhciBvcGVyYXRvci55KGNoYXIyKTsKK25hdGl2ZSBjaGFy
IG9wZXJhdG9yLngoY2hhcjMpOworbmF0aXZlIGNoYXIgb3BlcmF0b3IueShjaGFyMyk7CituYXRp
dmUgY2hhciBvcGVyYXRvci56KGNoYXIzKTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9yLngoY2hhcjQp
OworbmF0aXZlIGNoYXIgb3BlcmF0b3IueShjaGFyNCk7CituYXRpdmUgY2hhciBvcGVyYXRvci56
KGNoYXI0KTsKK25hdGl2ZSBjaGFyIG9wZXJhdG9yLncoY2hhcjQpOworbmF0aXZlIGNoYXIyIG9w
ZXJhdG9yLng9KGNoYXIyLCBjaGFyKTsKK25hdGl2ZSBjaGFyMiBvcGVyYXRvci55PShjaGFyMiwg
Y2hhcik7CituYXRpdmUgY2hhcjMgb3BlcmF0b3IueD0oY2hhcjMsIGNoYXIpOworbmF0aXZlIGNo
YXIzIG9wZXJhdG9yLnk9KGNoYXIzLCBjaGFyKTsKK25hdGl2ZSBjaGFyMyBvcGVyYXRvci56PShj
aGFyMywgY2hhcik7CituYXRpdmUgY2hhcjQgb3BlcmF0b3IueD0oY2hhcjQsIGNoYXIpOworbmF0
aXZlIGNoYXI0IG9wZXJhdG9yLnk9KGNoYXI0LCBjaGFyKTsKK25hdGl2ZSBjaGFyNCBvcGVyYXRv
ci56PShjaGFyNCwgY2hhcik7CituYXRpdmUgY2hhcjQgb3BlcmF0b3Iudz0oY2hhcjQsIGNoYXIp
OworY2hhciBvcGVyYXRvcltdKGNoYXIyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGlu
ZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAg
IGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAg
ICAgICAgICB0cmFwOworICAgIH0KK30KK2NoYXIgb3BlcmF0b3JbXShjaGFyMyB2LCB1aW50IGlu
ZGV4KSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAg
ICByZXR1cm4gdi54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55Owor
ICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitjaGFyIG9wZXJhdG9yW10oY2hhcjQgdiwg
dWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAg
ICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJu
IHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAg
Y2FzZSAzOgorICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHRyYXA7CisgICAgfQorfQorY2hhcjIgb3BlcmF0b3JbXT0oY2hhcjIgdiwgdWludCBp
bmRleCwgY2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorY2hhcjMgb3Bl
cmF0b3JbXT0oY2hhcjMgdiwgdWludCBpbmRleCwgY2hhciBhKSB7CisgICAgc3dpdGNoIChpbmRl
eCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cisg
ICAgcmV0dXJuIHY7Cit9CitjaGFyNCBvcGVyYXRvcltdPShjaGFyNCB2LCB1aW50IGluZGV4LCBj
aGFyIGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAg
ICAgIHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAg
ICAgICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAg
ICAgICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAg
ICAgICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoK
KyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRv
cj09KHNob3J0MiBhLCBzaG9ydDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9
PSBiLnk7Cit9Citib29sIG9wZXJhdG9yPT0oc2hvcnQzIGEsIHNob3J0MyBiKSB7CisgICAgcmV0
dXJuIGEueCA9PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVy
YXRvcj09KHNob3J0NCBhLCBzaG9ydDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEu
eSA9PSBiLnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIHNob3J0IG9w
ZXJhdG9yLngoc2hvcnQyKTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci55KHNob3J0Mik7CituYXRp
dmUgc2hvcnQgb3BlcmF0b3IueChzaG9ydDMpOworbmF0aXZlIHNob3J0IG9wZXJhdG9yLnkoc2hv
cnQzKTsKK25hdGl2ZSBzaG9ydCBvcGVyYXRvci56KHNob3J0Myk7CituYXRpdmUgc2hvcnQgb3Bl
cmF0b3IueChzaG9ydDQpOworbmF0aXZlIHNob3J0IG9wZXJhdG9yLnkoc2hvcnQ0KTsKK25hdGl2
ZSBzaG9ydCBvcGVyYXRvci56KHNob3J0NCk7CituYXRpdmUgc2hvcnQgb3BlcmF0b3IudyhzaG9y
dDQpOworbmF0aXZlIHNob3J0MiBvcGVyYXRvci54PShzaG9ydDIsIHNob3J0KTsKK25hdGl2ZSBz
aG9ydDIgb3BlcmF0b3IueT0oc2hvcnQyLCBzaG9ydCk7CituYXRpdmUgc2hvcnQzIG9wZXJhdG9y
Lng9KHNob3J0Mywgc2hvcnQpOworbmF0aXZlIHNob3J0MyBvcGVyYXRvci55PShzaG9ydDMsIHNo
b3J0KTsKK25hdGl2ZSBzaG9ydDMgb3BlcmF0b3Iuej0oc2hvcnQzLCBzaG9ydCk7CituYXRpdmUg
c2hvcnQ0IG9wZXJhdG9yLng9KHNob3J0NCwgc2hvcnQpOworbmF0aXZlIHNob3J0NCBvcGVyYXRv
ci55PShzaG9ydDQsIHNob3J0KTsKK25hdGl2ZSBzaG9ydDQgb3BlcmF0b3Iuej0oc2hvcnQ0LCBz
aG9ydCk7CituYXRpdmUgc2hvcnQ0IG9wZXJhdG9yLnc9KHNob3J0NCwgc2hvcnQpOworc2hvcnQg
b3BlcmF0b3JbXShzaG9ydDIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsK
KyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAx
OgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorfQorc2hvcnQgb3BlcmF0b3JbXShzaG9ydDMgdiwgdWludCBpbmRleCkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0
dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorfQorc2hvcnQgb3BlcmF0b3JbXShzaG9ydDQgdiwgdWlu
dCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAg
ICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYu
eTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2Fz
ZSAzOgorICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorfQorc2hvcnQyIG9wZXJhdG9yW109KHNob3J0MiB2LCB1aW50IGlu
ZGV4LCBzaG9ydCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorc2hvcnQzIG9w
ZXJhdG9yW109KHNob3J0MyB2LCB1aW50IGluZGV4LCBzaG9ydCBhKSB7CisgICAgc3dpdGNoIChp
bmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9
CisgICAgcmV0dXJuIHY7Cit9CitzaG9ydDQgb3BlcmF0b3JbXT0oc2hvcnQ0IHYsIHVpbnQgaW5k
ZXgsIHNob3J0IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAg
ICAgICAgICAgIHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgor
ICAgICAgICAgICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6
CisgICAgICAgICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ug
MzoKKyAgICAgICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBv
cGVyYXRvcj09KGludDIgYSwgaW50MiBiKSB7CisgICAgcmV0dXJuIGEueCA9PSBiLnggJiYgYS55
ID09IGIueTsKK30KK2Jvb2wgb3BlcmF0b3I9PShpbnQzIGEsIGludDMgYikgeworICAgIHJldHVy
biBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYgYS56ID09IGIuejsKK30KK2Jvb2wgb3BlcmF0
b3I9PShpbnQ0IGEsIGludDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBi
LnkgJiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGludCBvcGVyYXRvci54
KGludDIpOworbmF0aXZlIGludCBvcGVyYXRvci55KGludDIpOworbmF0aXZlIGludCBvcGVyYXRv
ci54KGludDMpOworbmF0aXZlIGludCBvcGVyYXRvci55KGludDMpOworbmF0aXZlIGludCBvcGVy
YXRvci56KGludDMpOworbmF0aXZlIGludCBvcGVyYXRvci54KGludDQpOworbmF0aXZlIGludCBv
cGVyYXRvci55KGludDQpOworbmF0aXZlIGludCBvcGVyYXRvci56KGludDQpOworbmF0aXZlIGlu
dCBvcGVyYXRvci53KGludDQpOworbmF0aXZlIGludDIgb3BlcmF0b3IueD0oaW50MiwgaW50KTsK
K25hdGl2ZSBpbnQyIG9wZXJhdG9yLnk9KGludDIsIGludCk7CituYXRpdmUgaW50MyBvcGVyYXRv
ci54PShpbnQzLCBpbnQpOworbmF0aXZlIGludDMgb3BlcmF0b3IueT0oaW50MywgaW50KTsKK25h
dGl2ZSBpbnQzIG9wZXJhdG9yLno9KGludDMsIGludCk7CituYXRpdmUgaW50NCBvcGVyYXRvci54
PShpbnQ0LCBpbnQpOworbmF0aXZlIGludDQgb3BlcmF0b3IueT0oaW50NCwgaW50KTsKK25hdGl2
ZSBpbnQ0IG9wZXJhdG9yLno9KGludDQsIGludCk7CituYXRpdmUgaW50NCBvcGVyYXRvci53PShp
bnQ0LCBpbnQpOworaW50IG9wZXJhdG9yW10oaW50MiB2LCB1aW50IGluZGV4KSB7CisgICAgc3dp
dGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4gdi54Owor
ICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9Cit9CitpbnQgb3BlcmF0b3JbXShpbnQzIHYsIHVp
bnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAg
ICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHJldHVybiB2
Lnk7CisgICAgICAgIGNhc2UgMjoKKyAgICAgICAgICAgIHJldHVybiB2Lno7CisgICAgICAgIGRl
ZmF1bHQ6CisgICAgICAgICAgICB0cmFwOworICAgIH0KK30KK2ludCBvcGVyYXRvcltdKGludDQg
diwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgor
ICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0
dXJuIHYueTsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAg
ICAgY2FzZSAzOgorICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorfQoraW50MiBvcGVyYXRvcltdPShpbnQyIHYsIHVpbnQg
aW5kZXgsIGludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6Cisg
ICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQoraW50MyBvcGVy
YXRvcltdPShpbnQzIHYsIHVpbnQgaW5kZXgsIGludCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkg
eworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAg
cmV0dXJuIHY7Cit9CitpbnQ0IG9wZXJhdG9yW109KGludDQgdiwgdWludCBpbmRleCwgaW50IGEp
IHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYu
eCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAg
di55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAgICAg
ICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAg
ICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KGhh
bGYyIGEsIGhhbGYyIGIpIHsKKyAgICByZXR1cm4gYS54ID09IGIueCAmJiBhLnkgPT0gYi55Owor
fQorYm9vbCBvcGVyYXRvcj09KGhhbGYzIGEsIGhhbGYzIGIpIHsKKyAgICByZXR1cm4gYS54ID09
IGIueCAmJiBhLnkgPT0gYi55ICYmIGEueiA9PSBiLno7Cit9Citib29sIG9wZXJhdG9yPT0oaGFs
ZjQgYSwgaGFsZjQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkgJiYg
YS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGhhbGYgb3BlcmF0b3IueChoYWxm
Mik7CituYXRpdmUgaGFsZiBvcGVyYXRvci55KGhhbGYyKTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9y
LngoaGFsZjMpOworbmF0aXZlIGhhbGYgb3BlcmF0b3IueShoYWxmMyk7CituYXRpdmUgaGFsZiBv
cGVyYXRvci56KGhhbGYzKTsKK25hdGl2ZSBoYWxmIG9wZXJhdG9yLngoaGFsZjQpOworbmF0aXZl
IGhhbGYgb3BlcmF0b3IueShoYWxmNCk7CituYXRpdmUgaGFsZiBvcGVyYXRvci56KGhhbGY0KTsK
K25hdGl2ZSBoYWxmIG9wZXJhdG9yLncoaGFsZjQpOworbmF0aXZlIGhhbGYyIG9wZXJhdG9yLng9
KGhhbGYyLCBoYWxmKTsKK25hdGl2ZSBoYWxmMiBvcGVyYXRvci55PShoYWxmMiwgaGFsZik7Citu
YXRpdmUgaGFsZjMgb3BlcmF0b3IueD0oaGFsZjMsIGhhbGYpOworbmF0aXZlIGhhbGYzIG9wZXJh
dG9yLnk9KGhhbGYzLCBoYWxmKTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRvci56PShoYWxmMywgaGFs
Zik7CituYXRpdmUgaGFsZjQgb3BlcmF0b3IueD0oaGFsZjQsIGhhbGYpOworbmF0aXZlIGhhbGY0
IG9wZXJhdG9yLnk9KGhhbGY0LCBoYWxmKTsKK25hdGl2ZSBoYWxmNCBvcGVyYXRvci56PShoYWxm
NCwgaGFsZik7CituYXRpdmUgaGFsZjQgb3BlcmF0b3Iudz0oaGFsZjQsIGhhbGYpOworaGFsZiBv
cGVyYXRvcltdKGhhbGYyIHYsIHVpbnQgaW5kZXgpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7Cisg
ICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHJldHVybiB2Lng7CisgICAgICAgIGNhc2UgMToK
KyAgICAgICAgICAgIHJldHVybiB2Lnk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0
cmFwOworICAgIH0KK30KK2hhbGYgb3BlcmF0b3JbXShoYWxmMyB2LCB1aW50IGluZGV4KSB7Cisg
ICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICByZXR1cm4g
di54OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICByZXR1cm4gdi55OworICAgICAgICBj
YXNlIDI6CisgICAgICAgICAgICByZXR1cm4gdi56OworICAgICAgICBkZWZhdWx0OgorICAgICAg
ICAgICAgdHJhcDsKKyAgICB9Cit9CitoYWxmIG9wZXJhdG9yW10oaGFsZjQgdiwgdWludCBpbmRl
eCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAg
cmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAg
ICAgICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgor
ICAgICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRy
YXA7CisgICAgfQorfQoraGFsZjIgb3BlcmF0b3JbXT0oaGFsZjIgdiwgdWludCBpbmRleCwgaGFs
ZiBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAg
ICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAg
ICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQoraGFsZjMgb3BlcmF0b3JbXT0o
aGFsZjMgdiwgdWludCBpbmRleCwgaGFsZiBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0dXJu
IHY7Cit9CitoYWxmNCBvcGVyYXRvcltdPShoYWxmNCB2LCB1aW50IGluZGV4LCBoYWxmIGEpIHsK
KyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHYueCA9
IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgdi55
ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAgICAgICB2
LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAgICAgICAg
IHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0
MiBhLCBmbG9hdDIgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnk7Cit9
Citib29sIG9wZXJhdG9yPT0oZmxvYXQzIGEsIGZsb2F0MyBiKSB7CisgICAgcmV0dXJuIGEueCA9
PSBiLnggJiYgYS55ID09IGIueSAmJiBhLnogPT0gYi56OworfQorYm9vbCBvcGVyYXRvcj09KGZs
b2F0NCBhLCBmbG9hdDQgYikgeworICAgIHJldHVybiBhLnggPT0gYi54ICYmIGEueSA9PSBiLnkg
JiYgYS56ID09IGIueiAmJiBhLncgPT0gYi53OworfQorbmF0aXZlIGZsb2F0IG9wZXJhdG9yLngo
ZmxvYXQyKTsKK25hdGl2ZSBmbG9hdCBvcGVyYXRvci55KGZsb2F0Mik7CituYXRpdmUgZmxvYXQg
b3BlcmF0b3IueChmbG9hdDMpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLnkoZmxvYXQzKTsKK25h
dGl2ZSBmbG9hdCBvcGVyYXRvci56KGZsb2F0Myk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IueChm
bG9hdDQpOworbmF0aXZlIGZsb2F0IG9wZXJhdG9yLnkoZmxvYXQ0KTsKK25hdGl2ZSBmbG9hdCBv
cGVyYXRvci56KGZsb2F0NCk7CituYXRpdmUgZmxvYXQgb3BlcmF0b3IudyhmbG9hdDQpOworbmF0
aXZlIGZsb2F0MiBvcGVyYXRvci54PShmbG9hdDIsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDIgb3Bl
cmF0b3IueT0oZmxvYXQyLCBmbG9hdCk7CituYXRpdmUgZmxvYXQzIG9wZXJhdG9yLng9KGZsb2F0
MywgZmxvYXQpOworbmF0aXZlIGZsb2F0MyBvcGVyYXRvci55PShmbG9hdDMsIGZsb2F0KTsKK25h
dGl2ZSBmbG9hdDMgb3BlcmF0b3Iuej0oZmxvYXQzLCBmbG9hdCk7CituYXRpdmUgZmxvYXQ0IG9w
ZXJhdG9yLng9KGZsb2F0NCwgZmxvYXQpOworbmF0aXZlIGZsb2F0NCBvcGVyYXRvci55PShmbG9h
dDQsIGZsb2F0KTsKK25hdGl2ZSBmbG9hdDQgb3BlcmF0b3Iuej0oZmxvYXQ0LCBmbG9hdCk7Citu
YXRpdmUgZmxvYXQ0IG9wZXJhdG9yLnc9KGZsb2F0NCwgZmxvYXQpOworZmxvYXQgb3BlcmF0b3Jb
XShmbG9hdDIgdiwgdWludCBpbmRleCkgeworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAg
Y2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAg
ICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7Cisg
ICAgfQorfQorZmxvYXQgb3BlcmF0b3JbXShmbG9hdDMgdiwgdWludCBpbmRleCkgeworICAgIHN3
aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0dXJuIHYueDsK
KyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAgICAgY2FzZSAy
OgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRyYXA7CisgICAgfQorfQorZmxvYXQgb3BlcmF0b3JbXShmbG9hdDQgdiwgdWludCBpbmRleCkg
eworICAgIHN3aXRjaCAoaW5kZXgpIHsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgcmV0
dXJuIHYueDsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAgICAgcmV0dXJuIHYueTsKKyAgICAg
ICAgY2FzZSAyOgorICAgICAgICAgICAgcmV0dXJuIHYuejsKKyAgICAgICAgY2FzZSAzOgorICAg
ICAgICAgICAgcmV0dXJuIHYudzsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRyYXA7
CisgICAgfQorfQorZmxvYXQyIG9wZXJhdG9yW109KGZsb2F0MiB2LCB1aW50IGluZGV4LCBmbG9h
dCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgeworICAgICAgICBjYXNlIDA6CisgICAgICAgICAg
ICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAg
ICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAg
ICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorZmxvYXQzIG9wZXJhdG9yW109
KGZsb2F0MyB2LCB1aW50IGluZGV4LCBmbG9hdCBhKSB7CisgICAgc3dpdGNoIChpbmRleCkgewor
ICAgICAgICBjYXNlIDA6CisgICAgICAgICAgICB2LnggPSBhOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHYueSA9IGE7CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgdi56ID0gYTsKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdHJhcDsKKyAgICB9CisgICAgcmV0
dXJuIHY7Cit9CitmbG9hdDQgb3BlcmF0b3JbXT0oZmxvYXQ0IHYsIHVpbnQgaW5kZXgsIGZsb2F0
IGEpIHsKKyAgICBzd2l0Y2ggKGluZGV4KSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAg
IHYueCA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOgorICAgICAgICAg
ICAgdi55ID0gYTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIDI6CisgICAgICAg
ICAgICB2LnogPSBhOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMzoKKyAgICAg
ICAgICAgIHYudyA9IGE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHRyYXA7CisgICAgfQorICAgIHJldHVybiB2OworfQorCituYXRpdmUgaGFsZjIg
b3BlcmF0b3JbXShoYWxmMngyLCB1aW50KTsKK25hdGl2ZSBoYWxmMngyIG9wZXJhdG9yW109KGhh
bGYyeDIsIHVpbnQsIGhhbGYyKTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRvcltdKGhhbGYyeDMsIHVp
bnQpOworbmF0aXZlIGhhbGYyeDMgb3BlcmF0b3JbXT0oaGFsZjJ4MywgdWludCwgaGFsZjMpOwor
bmF0aXZlIGhhbGY0IG9wZXJhdG9yW10oaGFsZjJ4NCwgdWludCk7CituYXRpdmUgaGFsZjJ4NCBv
cGVyYXRvcltdPShoYWxmMng0LCB1aW50LCBoYWxmNCk7CituYXRpdmUgaGFsZjIgb3BlcmF0b3Jb
XShoYWxmM3gyLCB1aW50KTsKK25hdGl2ZSBoYWxmM3gyIG9wZXJhdG9yW109KGhhbGYzeDIsIHVp
bnQsIGhhbGYyKTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRvcltdKGhhbGYzeDMsIHVpbnQpOworbmF0
aXZlIGhhbGYzeDMgb3BlcmF0b3JbXT0oaGFsZjN4MywgdWludCwgaGFsZjMpOworbmF0aXZlIGhh
bGY0IG9wZXJhdG9yW10oaGFsZjN4NCwgdWludCk7CituYXRpdmUgaGFsZjN4NCBvcGVyYXRvcltd
PShoYWxmM3g0LCB1aW50LCBoYWxmNCk7CituYXRpdmUgaGFsZjIgb3BlcmF0b3JbXShoYWxmNHgy
LCB1aW50KTsKK25hdGl2ZSBoYWxmNHgyIG9wZXJhdG9yW109KGhhbGY0eDIsIHVpbnQsIGhhbGYy
KTsKK25hdGl2ZSBoYWxmMyBvcGVyYXRvcltdKGhhbGY0eDMsIHVpbnQpOworbmF0aXZlIGhhbGY0
eDMgb3BlcmF0b3JbXT0oaGFsZjR4MywgdWludCwgaGFsZjMpOworbmF0aXZlIGhhbGY0IG9wZXJh
dG9yW10oaGFsZjR4NCwgdWludCk7CituYXRpdmUgaGFsZjR4NCBvcGVyYXRvcltdPShoYWxmNHg0
LCB1aW50LCBoYWxmNCk7CituYXRpdmUgZmxvYXQyIG9wZXJhdG9yW10oZmxvYXQyeDIsIHVpbnQp
OworbmF0aXZlIGZsb2F0MngyIG9wZXJhdG9yW109KGZsb2F0MngyLCB1aW50LCBmbG9hdDIpOwor
bmF0aXZlIGZsb2F0MyBvcGVyYXRvcltdKGZsb2F0MngzLCB1aW50KTsKK25hdGl2ZSBmbG9hdDJ4
MyBvcGVyYXRvcltdPShmbG9hdDJ4MywgdWludCwgZmxvYXQzKTsKK25hdGl2ZSBmbG9hdDQgb3Bl
cmF0b3JbXShmbG9hdDJ4NCwgdWludCk7CituYXRpdmUgZmxvYXQyeDQgb3BlcmF0b3JbXT0oZmxv
YXQyeDQsIHVpbnQsIGZsb2F0NCk7CituYXRpdmUgZmxvYXQyIG9wZXJhdG9yW10oZmxvYXQzeDIs
IHVpbnQpOworbmF0aXZlIGZsb2F0M3gyIG9wZXJhdG9yW109KGZsb2F0M3gyLCB1aW50LCBmbG9h
dDIpOworbmF0aXZlIGZsb2F0MyBvcGVyYXRvcltdKGZsb2F0M3gzLCB1aW50KTsKK25hdGl2ZSBm
bG9hdDN4MyBvcGVyYXRvcltdPShmbG9hdDN4MywgdWludCwgZmxvYXQzKTsKK25hdGl2ZSBmbG9h
dDQgb3BlcmF0b3JbXShmbG9hdDN4NCwgdWludCk7CituYXRpdmUgZmxvYXQzeDQgb3BlcmF0b3Jb
XT0oZmxvYXQzeDQsIHVpbnQsIGZsb2F0NCk7CituYXRpdmUgZmxvYXQyIG9wZXJhdG9yW10oZmxv
YXQ0eDIsIHVpbnQpOworbmF0aXZlIGZsb2F0NHgyIG9wZXJhdG9yW109KGZsb2F0NHgyLCB1aW50
LCBmbG9hdDIpOworbmF0aXZlIGZsb2F0MyBvcGVyYXRvcltdKGZsb2F0NHgzLCB1aW50KTsKK25h
dGl2ZSBmbG9hdDR4MyBvcGVyYXRvcltdPShmbG9hdDR4MywgdWludCwgZmxvYXQzKTsKK25hdGl2
ZSBmbG9hdDQgb3BlcmF0b3JbXShmbG9hdDR4NCwgdWludCk7CituYXRpdmUgZmxvYXQ0eDQgb3Bl
cmF0b3JbXT0oZmxvYXQ0eDQsIHVpbnQsIGZsb2F0NCk7CisKK2Jvb2wgb3BlcmF0b3I9PShoYWxm
MngyIGEsIGhhbGYyeDIgYikgeworICAgIHJldHVybgorICAgICAgICBhWzBdWzBdID09IGJbMF1b
MF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisgICAgICAgIGFbMV1bMF0gPT0g
YlsxXVswXSAmJgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICB0cnVlOworfQor
Ym9vbCBvcGVyYXRvcj09KGhhbGYyeDMgYSwgaGFsZjJ4MyBiKSB7CisgICAgcmV0dXJuCisgICAg
ICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBdWzFdID09IGJbMF1bMV0gJiYK
KyAgICAgICAgYVswXVsyXSA9PSBiWzBdWzJdICYmCisgICAgICAgIGFbMV1bMF0gPT0gYlsxXVsw
XSAmJgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICAgICAgYVsxXVsyXSA9PSBi
WzFdWzJdICYmCisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShoYWxmMng0IGEsIGhhbGYy
eDQgYikgeworICAgIHJldHVybgorICAgICAgICBhWzBdWzBdID09IGJbMF1bMF0gJiYKKyAgICAg
ICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisgICAgICAgIGFbMF1bMl0gPT0gYlswXVsyXSAmJgor
ICAgICAgICBhWzBdWzNdID09IGJbMF1bM10gJiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBd
ICYmCisgICAgICAgIGFbMV1bMV0gPT0gYlsxXVsxXSAmJgorICAgICAgICBhWzFdWzJdID09IGJb
MV1bMl0gJiYKKyAgICAgICAgYVsxXVszXSA9PSBiWzFdWzNdICYmCisgICAgdHJ1ZTsKK30KK2Jv
b2wgb3BlcmF0b3I9PShoYWxmM3gyIGEsIGhhbGYzeDIgYikgeworICAgIHJldHVybgorICAgICAg
ICBhWzBdWzBdID09IGJbMF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisg
ICAgICAgIGFbMV1bMF0gPT0gYlsxXVswXSAmJgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0g
JiYKKyAgICAgICAgYVsyXVswXSA9PSBiWzJdWzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsy
XVsxXSAmJgorICAgIHRydWU7Cit9Citib29sIG9wZXJhdG9yPT0oaGFsZjN4MyBhLCBoYWxmM3gz
IGIpIHsKKyAgICByZXR1cm4KKyAgICAgICAgYVswXVswXSA9PSBiWzBdWzBdICYmCisgICAgICAg
IGFbMF1bMV0gPT0gYlswXVsxXSAmJgorICAgICAgICBhWzBdWzJdID09IGJbMF1bMl0gJiYKKyAg
ICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFbMV1bMV0gPT0gYlsxXVsxXSAm
JgorICAgICAgICBhWzFdWzJdID09IGJbMV1bMl0gJiYKKyAgICAgICAgYVsyXVswXSA9PSBiWzJd
WzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAgICBhWzJdWzJdID09
IGJbMl1bMl0gJiYKKyAgICB0cnVlOworfQorYm9vbCBvcGVyYXRvcj09KGhhbGYzeDQgYSwgaGFs
ZjN4NCBiKSB7CisgICAgcmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAg
ICAgICBhWzBdWzFdID09IGJbMF1bMV0gJiYKKyAgICAgICAgYVswXVsyXSA9PSBiWzBdWzJdICYm
CisgICAgICAgIGFbMF1bM10gPT0gYlswXVszXSAmJgorICAgICAgICBhWzFdWzBdID09IGJbMV1b
MF0gJiYKKyAgICAgICAgYVsxXVsxXSA9PSBiWzFdWzFdICYmCisgICAgICAgIGFbMV1bMl0gPT0g
YlsxXVsyXSAmJgorICAgICAgICBhWzFdWzNdID09IGJbMV1bM10gJiYKKyAgICAgICAgYVsyXVsw
XSA9PSBiWzJdWzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAgICBh
WzJdWzJdID09IGJbMl1bMl0gJiYKKyAgICAgICAgYVsyXVszXSA9PSBiWzJdWzNdICYmCisgICAg
dHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShoYWxmNHgyIGEsIGhhbGY0eDIgYikgeworICAgIHJl
dHVybgorICAgICAgICBhWzBdWzBdID09IGJbMF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBi
WzBdWzFdICYmCisgICAgICAgIGFbMV1bMF0gPT0gYlsxXVswXSAmJgorICAgICAgICBhWzFdWzFd
ID09IGJbMV1bMV0gJiYKKyAgICAgICAgYVsyXVswXSA9PSBiWzJdWzBdICYmCisgICAgICAgIGFb
Ml1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAgICBhWzNdWzBdID09IGJbM11bMF0gJiYKKyAgICAg
ICAgYVszXVsxXSA9PSBiWzNdWzFdICYmCisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PSho
YWxmNHgzIGEsIGhhbGY0eDMgYikgeworICAgIHJldHVybgorICAgICAgICBhWzBdWzBdID09IGJb
MF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisgICAgICAgIGFbMF1bMl0g
PT0gYlswXVsyXSAmJgorICAgICAgICBhWzFdWzBdID09IGJbMV1bMF0gJiYKKyAgICAgICAgYVsx
XVsxXSA9PSBiWzFdWzFdICYmCisgICAgICAgIGFbMV1bMl0gPT0gYlsxXVsyXSAmJgorICAgICAg
ICBhWzJdWzBdID09IGJbMl1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9PSBiWzJdWzFdICYmCisg
ICAgICAgIGFbMl1bMl0gPT0gYlsyXVsyXSAmJgorICAgICAgICBhWzNdWzBdID09IGJbM11bMF0g
JiYKKyAgICAgICAgYVszXVsxXSA9PSBiWzNdWzFdICYmCisgICAgICAgIGFbM11bMl0gPT0gYlsz
XVsyXSAmJgorICAgIHRydWU7Cit9Citib29sIG9wZXJhdG9yPT0oaGFsZjR4NCBhLCBoYWxmNHg0
IGIpIHsKKyAgICByZXR1cm4KKyAgICAgICAgYVswXVswXSA9PSBiWzBdWzBdICYmCisgICAgICAg
IGFbMF1bMV0gPT0gYlswXVsxXSAmJgorICAgICAgICBhWzBdWzJdID09IGJbMF1bMl0gJiYKKyAg
ICAgICAgYVswXVszXSA9PSBiWzBdWzNdICYmCisgICAgICAgIGFbMV1bMF0gPT0gYlsxXVswXSAm
JgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICAgICAgYVsxXVsyXSA9PSBiWzFd
WzJdICYmCisgICAgICAgIGFbMV1bM10gPT0gYlsxXVszXSAmJgorICAgICAgICBhWzJdWzBdID09
IGJbMl1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9PSBiWzJdWzFdICYmCisgICAgICAgIGFbMl1b
Ml0gPT0gYlsyXVsyXSAmJgorICAgICAgICBhWzJdWzNdID09IGJbMl1bM10gJiYKKyAgICAgICAg
YVszXVswXSA9PSBiWzNdWzBdICYmCisgICAgICAgIGFbM11bMV0gPT0gYlszXVsxXSAmJgorICAg
ICAgICBhWzNdWzJdID09IGJbM11bMl0gJiYKKyAgICAgICAgYVszXVszXSA9PSBiWzNdWzNdICYm
CisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShmbG9hdDJ4MiBhLCBmbG9hdDJ4MiBiKSB7
CisgICAgcmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBd
WzFdID09IGJbMF1bMV0gJiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAg
IGFbMV1bMV0gPT0gYlsxXVsxXSAmJgorICAgIHRydWU7Cit9Citib29sIG9wZXJhdG9yPT0oZmxv
YXQyeDMgYSwgZmxvYXQyeDMgYikgeworICAgIHJldHVybgorICAgICAgICBhWzBdWzBdID09IGJb
MF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBiWzBdWzFdICYmCisgICAgICAgIGFbMF1bMl0g
PT0gYlswXVsyXSAmJgorICAgICAgICBhWzFdWzBdID09IGJbMV1bMF0gJiYKKyAgICAgICAgYVsx
XVsxXSA9PSBiWzFdWzFdICYmCisgICAgICAgIGFbMV1bMl0gPT0gYlsxXVsyXSAmJgorICAgIHRy
dWU7Cit9Citib29sIG9wZXJhdG9yPT0oZmxvYXQyeDQgYSwgZmxvYXQyeDQgYikgeworICAgIHJl
dHVybgorICAgICAgICBhWzBdWzBdID09IGJbMF1bMF0gJiYKKyAgICAgICAgYVswXVsxXSA9PSBi
WzBdWzFdICYmCisgICAgICAgIGFbMF1bMl0gPT0gYlswXVsyXSAmJgorICAgICAgICBhWzBdWzNd
ID09IGJbMF1bM10gJiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFb
MV1bMV0gPT0gYlsxXVsxXSAmJgorICAgICAgICBhWzFdWzJdID09IGJbMV1bMl0gJiYKKyAgICAg
ICAgYVsxXVszXSA9PSBiWzFdWzNdICYmCisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShm
bG9hdDN4MiBhLCBmbG9hdDN4MiBiKSB7CisgICAgcmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0g
YlswXVswXSAmJgorICAgICAgICBhWzBdWzFdID09IGJbMF1bMV0gJiYKKyAgICAgICAgYVsxXVsw
XSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFbMV1bMV0gPT0gYlsxXVsxXSAmJgorICAgICAgICBh
WzJdWzBdID09IGJbMl1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9PSBiWzJdWzFdICYmCisgICAg
dHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShmbG9hdDN4MyBhLCBmbG9hdDN4MyBiKSB7CisgICAg
cmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBdWzFdID09
IGJbMF1bMV0gJiYKKyAgICAgICAgYVswXVsyXSA9PSBiWzBdWzJdICYmCisgICAgICAgIGFbMV1b
MF0gPT0gYlsxXVswXSAmJgorICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICAgICAg
YVsxXVsyXSA9PSBiWzFdWzJdICYmCisgICAgICAgIGFbMl1bMF0gPT0gYlsyXVswXSAmJgorICAg
ICAgICBhWzJdWzFdID09IGJbMl1bMV0gJiYKKyAgICAgICAgYVsyXVsyXSA9PSBiWzJdWzJdICYm
CisgICAgdHJ1ZTsKK30KK2Jvb2wgb3BlcmF0b3I9PShmbG9hdDN4NCBhLCBmbG9hdDN4NCBiKSB7
CisgICAgcmV0dXJuCisgICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBd
WzFdID09IGJbMF1bMV0gJiYKKyAgICAgICAgYVswXVsyXSA9PSBiWzBdWzJdICYmCisgICAgICAg
IGFbMF1bM10gPT0gYlswXVszXSAmJgorICAgICAgICBhWzFdWzBdID09IGJbMV1bMF0gJiYKKyAg
ICAgICAgYVsxXVsxXSA9PSBiWzFdWzFdICYmCisgICAgICAgIGFbMV1bMl0gPT0gYlsxXVsyXSAm
JgorICAgICAgICBhWzFdWzNdID09IGJbMV1bM10gJiYKKyAgICAgICAgYVsyXVswXSA9PSBiWzJd
WzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAgICBhWzJdWzJdID09
IGJbMl1bMl0gJiYKKyAgICAgICAgYVsyXVszXSA9PSBiWzJdWzNdICYmCisgICAgdHJ1ZTsKK30K
K2Jvb2wgb3BlcmF0b3I9PShmbG9hdDR4MiBhLCBmbG9hdDR4MiBiKSB7CisgICAgcmV0dXJuCisg
ICAgICAgIGFbMF1bMF0gPT0gYlswXVswXSAmJgorICAgICAgICBhWzBdWzFdID09IGJbMF1bMV0g
JiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFbMV1bMV0gPT0gYlsx
XVsxXSAmJgorICAgICAgICBhWzJdWzBdID09IGJbMl1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9
PSBiWzJdWzFdICYmCisgICAgICAgIGFbM11bMF0gPT0gYlszXVswXSAmJgorICAgICAgICBhWzNd
WzFdID09IGJbM11bMV0gJiYKKyAgICB0cnVlOworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0NHgz
IGEsIGZsb2F0NHgzIGIpIHsKKyAgICByZXR1cm4KKyAgICAgICAgYVswXVswXSA9PSBiWzBdWzBd
ICYmCisgICAgICAgIGFbMF1bMV0gPT0gYlswXVsxXSAmJgorICAgICAgICBhWzBdWzJdID09IGJb
MF1bMl0gJiYKKyAgICAgICAgYVsxXVswXSA9PSBiWzFdWzBdICYmCisgICAgICAgIGFbMV1bMV0g
PT0gYlsxXVsxXSAmJgorICAgICAgICBhWzFdWzJdID09IGJbMV1bMl0gJiYKKyAgICAgICAgYVsy
XVswXSA9PSBiWzJdWzBdICYmCisgICAgICAgIGFbMl1bMV0gPT0gYlsyXVsxXSAmJgorICAgICAg
ICBhWzJdWzJdID09IGJbMl1bMl0gJiYKKyAgICAgICAgYVszXVswXSA9PSBiWzNdWzBdICYmCisg
ICAgICAgIGFbM11bMV0gPT0gYlszXVsxXSAmJgorICAgICAgICBhWzNdWzJdID09IGJbM11bMl0g
JiYKKyAgICB0cnVlOworfQorYm9vbCBvcGVyYXRvcj09KGZsb2F0NHg0IGEsIGZsb2F0NHg0IGIp
IHsKKyAgICByZXR1cm4KKyAgICAgICAgYVswXVswXSA9PSBiWzBdWzBdICYmCisgICAgICAgIGFb
MF1bMV0gPT0gYlswXVsxXSAmJgorICAgICAgICBhWzBdWzJdID09IGJbMF1bMl0gJiYKKyAgICAg
ICAgYVswXVszXSA9PSBiWzBdWzNdICYmCisgICAgICAgIGFbMV1bMF0gPT0gYlsxXVswXSAmJgor
ICAgICAgICBhWzFdWzFdID09IGJbMV1bMV0gJiYKKyAgICAgICAgYVsxXVsyXSA9PSBiWzFdWzJd
ICYmCisgICAgICAgIGFbMV1bM10gPT0gYlsxXVszXSAmJgorICAgICAgICBhWzJdWzBdID09IGJb
Ml1bMF0gJiYKKyAgICAgICAgYVsyXVsxXSA9PSBiWzJdWzFdICYmCisgICAgICAgIGFbMl1bMl0g
PT0gYlsyXVsyXSAmJgorICAgICAgICBhWzJdWzNdID09IGJbMl1bM10gJiYKKyAgICAgICAgYVsz
XVswXSA9PSBiWzNdWzBdICYmCisgICAgICAgIGFbM11bMV0gPT0gYlszXVsxXSAmJgorICAgICAg
ICBhWzNdWzJdID09IGJbM11bMl0gJiYKKyAgICAgICAgYVszXVszXSA9PSBiWzNdWzNdICYmCisg
ICAgdHJ1ZTsKK30KKworLyoKK2Jvb2wyIG9wZXJhdG9yLnh4KGJvb2wyIHYpIHsKKyAgICBib29s
MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnh5KGJvb2wyIHYpIHsKKyAgICBib29s
MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnh5PShib29sMiB2LCBib29sMiBjKSB7
CisgICAgYm9vbDIgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQu
eSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IueXgoYm9vbDIg
dikgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IueXg9KGJvb2wy
IHYsIGJvb2wyIGMpIHsKKyAgICBib29sMiByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54
OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVy
YXRvci55eShib29sMiB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVy
YXRvci54eChib29sMyB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVy
YXRvci54eShib29sMyB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVy
YXRvci54eT0oYm9vbDMgdiwgYm9vbDIgYykgeworICAgIGJvb2wzIHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2wyIG9wZXJhdG9yLnh6KGJvb2wzIHYpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2wzIG9wZXJhdG9yLnh6PShib29sMyB2LCBib29sMiBjKSB7CisgICAgYm9vbDMgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IueXgoYm9vbDMgdikgeworICAgIGJvb2wy
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXg9KGJvb2wzIHYsIGJvb2wyIGMpIHsK
KyAgICBib29sMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54
ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci55eShib29sMyB2
KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci55eihib29sMyB2
KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55ej0oYm9vbDMg
diwgYm9vbDIgYykgeworICAgIGJvb2wzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7
CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJh
dG9yLnp4KGJvb2wzIHYpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJh
dG9yLnp4PShib29sMyB2LCBib29sMiBjKSB7CisgICAgYm9vbDMgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDIgb3BlcmF0b3IuenkoYm9vbDMgdikgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDMgb3BlcmF0b3Iuenk9KGJvb2wzIHYsIGJvb2wyIGMpIHsKKyAgICBib29sMyByZXN1
bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci56eihib29sMyB2KSB7CisgICAgYm9vbDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci54eChib29sNCB2KSB7CisgICAgYm9vbDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci54eShib29sNCB2KSB7CisgICAgYm9vbDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eT0oYm9vbDQgdiwgYm9vbDIgYykgewor
ICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0Lnkg
PSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnh6KGJvb2w0IHYp
IHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6PShib29sNCB2
LCBib29sMiBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsK
KyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0
b3IueHcoYm9vbDQgdikgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueHc9KGJvb2w0IHYsIGJvb2wyIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sMiBvcGVyYXRvci55eChib29sNCB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci55eD0oYm9vbDQgdiwgYm9vbDIgYykgeworICAgIGJvb2w0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnl5KGJvb2w0IHYpIHsKKyAgICBib29sMiBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9yLnl6KGJvb2w0IHYpIHsKKyAgICBib29sMiBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6PShib29sNCB2LCBib29sMiBjKSB7Cisg
ICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9
IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IueXcoYm9vbDQgdikg
eworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXc9KGJvb2w0IHYs
IGJvb2wyIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54Owor
ICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRv
ci56eChib29sNCB2KSB7CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci56eD0oYm9vbDQgdiwgYm9vbDIgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2wyIG9wZXJhdG9yLnp5KGJvb2w0IHYpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnp5PShib29sNCB2LCBib29sMiBjKSB7CisgICAgYm9vbDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IuenooYm9vbDQgdikgeworICAgIGJvb2wyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDIgb3BlcmF0b3IuencoYm9vbDQgdikgeworICAgIGJvb2wyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenc9KGJvb2w0IHYsIGJvb2wyIGMpIHsKKyAg
ICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0g
Yy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci53eChib29sNCB2KSB7
CisgICAgYm9vbDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eD0oYm9vbDQgdiwg
Ym9vbDIgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7Cisg
ICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wyIG9wZXJhdG9y
Lnd5KGJvb2w0IHYpIHsKKyAgICBib29sMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnd5PShib29sNCB2LCBib29sMiBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDIgb3BlcmF0b3Iud3ooYm9vbDQgdikgeworICAgIGJvb2wyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3Iud3o9KGJvb2w0IHYsIGJvb2wyIGMpIHsKKyAgICBib29sNCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sMiBvcGVyYXRvci53dyhib29sNCB2KSB7CisgICAgYm9vbDIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54eHgoYm9vbDIgdikgeworICAgIGJvb2wzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHh5KGJv
b2wyIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2wzIG9wZXJhdG9yLnh5eChib29sMiB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54eXkoYm9vbDIgdikgeworICAg
IGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0
b3IueXh4KGJvb2wyIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnl4eShib29sMiB2KSB7CisgICAgYm9vbDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eXgoYm9vbDIg
dikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDMgb3BlcmF0b3IueXl5KGJvb2wyIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh4eChib29sMyB2KSB7CisgICAgYm9v
bDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54
eHkoYm9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDMgb3BlcmF0b3IueHh6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh5eChib29sMyB2KSB7
CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBv
cGVyYXRvci54eXkoYm9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHl6KGJvb2wzIHYpIHsKKyAgICBib29sMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh5ej0o
Ym9vbDMgdiwgYm9vbDMgYykgeworICAgIGJvb2wzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lngg
PSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh6eChib29sMyB2KSB7CisgICAgYm9vbDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54enko
Ym9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDMgb3BlcmF0b3IueHp5PShib29sMyB2LCBib29sMyBjKSB7CisgICAgYm9vbDMgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICBy
ZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHp6
KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2wzIG9wZXJhdG9yLnl4eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eHkoYm9vbDMgdikgewor
ICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3Bl
cmF0b3IueXh6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnl4ej0oYm9vbDMgdiwgYm9vbDMgYykgeworICAg
IGJvb2wzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9w
ZXJhdG9yLnl5eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eXkoYm9vbDMgdikgeworICAgIGJvb2wzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXl6KGJv
b2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2wzIG9wZXJhdG9yLnl6eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eng9KGJvb2wzIHYsIGJvb2wz
IGMpIHsKKyAgICBib29sMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sMyBvcGVyYXRvci55enkoYm9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXp6KGJvb2wzIHYpIHsKKyAg
ICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJh
dG9yLnp4eChib29sMyB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci56eHkoYm9vbDMgdikgeworICAgIGJvb2wzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenh5PShib29s
MyB2LCBib29sMyBjKSB7CisgICAgYm9vbDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMu
eDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenh6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp5eChib29s
MyB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sMyBvcGVyYXRvci56eXg9KGJvb2wzIHYsIGJvb2wzIGMpIHsKKyAgICBib29sMyByZXN1bHQg
PSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3Vs
dC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci56eXkoYm9v
bDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDMgb3BlcmF0b3Iuenl6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp6eChib29sMyB2KSB7CisgICAg
Ym9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRv
ci56enkoYm9vbDMgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenp6KGJvb2wzIHYpIHsKKyAgICBib29sMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh4eChib29sNCB2
KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
MyBvcGVyYXRvci54eHkoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHh6KGJvb2w0IHYpIHsKKyAgICBib29s
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh4
dyhib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sMyBvcGVyYXRvci54eXgoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHl5KGJvb2w0IHYpIHsK
KyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9w
ZXJhdG9yLnh5eihib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXo9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAg
ICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0g
Yy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBv
cGVyYXRvci54eXcoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl3PShib29sNCB2LCBib29sMyBjKSB7Cisg
ICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9
IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMg
b3BlcmF0b3IueHp4KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh6eShib29sNCB2KSB7CisgICAgYm9vbDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54enk9
KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54
ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci54enooYm9vbDQgdikgeworICAgIGJvb2wz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueHp3
KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnh6dz0oYm9vbDQgdiwgYm9vbDMgYykgeworICAgIGJvb2w0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAg
cmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh3
eChib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sMyBvcGVyYXRvci54d3koYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHd5PShib29sNCB2LCBi
b29sMyBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAg
ICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDMgb3BlcmF0b3IueHd6KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3ej0oYm9vbDQgdiwg
Ym9vbDMgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7Cisg
ICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2wzIG9wZXJhdG9yLnh3dyhib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eHgoYm9vbDQgdikg
eworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMg
b3BlcmF0b3IueXh5KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnl4eihib29sNCB2KSB7CisgICAgYm9vbDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHo9
KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55
ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55eHcoYm9vbDQgdikgeworICAgIGJvb2wz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh3
PShib29sNCB2LCBib29sMyBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXl4KGJvb2w0IHYpIHsKKyAgICBib29s
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnl5
eShib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sMyBvcGVyYXRvci55eXooYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXl3KGJvb2w0IHYpIHsK
KyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9w
ZXJhdG9yLnl6eChib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eng9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAg
ICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0g
Yy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBv
cGVyYXRvci55enkoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXp6KGJvb2w0IHYpIHsKKyAgICBib29sMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnl6dyhi
b29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci55enc9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJl
c3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci55d3go
Ym9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3IueXd4PShib29sNCB2LCBib29sMyBjKSB7CisgICAgYm9vbDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICBy
ZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3IueXd5
KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2wzIG9wZXJhdG9yLnl3eihib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3o9KGJvb2w0IHYsIGJv
b2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAg
IHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sMyBvcGVyYXRvci55d3coYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenh4KGJvb2w0IHYpIHsK
KyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9w
ZXJhdG9yLnp4eShib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHk9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAg
ICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0g
Yy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBv
cGVyYXRvci56eHooYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenh3KGJvb2w0IHYpIHsKKyAgICBib29sMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4dz0o
Ym9vbDQgdiwgYm9vbDMgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp5eChib29sNCB2KSB7CisgICAgYm9vbDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXg9
KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci56eXkoYm9vbDQgdikgeworICAgIGJvb2wz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenl6
KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2wzIG9wZXJhdG9yLnp5dyhib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXc9KGJvb2w0IHYsIGJv
b2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAg
IHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sMyBvcGVyYXRvci56engoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuenp5KGJvb2w0IHYpIHsK
KyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9w
ZXJhdG9yLnp6eihib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci56encoYm9vbDQgdikgeworICAgIGJvb2wzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iuend4KGJv
b2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnp3eD0oYm9vbDQgdiwgYm9vbDMgYykgeworICAgIGJvb2w0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVz
dWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnp3eShi
b29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci56d3k9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJl
c3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci56d3oo
Ym9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDMgb3BlcmF0b3Iuend3KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnd4eChib29sNCB2KSB7Cisg
ICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVy
YXRvci53eHkoYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3h5PShib29sNCB2LCBib29sMyBjKSB7CisgICAg
Ym9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMu
eTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3Bl
cmF0b3Iud3h6KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4ej0oYm9vbDQgdiwgYm9vbDMgYykgeworICAg
IGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9w
ZXJhdG9yLnd4dyhib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci53eXgoYm9vbDQgdikgeworICAgIGJvb2wzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3l4PShi
b29sNCB2LCBib29sMyBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9
IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iud3l5KGJvb2w0IHYpIHsKKyAgICBib29sMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9wZXJhdG9yLnd5eihi
b29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci53eXo9KGJvb2w0IHYsIGJvb2wzIGMpIHsKKyAgICBib29sNCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJl
c3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci53eXco
Ym9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDMgb3BlcmF0b3Iud3p4KGJvb2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd6eD0oYm9vbDQgdiwgYm9v
bDMgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAg
cmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2wzIG9wZXJhdG9yLnd6eShib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53enk9KGJvb2w0IHYsIGJv
b2wzIGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAg
IHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sMyBvcGVyYXRvci53enooYm9vbDQgdikgeworICAgIGJvb2wzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iud3p3KGJvb2w0IHYpIHsK
KyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2wzIG9w
ZXJhdG9yLnd3eChib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sMyBvcGVyYXRvci53d3koYm9vbDQgdikgeworICAgIGJvb2wzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDMgb3BlcmF0b3Iud3d6KGJv
b2w0IHYpIHsKKyAgICBib29sMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2wzIG9wZXJhdG9yLnd3dyhib29sNCB2KSB7CisgICAgYm9vbDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHh4KGJvb2wyIHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4eHkoYm9vbDIgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueHh5eChib29sMiB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54
eHl5KGJvb2wyIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5eHgoYm9vbDIgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl4eShib29sMiB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci54eXl4KGJvb2wyIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnh5eXkoYm9vbDIgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh4eChib29s
MiB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHh5KGJvb2wyIHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4eXgoYm9vbDIgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3IueXh5eShib29sMiB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXh4
KGJvb2wyIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5eHkoYm9vbDIgdikgewor
ICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl5eChib29sMiB2KSB7CisgICAgYm9vbDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sNCBvcGVyYXRvci55eXl5KGJvb2wyIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnh4eHgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHh4eShib29sMyB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHh6KGJvb2wzIHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnh4eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueHh5eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHl6KGJv
b2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4engoYm9vbDMgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3IueHh6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci54eHp6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5
eHgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl4eShib29sMyB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXh6KGJvb2wzIHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnh5eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueHl5eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXl6KGJvb2wz
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5engoYm9vbDMgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3IueHl6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci54eXp6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6eHgo
Ym9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp4eShib29sMyB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54enh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnh6eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
eHp5eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54enl6KGJvb2wzIHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6engoYm9vbDMgdikgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3IueHp6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVy
YXRvci54enp6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4eHgoYm9v
bDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh4eShib29sMyB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnl4eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh5
eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHl6KGJvb2wzIHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4engoYm9vbDMgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3IueXh6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci55eHp6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5eHgoYm9vbDMg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl4eShib29sMyB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci55eXh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnl5eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl5eShi
b29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXl6KGJvb2wzIHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueXl6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55
eXp6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6eHgoYm9vbDMgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp4eShib29sMyB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci55enh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnl6eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp5eShib29s
MyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enl6KGJvb2wzIHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3IueXp6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enp6
KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4eHgoYm9vbDMgdikgewor
ICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh4eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sNCBvcGVyYXRvci56eHh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnp4eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh5eShib29sMyB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHl6KGJvb2wzIHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnp4engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3Iuenh6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHp6KGJv
b2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5eHgoYm9vbDMgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl4eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci56eXh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5
eXgoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl5eShib29sMyB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXl6KGJvb2wzIHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnp5engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3Iuenl6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXp6KGJvb2wz
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6eHgoYm9vbDMgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3Iuenp4eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci56enh6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6eXgo
Ym9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenp5eShib29sMyB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56enl6KGJvb2wzIHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnp6engoYm9vbDMgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
enp6eShib29sMyB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56enp6KGJvb2wzIHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4eHgoYm9vbDQgdikgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3IueHh4eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVy
YXRvci54eHh6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4eHcoYm9v
bDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHh5eChib29sNCB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHl5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnh4eXooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHh5
dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eHp4KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3IueHh6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci54eHp3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh4d3goYm9vbDQg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHh3eShib29sNCB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci54eHd6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnh4d3coYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl4eChi
b29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXh5KGJvb2w0IHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5eHooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueHl4dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54
eXl4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5eXkoYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl5eihib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci54eXl3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnh5engoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl6eShib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXp6KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5encoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3IueHl6dz0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0Lnog
PSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnh5d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHl3
eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXd6KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh5d3o9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAg
ICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0g
Yy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54eXd3KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnh6eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueHp4eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54enh6KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6eHcoYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3IueHp5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci54enl5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh6eXoo
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp5dyhib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54enl3PShib29sNCB2LCBib29sNCBjKSB7CisgICAg
Ym9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp6eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sNCBvcGVyYXRvci54enp5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnh6enooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp6dyhib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54end4KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnh6d3koYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueHp3eT0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBj
Lno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnh6d3ooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHp3dyhi
b29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54d3h4KGJvb2w0IHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3eHkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueHd4eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54
d3h3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3eXgoYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHd5eShib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci54d3l6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnh3eXo9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56
OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVy
YXRvci54d3l3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3engoYm9v
bDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHd6eShib29sNCB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci54d3p5PShib29sNCB2LCBib29sNCBjKSB7CisgICAgYm9v
bDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsK
KyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3IueHd6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci54d3p3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnh3
d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueHd3eShib29sNCB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci54d3d6KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnh3d3coYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueXh4eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHh5KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4eHooYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3IueXh4dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci55eHl4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4eXko
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXh5eihib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHl3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnl4engoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
eXh6eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHp6KGJvb2w0IHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4encoYm9vbDQgdikgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3IueXh6dz0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAg
cmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnl4d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueXh3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHd6KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl4d3o9KGJvb2w0IHYsIGJvb2w0
IGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eHd3KGJvb2w0IHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueXl4eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55
eXh6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5eHcoYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl5eChib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci55eXl5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnl5eXooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl5dyhib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXp4KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3IueXl6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55eXp3
KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl5d3goYm9vbDQgdikgewor
ICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXl3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sNCBvcGVyYXRvci55eXd6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnl5d3coYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp4eChib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enh5KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnl6eHooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3IueXp4dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enh3PShi
b29sNCB2LCBib29sNCBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9
IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1
bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp5eChi
b29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55enl5KGJvb2w0IHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6eXooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3IueXp5dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55
enp4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6enkoYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp6eihib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci55enp3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnl6d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp3eD0oYm9v
bDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBj
Lng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0
LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl6d3koYm9v
bDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXp3eihib29sNCB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci55end3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnl3eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXd4
eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3h6KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl3eHo9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAg
ICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0g
Yy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3h3KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnl3eXgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3IueXd5eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3l6KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl3eXcoYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3IueXd6eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci55d3p4PShib29sNCB2LCBib29sNCBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9
IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3IueXd6eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci55d3p6
KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnl3encoYm9vbDQgdikgewor
ICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXd3eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sNCBvcGVyYXRvci55d3d5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnl3d3ooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3IueXd3dyhib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHh4KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnp4eHkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3Iuenh4eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHh3KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4eXgoYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh5eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci56eHl6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4
eXcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh5dz0oYm9vbDQgdiwg
Ym9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7Cisg
ICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LncgPSBj
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4engoYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh6eShib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci56eHp6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnp4encoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenh3eChib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHd5KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp4d3k9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29s
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55Owor
ICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci56eHd6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnp4d3coYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl4
eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXh5KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5eHooYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3Iuenl4dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci56eXh3PShib29sNCB2LCBib29sNCBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsK
KyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3Iuenl5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXl5KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5eXooYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3Iuenl5dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci56eXp4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp5enko
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl6eihib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXp3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnp5d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
enl3eD0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7Cisg
ICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnp5d3koYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenl3eihib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56eXd3KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnp6eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3Iuenp4eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56enh6KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6eHcoYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenp5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29s
NCBvcGVyYXRvci56enl5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6
eXooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuenp5dyhib29sNCB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56enp4KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnp6enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3Iuenp6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56enp3KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6d3goYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3Iuenp3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci56end6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp6d3co
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend4eChib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56d3h5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnp3eHk9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29sNCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3Vs
dC54ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citi
b29sNCBvcGVyYXRvci56d3h6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9y
Lnp3eHcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend5eChib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56d3l4PShib29sNCB2LCBib29sNCBjKSB7
CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQu
dyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend5eShib29sNCB2KSB7CisgICAgYm9v
bDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Citib29sNCBvcGVyYXRvci56d3l6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9w
ZXJhdG9yLnp3eXcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend6eChi
b29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56d3p5KGJvb2w0IHYpIHsKKyAg
ICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp3enooYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3Iuend6dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci56
d3d4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnp3d3koYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iuend3eihib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci56d3d3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnd4eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3h4eShib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eHh6KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4eHcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQg
b3BlcmF0b3Iud3h5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eHl5
KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4eXooYm9vbDQgdikgewor
ICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3h5ej0oYm9vbDQgdiwgYm9vbDQgYykgeworICAg
IGJvb2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4eXcoYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3Iud3h6eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci53eHp5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4enk9KGJvb2w0
IHYsIGJvb2w0IGMpIHsKKyAgICBib29sNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54
OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC55
ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eHp6KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4encoYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3Iud3h3eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci53eHd5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd4d3oo
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3h3dyhib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eXh4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnd5eHkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
d3l4eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eXh6PShib29sNCB2
LCBib29sNCBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsK
KyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQueiA9
IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3l4dyhib29sNCB2
KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eXl4KGJvb2w0IHYpIHsKKyAgICBib29s
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Jvb2w0IG9wZXJhdG9yLnd5eXkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3Bl
cmF0b3Iud3l5eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53eXl3KGJv
b2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd5engoYm9vbDQgdikgeworICAg
IGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3l6eD0oYm9vbDQgdiwgYm9vbDQgYykgeworICAgIGJv
b2w0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7
CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd5enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9v
bDQgb3BlcmF0b3Iud3l6eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53
eXp3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd5d3goYm9vbDQgdikg
eworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3l3eShib29sNCB2KSB7CisgICAgYm9vbDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Citib29sNCBvcGVyYXRvci53eXd6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJh
dG9yLnd5d3coYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3p4eChib29s
NCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53enh5KGJvb2w0IHYpIHsKKyAgICBi
b29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd6eHk9KGJvb2w0IHYsIGJvb2w0IGMpIHsKKyAgICBib29s
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55Owor
ICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci53enh6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnd6eHcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3p5
eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53enl4PShib29sNCB2LCBi
b29sNCBjKSB7CisgICAgYm9vbDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAg
ICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3p5eShib29sNCB2KSB7
CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53enl6KGJvb2w0IHYpIHsKKyAgICBib29sNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Jvb2w0IG9wZXJhdG9yLnd6eXcoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0
b3Iud3p6eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53enp5KGJvb2w0
IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd6enooYm9vbDQgdikgeworICAgIGJv
b2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorYm9vbDQgb3BlcmF0b3Iud3p6dyhib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBv
cGVyYXRvci53end4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd6d3ko
Ym9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3p3eihib29sNCB2KSB7Cisg
ICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53end3KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jv
b2w0IG9wZXJhdG9yLnd3eHgoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iu
d3d4eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53d3h6KGJvb2w0IHYp
IHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd3eHcoYm9vbDQgdikgeworICAgIGJvb2w0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorYm9vbDQgb3BlcmF0b3Iud3d5eChib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVy
YXRvci53d3l5KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd3eXooYm9v
bDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3d5dyhib29sNCB2KSB7CisgICAg
Ym9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Citib29sNCBvcGVyYXRvci53d3p4KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0
IG9wZXJhdG9yLnd3enkoYm9vbDQgdikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorYm9vbDQgb3BlcmF0b3Iud3d6
eihib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRvci53d3p3KGJvb2w0IHYpIHsK
KyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd3d3goYm9vbDQgdikgeworICAgIGJvb2w0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Ym9vbDQgb3BlcmF0b3Iud3d3eShib29sNCB2KSB7CisgICAgYm9vbDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citib29sNCBvcGVyYXRv
ci53d3d6KGJvb2w0IHYpIHsKKyAgICBib29sNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Jvb2w0IG9wZXJhdG9yLnd3d3coYm9vbDQg
dikgeworICAgIGJvb2w0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh4KHVjaGFyMiB2KSB7CisgICAgdWNo
YXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh5KHVjaGFyMiB2KSB7CisgICAg
dWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh5PSh1Y2hhcjIgdiwgdWNo
YXIyIGMpIHsKKyAgICB1Y2hhcjIgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAg
ICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9y
Lnl4KHVjaGFyMiB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJh
dG9yLnl4PSh1Y2hhcjIgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjIgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIyIG9wZXJhdG9yLnl5KHVjaGFyMiB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh5PSh1Y2hhcjMgdiwgdWNoYXIyIGMpIHsK
KyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQu
eSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh6KHVjaGFy
MyB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh6PSh1
Y2hhcjMgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXIyIG9wZXJhdG9yLnl4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIzIG9wZXJhdG9yLnl4PSh1Y2hhcjMgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjMgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl5KHVjaGFyMyB2KSB7CisgICAgdWNo
YXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl6KHVjaGFyMyB2KSB7CisgICAg
dWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl6PSh1Y2hhcjMgdiwgdWNo
YXIyIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAg
ICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9y
Lnp4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJh
dG9yLnp4PSh1Y2hhcjMgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIyIG9wZXJhdG9yLnp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp5PSh1Y2hhcjMgdiwgdWNoYXIyIGMpIHsKKyAgICB1
Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnp6KHVjaGFyMyB2KSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh4KHVjaGFyNCB2
KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh5KHVjaGFy
NCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5PSh1
Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXIyIG9wZXJhdG9yLnh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnh6PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnh3KHVjaGFyNCB2KSB7CisgICAgdWNo
YXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh3PSh1Y2hhcjQgdiwgdWNoYXIy
IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICBy
ZXN1bHQudyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl4
KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnl4PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXIyIG9wZXJhdG9yLnl5KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIyIG9wZXJhdG9yLnl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnl3KHVjaGFyNCB2KSB7
CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl3PSh1Y2hhcjQg
diwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMu
eDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9w
ZXJhdG9yLnp4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnp4PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQu
eSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnp6KHVjaGFy
NCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnp3KHVj
aGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3
PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIyIG9wZXJhdG9yLnd4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnd4PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9yLnd5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5PSh1Y2hhcjQgdiwgdWNo
YXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAg
ICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIyIG9wZXJhdG9y
Lnd6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnd6PSh1Y2hhcjQgdiwgdWNoYXIyIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIyIG9wZXJhdG9yLnd3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh4eCh1Y2hhcjIgdikgeworICAgIHVjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54eHkodWNo
YXIyIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjMgb3BlcmF0b3IueHl4KHVjaGFyMiB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh5eSh1Y2hhcjIgdikg
eworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
MyBvcGVyYXRvci55eHgodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueXh5KHVjaGFyMiB2KSB7CisgICAg
dWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJh
dG9yLnl5eCh1Y2hhcjIgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55eXkodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueHh4
KHVjaGFyMyB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIzIG9wZXJhdG9yLnh4eSh1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54eHoodWNoYXIz
IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjMgb3BlcmF0b3IueHl4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh5eSh1Y2hhcjMgdikgewor
ICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBv
cGVyYXRvci54eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueHl6PSh1Y2hhcjMgdiwgdWNoYXIzIGMp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1
bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIzIG9wZXJhdG9yLnh6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54enkodWNoYXIzIHYpIHsK
KyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMg
b3BlcmF0b3IueHp5PSh1Y2hhcjMgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQu
eSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh6eih1Y2hh
cjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyMyBvcGVyYXRvci55eHgodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueXh5KHVjaGFyMyB2KSB7
CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIz
IG9wZXJhdG9yLnl4eih1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55eHo9KHVjaGFyMyB2LCB1Y2hhcjMg
YykgeworICAgIHVjaGFyMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjMgb3BlcmF0b3IueXl4KHVjaGFyMyB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl5eSh1Y2hhcjMgdikg
eworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
MyBvcGVyYXRvci55eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueXp4KHVjaGFyMyB2KSB7CisgICAg
dWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJh
dG9yLnl6eD0odWNoYXIzIHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXIzIHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55enkodWNoYXIzIHYp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjMgb3BlcmF0b3IueXp6KHVjaGFyMyB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp4eCh1Y2hhcjMgdikgeworICAg
IHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVy
YXRvci56eHkodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenh5PSh1Y2hhcjMgdiwgdWNoYXIzIGMpIHsK
KyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQu
eCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXIzIG9wZXJhdG9yLnp4eih1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56eXgodWNoYXIzIHYpIHsKKyAg
ICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3Bl
cmF0b3Iuenl4PSh1Y2hhcjMgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjMgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp5eSh1Y2hhcjMg
dikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyMyBvcGVyYXRvci56eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenp4KHVjaGFyMyB2KSB7Cisg
ICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9w
ZXJhdG9yLnp6eSh1Y2hhcjMgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56enoodWNoYXIzIHYpIHsKKyAgICB1Y2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iu
eHh4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh4eSh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54eHoodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjMgb3BlcmF0b3IueHh3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh5eCh1Y2hhcjQgdikg
eworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
MyBvcGVyYXRvci54eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueHl6KHVjaGFyNCB2KSB7CisgICAg
dWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnh5ej0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54eXcodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3IueHl3PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1
bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh6eCh1
Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyMyBvcGVyYXRvci54enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp5PSh1Y2hhcjQg
diwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMu
eDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh6eih1Y2hhcjQgdikgeworICAgIHVjaGFyMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54enco
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp3PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJh
dG9yLnh3eCh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci54d3kodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd5
PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnh3eih1Y2hhcjQgdikgeworICAg
IHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci54d3o9KHVjaGFyNCB2LCB1Y2hhcjMgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3IueHd3KHVjaGFyNCB2
KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXIzIG9wZXJhdG9yLnl4eCh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55eHkodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3Bl
cmF0b3IueXh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4ej0odWNoYXI0IHYsIHVjaGFyMyBjKSB7
CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0
LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyMyBvcGVyYXRvci55eHcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh3PSh1Y2hhcjQgdiwgdWNo
YXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAg
ICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXIzIG9wZXJhdG9yLnl5eCh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55eXkodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjMgb3BlcmF0b3IueXl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl5dyh1Y2hhcjQgdikgewor
ICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBv
cGVyYXRvci55engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp4PSh1Y2hhcjQgdiwgdWNoYXIzIGMp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1
bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIzIG9wZXJhdG9yLnl6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55enoodWNoYXI0IHYpIHsK
KyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMg
b3BlcmF0b3IueXp3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6dz0odWNoYXI0IHYsIHVjaGFyMyBj
KSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVz
dWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyMyBvcGVyYXRvci55d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd4PSh1Y2hhcjQgdiwg
dWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsK
KyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXIzIG9wZXJhdG9yLnl3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci55d3oodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3IueXd6PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAg
ICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9y
Lnl3dyh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56eHgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenh5KHVj
aGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnp4eT0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRv
ci56eHoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenh3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4dz0o
dWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56eXgodWNoYXI0IHYpIHsKKyAgICB1
Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3Iuenl4PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp5eSh1Y2hhcjQgdikg
eworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
MyBvcGVyYXRvci56eXoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuenl3KHVjaGFyNCB2KSB7CisgICAg
dWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnp5dz0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56engodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjMgb3BlcmF0b3Iuenp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp6eih1Y2hhcjQgdikgeworICAg
IHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVy
YXRvci56encodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iuend4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3
eD0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnogPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci56d3kodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3Iuend5PSh1Y2hhcjQgdiwgdWNoYXIzIGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnp3eih1Y2hhcjQg
dikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyMyBvcGVyYXRvci56d3codWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iud3h4KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9w
ZXJhdG9yLnd4eSh1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eHk9KHVjaGFyNCB2LCB1Y2hhcjMgYykg
eworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3Vs
dC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjMgb3BlcmF0b3Iud3h6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd4ej0odWNoYXI0IHYsIHVj
aGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7Cisg
ICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyMyBvcGVyYXRvci53eHcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iud3l4KHVjaGFy
NCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnd5eD0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAg
cmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci53
eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iud3l6KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5ej0odWNo
YXI0IHYsIHVjaGFyMyBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lncg
PSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci53eXcodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iu
d3p4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd6eD0odWNoYXI0IHYsIHVjaGFyMyBjKSB7CisgICAg
dWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBj
Lnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBv
cGVyYXRvci53enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p5PSh1Y2hhcjQgdiwgdWNoYXIzIGMp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1
bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXIzIG9wZXJhdG9yLnd6eih1Y2hhcjQgdikgeworICAgIHVjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRvci53encodWNoYXI0IHYpIHsK
KyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjMg
b3BlcmF0b3Iud3d4KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXIzIG9wZXJhdG9yLnd3eSh1Y2hhcjQgdikgeworICAgIHVj
aGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyMyBvcGVyYXRv
ci53d3oodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjMgb3BlcmF0b3Iud3d3KHVjaGFyNCB2KSB7CisgICAgdWNoYXIzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4eHgo
dWNoYXIyIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh4eSh1Y2hhcjIgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHl4KHVjaGFyMiB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnh4eXkodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3IueHl4eCh1Y2hhcjIgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci54eXh5KHVjaGFyMiB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5eXgodWNo
YXIyIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl5eSh1Y2hhcjIgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHh4KHVjaGFyMiB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnl4eHkodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueXh5eCh1Y2hhcjIgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55
eHl5KHVjaGFyMiB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl5eHgodWNoYXIy
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl4eSh1Y2hhcjIgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXl4KHVjaGFyMiB2KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnl5eXkodWNoYXIyIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3IueHh4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHh5
KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4eHoodWNoYXIzIHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh5eCh1Y2hhcjMgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnh4eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3IueHh6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHp5KHVj
aGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4enoodWNoYXIzIHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl4eCh1Y2hhcjMgdikgeworICAgIHVjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyNCBvcGVyYXRvci54eXh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnh5eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
eHl5eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXl5KHVjaGFy
MyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5eXoodWNoYXIzIHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci54eXp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnh5enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp4
eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54enh5KHVjaGFyMyB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6eHoodWNoYXIzIHYpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp5eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci54enl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnh6eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp6eCh1
Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54enp5KHVjaGFyMyB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6enoodWNoYXIzIHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci55eHh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnl4eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh5eCh1Y2hh
cjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHl5KHVjaGFyMyB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3IueXh6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci55eHp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4
enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl4eCh1Y2hhcjMg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXh5KHVjaGFyMyB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl5eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueXl5eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci55eXl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl5eXoo
dWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl6eCh1Y2hhcjMgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXp5KHVjaGFyMyB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnl5enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3IueXp4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci55enh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6eHoodWNo
YXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp5eCh1Y2hhcjMgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55enl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnl6eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueXp6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55
enp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6enoodWNoYXIz
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenh4eCh1Y2hhcjMgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eHh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnp4eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3Iuenh5eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eHl5
KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4eXoodWNoYXIzIHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenh6eCh1Y2hhcjMgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci56eHp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnp4enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3Iuenl4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXh5KHVj
aGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5eHoodWNoYXIzIHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl5eCh1Y2hhcjMgdikgeworICAgIHVjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyNCBvcGVyYXRvci56eXl5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnp5eXoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
enl6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXp5KHVjaGFy
MyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5enoodWNoYXIzIHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp4eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci56enh5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnp6eHoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp5
eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56enl5KHVjaGFyMyB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp6eXoodWNoYXIzIHYpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp6eCh1Y2hhcjMgdikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci56enp5KHVjaGFyMyB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnp6enoodWNoYXIzIHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh4eCh1
Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHh5KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4eHoodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh4dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci54eHl4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnh4eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh5eih1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHl3KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3IueHh6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci54eHp6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4
encodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHh3eCh1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eHd5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh4d3oodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueHh3dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci54eXh4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5eHko
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl4eih1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXh3KHVjaGFyNCB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnh5eXgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3IueHl5eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci54eXl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5eXcodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl6eCh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnh5enoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueHl6dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54
eXp3PSh1Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsK
KyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnh5d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl3eSh1
Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54eXd6KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh5d3o9KHVjaGFyNCB2LCB1Y2hhcjQgYykg
eworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3Vs
dC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHl3dyh1Y2hhcjQgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54enh4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnh6eHkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3IueHp4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54enh3
KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6eXgodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp5eSh1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci54enl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnh6eXcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3IueHp5dz0odWNoYXI0IHYsIHVjaGFyNCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnkgPSBj
Lno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci54enp4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6
enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHp6eih1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54enp3KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh6d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueHp3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci54end5PSh1Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9
IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnh6d3oodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
eHp3dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54d3h4KHVjaGFy
NCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh3eHkodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci54d3h3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnh3eXgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd5
eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54d3l6KHVjaGFyNCB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh3eXo9KHVjaGFyNCB2LCB1Y2hhcjQg
YykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJl
c3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd5dyh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54d3p4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnh3enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueHd6eT0odWNoYXI0IHYsIHVjaGFyNCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0
LnogPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci54d3p6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnh3encodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd3eCh1
Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci54d3d5KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnh3d3oodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3IueHd3dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci55eHh4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnl4eHkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh4eih1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHh3KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4eXgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3IueXh5eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci55eHl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4
eXcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh6eCh1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHp5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4enoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueXh6dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci55eHp3PSh1Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9
IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnl4d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
eXh3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eHd6KHVjaGFy
NCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl4d3o9KHVjaGFyNCB2LCB1Y2hh
cjQgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAg
IHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXh3dyh1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXh4KHVjaGFyNCB2KSB7CisgICAgdWNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWNoYXI0IG9wZXJhdG9yLnl5eHkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3IueXl4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci55eXh3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl5eXgodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl5eSh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnl5eXcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueXl6eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55
eXp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl5enoodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXl6dyh1Y2hhcjQgdikgeworICAg
IHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXd4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWNoYXI0IG9wZXJhdG9yLnl5d3kodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3Bl
cmF0b3IueXl3eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55eXd3
KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6eHgodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp4eSh1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci55enh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnl6eHcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3IueXp4dz0odWNoYXI0IHYsIHVjaGFyNCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBj
Lno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci55enl4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6
eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp5eih1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55enl3KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3IueXp6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci55enp6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6enco
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp3eCh1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55end4PSh1Y2hhcjQgdiwgdWNoYXI0IGMp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1
bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl6d3kodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXp3eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci55end3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnl3eHgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd4
eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55d3h6KHVjaGFyNCB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl3eHo9KHVjaGFyNCB2LCB1Y2hhcjQg
YykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJl
c3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd4dyh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55d3l4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnl3eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3IueXd5eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55
d3l3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl3engodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd6eD0odWNoYXI0IHYsIHVjaGFy
NCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAg
cmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55d3p5KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnl3enoodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd6dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci55d3d4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnl3d3kodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3IueXd3eih1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci55d3d3KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4eHgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3Iuenh4eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci56eHh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4
eHcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenh5eCh1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eHl5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4eXoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3Iuenh5dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci56eHl3PSh1Y2hhcjQgdiwgdWNoYXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9
IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnp4engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
enh6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eHp6KHVjaGFy
NCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp4encodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenh3eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci56eHd5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnp4d3k9KHVjaGFyNCB2LCB1Y2hhcjQgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53
ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3Iuenh3eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci56eHd3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5eHgodWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl4eSh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXh6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnp5eHcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3Iuenl4dz0odWNoYXI0IHYsIHVjaGFyNCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0
LnggPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci56eXl4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnp5eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl5eih1
Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXl3KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5engodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci56eXp6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnp5encodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl3eCh1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXd4PSh1Y2hhcjQgdiwgdWNo
YXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAg
ICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp5d3kodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenl3eih1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci56eXd3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnp6eHgodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3Iuenp4eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56enh6KHVj
aGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp6eHcodWNoYXI0IHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp5eCh1Y2hhcjQgdikgeworICAgIHVjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyNCBvcGVyYXRvci56enl5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnp6eXoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iu
enp5dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56enp4KHVjaGFy
NCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp6enkodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp6eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci56enp3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnp6d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuenp3
eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56end6KHVjaGFyNCB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp6d3codWNoYXI0IHYpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuend4eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci56d3h5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnp3eHk9KHVjaGFyNCB2LCB1Y2hhcjQgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0g
Yy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3Iuend4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56
d3h3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3eXgodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuend5eD0odWNoYXI0IHYsIHVjaGFy
NCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAg
cmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56d3l5KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3eXoodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuend5dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci56d3p4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnp3enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iuend6eih1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci56d3p3KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3Iuend3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci56d3d6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnp3
d3codWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3h4eCh1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eHh5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd4eHoodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3Iud3h4dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci53eHl4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd4eXko
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3h5eih1Y2hhcjQgdikg
eworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eHl6PSh1Y2hhcjQgdiwgdWNoYXI0IGMp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1
bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd4eXcodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3h6eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci53eHp5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnd4enk9KHVjaGFyNCB2LCB1Y2hhcjQgYykgeworICAgIHVjaGFyNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56
ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hh
cjQgb3BlcmF0b3Iud3h6eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRv
ci53eHp3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd4d3godWNo
YXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3h3eSh1Y2hhcjQgdikgewor
ICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eHd6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWNoYXI0IG9wZXJhdG9yLnd4d3codWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQg
b3BlcmF0b3Iud3l4eCh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53
eXh5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5eHoodWNoYXI0
IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3l4ej0odWNoYXI0IHYsIHVjaGFy
NCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAg
cmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eXh3KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5eXgodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3l5eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci53eXl6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnd5eXcodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3l6eCh1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eXp4PSh1Y2hhcjQgdiwgdWNo
YXI0IGMpIHsKKyAgICB1Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAg
ICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueCA9IGMu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5enkodWNoYXI0IHYp
IHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3l6eih1Y2hhcjQgdikgeworICAgIHVj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VjaGFyNCBvcGVyYXRvci53eXp3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNo
YXI0IG9wZXJhdG9yLnd5d3godWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0
b3Iud3l3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53eXd6KHVj
aGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd5d3codWNoYXI0IHYpIHsK
KyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p4eCh1Y2hhcjQgdikgeworICAgIHVjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VjaGFyNCBvcGVyYXRvci53enh5KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0
IG9wZXJhdG9yLnd6eHk9KHVjaGFyNCB2LCB1Y2hhcjQgYykgeworICAgIHVjaGFyNCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3Vs
dC54ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3Iud3p4eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVy
YXRvci53enh3KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd6eXgo
dWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p5eD0odWNoYXI0IHYs
IHVjaGFyNCBjKSB7CisgICAgdWNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7
CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0Lngg
PSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53enl5KHVjaGFy
NCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd6eXoodWNoYXI0IHYpIHsKKyAg
ICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p5dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VjaGFyNCBvcGVyYXRvci53enp4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9w
ZXJhdG9yLnd6enkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p6
eih1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53enp3KHVjaGFyNCB2
KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd6d3godWNoYXI0IHYpIHsKKyAgICB1
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3p3eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vj
aGFyNCBvcGVyYXRvci53end6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJh
dG9yLnd6d3codWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3d4eCh1
Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53d3h5KHVjaGFyNCB2KSB7
CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd3eHoodWNoYXI0IHYpIHsKKyAgICB1Y2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3d4dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFy
NCBvcGVyYXRvci53d3l4KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9y
Lnd3eXkodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3d5eih1Y2hh
cjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53d3l3KHVjaGFyNCB2KSB7Cisg
ICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd3engodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1Y2hhcjQgb3BlcmF0b3Iud3d6eSh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBv
cGVyYXRvci53d3p6KHVjaGFyNCB2KSB7CisgICAgdWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd3
encodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1Y2hhcjQgb3BlcmF0b3Iud3d3eCh1Y2hhcjQg
dikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VjaGFyNCBvcGVyYXRvci53d3d5KHVjaGFyNCB2KSB7CisgICAg
dWNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWNoYXI0IG9wZXJhdG9yLnd3d3oodWNoYXI0IHYpIHsKKyAgICB1Y2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
Y2hhcjQgb3BlcmF0b3Iud3d3dyh1Y2hhcjQgdikgeworICAgIHVjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3Bl
cmF0b3IueHgodXNob3J0MiB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDIgb3BlcmF0b3IueHkodXNob3J0MiB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDIgb3BlcmF0b3IueHk9KHVzaG9ydDIgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0
MiByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnl4KHVzaG9ydDIgdikgewor
ICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnl4PSh1c2hvcnQy
IHYsIHVzaG9ydDIgYykgeworICAgIHVzaG9ydDIgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9
IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MiBvcGVyYXRvci55eSh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0MiBvcGVyYXRvci54eCh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0MiBvcGVyYXRvci54eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQyIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54eT0odXNob3J0MyB2LCB1c2hvcnQyIGMpIHsK
KyAgICB1c2hvcnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0
LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IueHoodXNo
b3J0MyB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iu
eHo9KHVzaG9ydDMgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0MyByZXN1bHQgPSB2OworICAg
IHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnl4KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl4PSh1c2hvcnQzIHYsIHVzaG9ydDIgYykgewor
ICAgIHVzaG9ydDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQu
eCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci55eSh1c2hv
cnQzIHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci55
eih1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVy
YXRvci55ej0odXNob3J0MyB2LCB1c2hvcnQyIGMpIHsKKyAgICB1c2hvcnQzIHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IuengodXNob3J0MyB2KSB7CisgICAgdXNob3J0MiBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iueng9KHVzaG9ydDMgdiwgdXNob3J0MiBj
KSB7CisgICAgdXNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJl
c3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnp5
KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJh
dG9yLnp5PSh1c2hvcnQzIHYsIHVzaG9ydDIgYykgeworICAgIHVzaG9ydDMgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0MiBvcGVyYXRvci56eih1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci54eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci54eSh1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eT0odXNob3J0NCB2
LCB1c2hvcnQyIGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBj
Lng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIg
b3BlcmF0b3IueHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3IueHo9KHVzaG9ydDQgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0NCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnh3KHVzaG9ydDQgdikgeworICAg
IHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3PSh1c2hvcnQ0IHYs
IHVzaG9ydDIgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMu
eDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBv
cGVyYXRvci55eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci55eD0odXNob3J0NCB2LCB1c2hvcnQyIGMpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IueXkodXNob3J0NCB2KSB7CisgICAg
dXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3IueXoodXNob3J0NCB2KSB7
CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXo9KHVzaG9y
dDQgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55
ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQyIG9wZXJhdG9yLnl3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnl3PSh1c2hvcnQ0IHYsIHVzaG9ydDIgYykgeworICAgIHVzaG9y
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci56eCh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eD0odXNob3J0
NCB2LCB1c2hvcnQyIGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDIgb3BlcmF0b3IuenkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iuenk9KHVzaG9ydDQgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnp6KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQyIG9wZXJhdG9yLnp3KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp3PSh1
c2hvcnQ0IHYsIHVzaG9ydDIgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0MiBvcGVyYXRvci53eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci53eD0odXNob3J0NCB2LCB1c2hvcnQyIGMpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDIgb3BlcmF0b3Iud3kodXNob3J0NCB2
KSB7CisgICAgdXNob3J0MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3k9KHVz
aG9ydDQgdiwgdXNob3J0MiBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQyIG9wZXJhdG9yLnd6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd6PSh1c2hvcnQ0IHYsIHVzaG9ydDIgYykgeworICAgIHVz
aG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MiBvcGVyYXRvci53dyh1c2hvcnQ0IHYp
IHsKKyAgICB1c2hvcnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54eHgodXNo
b3J0MiB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDMgb3BlcmF0b3IueHh5KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh5eCh1c2hv
cnQyIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0MyBvcGVyYXRvci54eXkodXNob3J0MiB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueXh4KHVzaG9y
dDIgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQzIG9wZXJhdG9yLnl4eSh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55eXgodXNob3J0
MiB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDMgb3BlcmF0b3IueXl5KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh4eCh1c2hvcnQz
IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0MyBvcGVyYXRvci54eHkodXNob3J0MyB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHh6KHVzaG9ydDMg
dikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQzIG9wZXJhdG9yLnh5eCh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54eXkodXNob3J0MyB2
KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDMgb3BlcmF0b3IueHl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh5ej0odXNob3J0MyB2
LCB1c2hvcnQzIGMpIHsKKyAgICB1c2hvcnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBj
Lng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHp4KHVzaG9ydDMgdikgeworICAgIHVzaG9y
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9y
Lnh6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54enk9KHVzaG9ydDMgdiwgdXNob3J0MyBjKSB7
CisgICAgdXNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3Vs
dC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQzIG9wZXJhdG9yLnh6eih1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55eHgodXNob3J0MyB2
KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDMgb3BlcmF0b3IueXh5KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl4eih1c2hvcnQzIHYp
IHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0MyBvcGVyYXRvci55eHo9KHVzaG9ydDMgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0MyBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAg
IHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9y
Lnl5eCh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55eXkodXNob3J0MyB2KSB7CisgICAgdXNob3J0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iu
eXl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl6eCh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55
eng9KHVzaG9ydDMgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0MyByZXN1bHQgPSB2OworICAg
IHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl6eSh1c2hvcnQzIHYp
IHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0MyBvcGVyYXRvci55enoodXNob3J0MyB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenh4KHVzaG9ydDMgdikg
eworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQzIG9wZXJhdG9yLnp4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56eHk9KHVzaG9ydDMgdiwg
dXNob3J0MyBjKSB7CisgICAgdXNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54
OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnp4eih1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56
eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenl4PSh1c2hvcnQzIHYsIHVzaG9ydDMgYykgewor
ICAgIHVzaG9ydDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQu
eSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0MyBvcGVyYXRvci56eXkodXNob3J0MyB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenl6KHVzaG9ydDMgdikg
eworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQzIG9wZXJhdG9yLnp6eCh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56enkodXNob3J0MyB2KSB7
CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDMgb3BlcmF0b3Iuenp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh4eCh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci54eHkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHh6KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnh4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54eXgodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMg
b3BlcmF0b3IueHl5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh5eih1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci54eXo9KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3Vs
dC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh5dyh1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci54eXc9KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAg
dXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0g
Yy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnh6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54enkodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueHp5PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1
bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci54enoo
dXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHp3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6dz0o
dXNob3J0NCB2LCB1c2hvcnQzIGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueHd4KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnh3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54d3k9KHVzaG9ydDQgdiwgdXNo
b3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54Owor
ICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54d3o9
KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnh3dyh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci55eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueXh5KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnl4eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHo9KHVzaG9ydDQgdiwgdXNo
b3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54Owor
ICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHc9
KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl5eCh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci55eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueXl6KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnl5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55engodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueXp4PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1
bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55enko
dXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDMgb3BlcmF0b3IueXp6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl6dyh1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci55enc9KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAg
dXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0g
Yy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnl3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55d3g9KHVzaG9ydDQgdiwgdXNo
b3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54Owor
ICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnl3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci55d3oo
dXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd6PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAg
IHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9
IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci55d3codXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenh4KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnp4eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHk9KHVzaG9ydDQgdiwgdXNo
b3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54Owor
ICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnp4eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56eHco
dXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh3PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAg
IHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9
IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci56eXgodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl4PSh1c2hvcnQ0IHYsIHVz
aG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsK
KyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0MyBvcGVyYXRvci56eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenl6
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnp5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXc9
KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnp6eCh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci56enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuenp6KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnp6dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56d3godXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3Iuend4PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1
bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci56d3ko
dXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuend5PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAg
IHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9
IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci56d3oodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iuend3KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnd4eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci53eHkodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3Iud3h5PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1
bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci53eHoo
dXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3h6PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAg
IHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9
IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci53eHcodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iud3l4KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnd5eD0odXNob3J0NCB2LCB1c2hvcnQzIGMpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVz
dWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iud3l5
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnd5eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eXo9
KHVzaG9ydDQgdiwgdXNob3J0MyBjKSB7CisgICAgdXNob3J0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnd5dyh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci53engodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p4PSh1c2hvcnQ0IHYsIHVz
aG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsK
KyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0MyBvcGVyYXRvci53enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p5
PSh1c2hvcnQ0IHYsIHVzaG9ydDMgYykgeworICAgIHVzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0MyBvcGVyYXRvci53enoodXNob3J0NCB2KSB7
CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDMgb3BlcmF0b3Iud3p3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQzIG9wZXJhdG9yLnd3eCh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
MyBvcGVyYXRvci53d3kodXNob3J0NCB2KSB7CisgICAgdXNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDMgb3BlcmF0b3Iud3d6KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQz
IG9wZXJhdG9yLnd3dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eHh4KHVzaG9ydDIgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4eHkodXNob3J0MiB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh5eCh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci54eHl5KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnh5eHgodXNob3J0MiB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueHl4eSh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXl4
KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5eXkodXNob3J0
MiB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh4eCh1c2hvcnQyIHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHh5KHVzaG9ydDIgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4eXgodXNob3J0MiB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueXh5eSh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci55eXh4KHVzaG9ydDIgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnl5eHkodXNob3J0MiB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl5
eCh1c2hvcnQyIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXl5KHVzaG9y
dDIgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4eHgodXNob3J0MyB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh4eSh1c2hvcnQzIHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci54eHh6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnh4eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IueHh5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci54eHl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4
engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh6eSh1c2hv
cnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eHp6KHVzaG9ydDMgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5eHgodXNob3J0MyB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci54eXh6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnh5eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3IueHl5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54
eXl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5engodXNo
b3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl6eSh1c2hvcnQzIHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXp6KHVzaG9ydDMgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3IueHp4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci54enh6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnh6eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
eHp5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54enl6KHVz
aG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6engodXNob3J0MyB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp6eSh1c2hvcnQzIHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54enp6KHVzaG9ydDMgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3IueXh4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci55eHh6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnl4eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh5eSh1
c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHl6KHVzaG9ydDMg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4engodXNob3J0MyB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci55eHp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnl5eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueXl4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci55eXh6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5eXgo
dXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl5eSh1c2hvcnQz
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXl6KHVzaG9ydDMgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5engodXNob3J0MyB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci55eXp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnl6eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueXp4eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55enh6
KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6eXgodXNob3J0
MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp5eSh1c2hvcnQzIHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55enl6KHVzaG9ydDMgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueXp6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci55enp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnp4eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh4
eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHh6KHVzaG9y
dDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4eXgodXNob3J0MyB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh5eSh1c2hvcnQzIHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnp4engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3Iuenh6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci56eHp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5
eHgodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl4eSh1c2hv
cnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXh6KHVzaG9ydDMgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5eXgodXNob3J0MyB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci56eXl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnp5engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3Iuenl6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56
eXp6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6eHgodXNo
b3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp4eSh1c2hvcnQzIHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56enh6KHVzaG9ydDMgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6eXgodXNob3J0MyB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3Iuenp5eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci56enl6KHVzaG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnp6engodXNob3J0MyB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
enp6eSh1c2hvcnQzIHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56enp6KHVz
aG9ydDMgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4eHgodXNob3J0NCB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh4eSh1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eHh6KHVzaG9ydDQgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4eHcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3IueHh5eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci54eHl5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnh4eXoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh5dyh1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eHp4KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4enkodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHh6eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci54eHp3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnh4d3godXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueHh3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci54eHd6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh4d3co
dXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl4eCh1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXh5KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5eHoodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci54eXl4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnh5eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueHl5eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXl3
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5engodXNob3J0
NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl6eSh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54eXp6KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh5encodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueHl6dz0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7
CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHl3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci54eXd5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnh5d3oodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3IueHl3ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0
LncgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3IueHl3dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci54enh4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnh6eHkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp4eih1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54enh3KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6eXgodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp5eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci54enl6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnh6eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueHp5dz0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVz
dWx0LnkgPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueHp6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci54enp5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnh6enoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp6
dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54end4KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh6d3kodXNob3J0NCB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp3eT0odXNob3J0NCB2LCB1c2hvcnQ0
IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAg
cmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHp3eih1c2hvcnQ0IHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54end3KHVzaG9ydDQgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3IueHd4eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci54d3h6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnh3eHcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
eHd5eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54d3l5KHVz
aG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3eXoodXNob3J0NCB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHd5ej0odXNob3J0NCB2LCB1c2hv
cnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7Cisg
ICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnogPSBj
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHd5dyh1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci54d3p4KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3enkodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHd6eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0Lncg
PSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueHd6eih1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci54d3p3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnh3d3godXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IueHd3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci54d3d6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnh3
d3codXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh4eCh1c2hv
cnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHh5KHVzaG9ydDQgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4eHoodXNob3J0NCB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci55eHl4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnl4eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3IueXh5eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55
eHl3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4engodXNo
b3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh6eSh1c2hvcnQ0IHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eHp6KHVzaG9ydDQgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl4encodXNob3J0NCB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3IueXh6dz0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXh3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci55eHd5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnl4d3oodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueXh3ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVz
dWx0LncgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3IueXh3dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci55eXh4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnl5eHkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl4
eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXh3KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5eXgodXNob3J0NCB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl5eSh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXl6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnl5eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IueXl6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci55eXp5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5
enoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl6dyh1c2hv
cnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55eXd4KHVzaG9ydDQgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl5d3kodXNob3J0NCB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXl3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci55eXd3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnl6eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3IueXp4eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55
enh6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6eHcodXNo
b3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp4dz0odXNob3J0NCB2
LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBj
Lng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0
LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp5eCh1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55enl5KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6eXoodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci55enp4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnl6enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3IueXp6eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci55enp3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6d3go
dXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp3eD0odXNob3J0
NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnkg
PSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVz
dWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXp3
eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55end6KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl6d3codXNob3J0NCB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd4eCh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci55d3h5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnl3eHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3IueXd4ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAg
cmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3IueXd4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci55d3l4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnl3eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
eXd5eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55d3l3KHVz
aG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl3engodXNob3J0NCB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd6eD0odXNob3J0NCB2LCB1c2hv
cnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7Cisg
ICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnggPSBj
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd6eSh1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci55d3p6KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnl3encodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3IueXd3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci55d3d5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnl3d3oodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3IueXd3dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHh4
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4eHkodXNob3J0
NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh4eih1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHh3KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4eXgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iuenh5eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci56eHl6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnp4eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh5
dz0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7
CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3Iuenh6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56
eHp5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4enoodXNo
b3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh6dyh1c2hvcnQ0IHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eHd4KHVzaG9ydDQgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp4d3kodXNob3J0NCB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3Iuenh3eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenh3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci56eHd3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnp5eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3Iuenl4eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci56eXh6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5eHco
dXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl4dz0odXNob3J0
NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVz
dWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl5
eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXl5KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5eXoodXNob3J0NCB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl5dyh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXp4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnp5enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3Iuenl6eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci56eXp3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5
d3godXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenl3eD0odXNo
b3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAg
cmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
enl3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56eXd6KHVz
aG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp5d3codXNob3J0NCB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp4eCh1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56enh5KHVzaG9ydDQgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6eHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3Iuenp4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci56enl4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnp6eXkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp5eih1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56enl3KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6engodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp6eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci56enp6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnp6encodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3Iuenp3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci56end5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp6d3oo
dXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuenp3dyh1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56d3h4KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp3eHkodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuend4eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0Lncg
PSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuend4eih1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci56d3h3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnp3eXgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3Iuend5eD0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAg
cmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3Iuend5eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci56d3l6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnp3eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
end6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56d3p5KHVz
aG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp3enoodXNob3J0NCB2
KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iuend6dyh1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci56d3d4KHVzaG9ydDQgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnp3d3kodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3Iuend3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBv
cGVyYXRvci56d3d3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9y
Lnd4eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3h4eSh1
c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eHh6KHVzaG9ydDQg
dikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd4eHcodXNob3J0NCB2KSB7Cisg
ICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3h5eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordXNob3J0NCBvcGVyYXRvci53eHl5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
c2hvcnQ0IG9wZXJhdG9yLnd4eXoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3Iud3h5ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVz
dWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iud3h5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci53eHp4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnd4enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3h6
eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7
CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3Bl
cmF0b3Iud3h6eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53
eHp3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd4d3godXNo
b3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3h3eSh1c2hvcnQ0IHYp
IHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eHd6KHVzaG9ydDQgdikgeworICAg
IHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd4d3codXNob3J0NCB2KSB7CisgICAgdXNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VzaG9ydDQgb3BlcmF0b3Iud3l4eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNo
b3J0NCBvcGVyYXRvci53eXh5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9w
ZXJhdG9yLnd5eHoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iu
d3l4ej0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBj
Lno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQg
b3BlcmF0b3Iud3l4dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRv
ci53eXl4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd5eXko
dXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3l5eih1c2hvcnQ0
IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53eXl3KHVzaG9ydDQgdikgewor
ICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd5engodXNob3J0NCB2KSB7CisgICAgdXNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3l6eD0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0Lnkg
PSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3l6eSh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci53eXp6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnd5encodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3Iud3l3eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci53eXd5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd5
d3oodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3l3dyh1c2hv
cnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53enh4KHVzaG9ydDQgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd6eHkodXNob3J0NCB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p4eT0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0
LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p4eih1c2hvcnQ0IHYpIHsKKyAg
ICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53enh3KHVzaG9ydDQgdikgeworICAgIHVzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd6eXgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vz
aG9ydDQgb3BlcmF0b3Iud3p5eD0odXNob3J0NCB2LCB1c2hvcnQ0IGMpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7Cisg
ICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p5eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dXNob3J0NCBvcGVyYXRvci53enl6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0
IG9wZXJhdG9yLnd6eXcodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0
b3Iud3p6eCh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53enp5
KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd6enoodXNob3J0
NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3p6dyh1c2hvcnQ0IHYpIHsK
KyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53end4KHVzaG9ydDQgdikgeworICAgIHVz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd6d3kodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VzaG9ydDQgb3BlcmF0b3Iud3p3eih1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0
NCBvcGVyYXRvci53end3KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJh
dG9yLnd3eHgodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3d4
eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53d3h6KHVzaG9y
dDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd3eHcodXNob3J0NCB2KSB7
CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3d5eCh1c2hvcnQ0IHYpIHsKKyAgICB1
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordXNob3J0NCBvcGVyYXRvci53d3l5KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1c2hvcnQ0IG9wZXJhdG9yLnd3eXoodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9y
dDQgb3BlcmF0b3Iud3d5dyh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVy
YXRvci53d3p4KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd3
enkodXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3d6eih1c2hv
cnQ0IHYpIHsKKyAgICB1c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordXNob3J0NCBvcGVyYXRvci53d3p3KHVzaG9ydDQgdikg
eworICAgIHVzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1c2hvcnQ0IG9wZXJhdG9yLnd3d3godXNob3J0NCB2KSB7CisgICAg
dXNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VzaG9ydDQgb3BlcmF0b3Iud3d3eSh1c2hvcnQ0IHYpIHsKKyAgICB1c2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordXNob3J0NCBvcGVyYXRvci53d3d6KHVzaG9ydDQgdikgeworICAgIHVzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1c2hv
cnQ0IG9wZXJhdG9yLnd3d3codXNob3J0NCB2KSB7CisgICAgdXNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJh
dG9yLnh4KHVpbnQyIHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJh
dG9yLnh5KHVpbnQyIHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJh
dG9yLnh5PSh1aW50MiB2LCB1aW50MiBjKSB7CisgICAgdWludDIgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDIgb3BlcmF0b3IueXgodWludDIgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDIgb3BlcmF0b3IueXg9KHVpbnQyIHYsIHVpbnQyIGMpIHsKKyAgICB1aW50MiByZXN1
bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci55eSh1aW50MiB2KSB7CisgICAgdWludDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci54eCh1aW50MyB2KSB7CisgICAgdWludDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci54eSh1aW50MyB2KSB7CisgICAgdWludDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eT0odWludDMgdiwgdWludDIgYykgewor
ICAgIHVpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0Lnkg
PSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnh6KHVpbnQzIHYp
IHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh6PSh1aW50MyB2
LCB1aW50MiBjKSB7CisgICAgdWludDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsK
KyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0
b3IueXgodWludDMgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0
b3IueXg9KHVpbnQzIHYsIHVpbnQyIGMpIHsKKyAgICB1aW50MyByZXN1bHQgPSB2OworICAgIHJl
c3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50MiBvcGVyYXRvci55eSh1aW50MyB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50MiBvcGVyYXRvci55eih1aW50MyB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50MyBvcGVyYXRvci55ej0odWludDMgdiwgdWludDIgYykgeworICAgIHVpbnQzIHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnp4KHVpbnQzIHYpIHsKKyAgICB1aW50MiBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp4PSh1aW50MyB2LCB1aW50MiBjKSB7Cisg
ICAgdWludDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9
IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IuenkodWludDMgdikg
eworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuenk9KHVpbnQzIHYs
IHVpbnQyIGMpIHsKKyAgICB1aW50MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54Owor
ICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRv
ci56eih1aW50MyB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRv
ci54eCh1aW50NCB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRv
ci54eSh1aW50NCB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci54eT0odWludDQgdiwgdWludDIgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQyIG9wZXJhdG9yLnh6KHVpbnQ0IHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnh6PSh1aW50NCB2LCB1aW50MiBjKSB7CisgICAgdWludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3IueHcodWludDQgdikgeworICAgIHVpbnQyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHc9KHVpbnQ0IHYsIHVpbnQyIGMpIHsKKyAg
ICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0g
Yy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci55eCh1aW50NCB2KSB7
CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eD0odWludDQgdiwg
dWludDIgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7Cisg
ICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9y
Lnl5KHVpbnQ0IHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9y
Lnl6KHVpbnQ0IHYpIHsKKyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnl6PSh1aW50NCB2LCB1aW50MiBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDIgb3BlcmF0b3IueXcodWludDQgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IueXc9KHVpbnQ0IHYsIHVpbnQyIGMpIHsKKyAgICB1aW50NCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci56eCh1aW50NCB2KSB7CisgICAgdWludDIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eD0odWludDQgdiwgdWludDIgYykgeworICAg
IHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBj
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnp5KHVpbnQ0IHYpIHsK
KyAgICB1aW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5PSh1aW50NCB2LCB1
aW50MiBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAg
ICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3Iu
enoodWludDQgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3Iu
encodWludDQgdikgeworICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
enc9KHVpbnQ0IHYsIHVpbnQyIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50MiBvcGVyYXRvci53eCh1aW50NCB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci53eD0odWludDQgdiwgdWludDIgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQyIG9wZXJhdG9yLnd5KHVpbnQ0IHYpIHsKKyAgICB1aW50MiByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5PSh1aW50NCB2LCB1aW50MiBjKSB7CisgICAg
dWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDIgb3BlcmF0b3Iud3oodWludDQgdikgewor
ICAgIHVpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3o9KHVpbnQ0IHYsIHVp
bnQyIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAg
IHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MiBvcGVyYXRvci53
dyh1aW50NCB2KSB7CisgICAgdWludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54
eHgodWludDIgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDMgb3BlcmF0b3IueHh5KHVpbnQyIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh5eCh1aW50MiB2KSB7
CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBv
cGVyYXRvci54eXkodWludDIgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXh4KHVpbnQyIHYpIHsKKyAgICB1aW50MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl4eSh1
aW50MiB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50MyBvcGVyYXRvci55eXgodWludDIgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXl5KHVpbnQyIHYpIHsKKyAg
ICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJh
dG9yLnh4eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eHkodWludDMgdikgeworICAgIHVpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHh6KHVpbnQz
IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQzIG9wZXJhdG9yLnh5eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eXkodWludDMgdikgeworICAgIHVp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iu
eHl6KHVpbnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQzIG9wZXJhdG9yLnh5ej0odWludDMgdiwgdWludDMgYykgeworICAgIHVpbnQz
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7Cisg
ICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9y
Lnh6eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54enkodWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHp5PSh1aW50MyB2
LCB1aW50MyBjKSB7CisgICAgdWludDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsK
KyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDMgb3BlcmF0b3IueHp6KHVpbnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl4eCh1aW50MyB2
KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
MyBvcGVyYXRvci55eHkodWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXh6KHVpbnQzIHYpIHsKKyAgICB1aW50
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl4
ej0odWludDMgdiwgdWludDMgYykgeworICAgIHVpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl5eCh1aW50MyB2KSB7CisgICAgdWlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55
eXkodWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDMgb3BlcmF0b3IueXl6KHVpbnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl6eCh1aW50MyB2KSB7
CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBv
cGVyYXRvci55eng9KHVpbnQzIHYsIHVpbnQzIGMpIHsKKyAgICB1aW50MyByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55enkodWludDMgdikg
eworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMg
b3BlcmF0b3IueXp6KHVpbnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp4eCh1aW50MyB2KSB7CisgICAgdWludDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56eHko
dWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDMgb3BlcmF0b3Iuenh5PSh1aW50MyB2LCB1aW50MyBjKSB7CisgICAgdWludDMgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICBy
ZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuenh6
KHVpbnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQzIG9wZXJhdG9yLnp5eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56eXg9KHVpbnQzIHYsIHVp
bnQzIGMpIHsKKyAgICB1aW50MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAg
IHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50MyBvcGVyYXRvci56eXkodWludDMgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuenl6KHVpbnQzIHYpIHsK
KyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9w
ZXJhdG9yLnp6eCh1aW50MyB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56enkodWludDMgdikgeworICAgIHVpbnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuenp6KHVp
bnQzIHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQzIG9wZXJhdG9yLnh4eCh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eHkodWludDQgdikgeworICAg
IHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0
b3IueHh6KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh4dyh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eXgodWludDQg
dikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDMgb3BlcmF0b3IueHl5KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh5eih1aW50NCB2KSB7CisgICAgdWlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54
eXo9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54eXcodWludDQgdikgeworICAgIHVp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eHl3PSh1aW50NCB2LCB1aW50MyBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHp4KHVpbnQ0IHYpIHsKKyAgICB1
aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9y
Lnh6eSh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enk9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55Owor
ICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRv
ci54enoodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDMgb3BlcmF0b3IueHp3KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6dz0odWludDQg
diwgdWludDMgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7
CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh3eCh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci54d3kodWludDQg
dikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3IueHd5PSh1aW50NCB2LCB1aW50MyBjKSB7CisgICAgdWludDQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQu
eSA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueHd6KHVpbnQ0
IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnh3ej0odWludDQgdiwgdWludDMgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0
LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnh3dyh1aW50
NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50MyBvcGVyYXRvci55eHgodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3IueXh5KHVpbnQ0IHYpIHsKKyAgICB1
aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9y
Lnl4eih1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eHo9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55Owor
ICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRv
ci55eHcodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueXh3PSh1aW50NCB2LCB1aW50MyBjKSB7CisgICAgdWlu
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0
b3IueXl4KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl5eSh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55eXoodWludDQg
dikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDMgb3BlcmF0b3IueXl3KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl6eCh1aW50NCB2KSB7CisgICAgdWlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55
eng9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55enkodWludDQgdikgeworICAgIHVp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iu
eXp6KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQzIG9wZXJhdG9yLnl6dyh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55enc9KHVpbnQ0IHYs
IHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54Owor
ICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55d3godWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXd4PSh1aW50NCB2
LCB1aW50MyBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsK
KyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDMgb3BlcmF0b3IueXd5KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnl3eih1aW50NCB2
KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci55d3o9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci55d3codWludDQg
dikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDMgb3BlcmF0b3Iuenh4KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp4eSh1aW50NCB2KSB7CisgICAgdWlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56
eHk9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56eHoodWludDQgdikgeworICAgIHVp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iu
enh3KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4dz0odWludDQgdiwgdWludDMgYykgeworICAgIHVpbnQ0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9y
Lnp5eCh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXg9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRv
ci56eXkodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDMgb3BlcmF0b3Iuenl6KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp5dyh1aW50NCB2
KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci56eXc9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56engodWludDQg
dikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDMgb3BlcmF0b3Iuenp5KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnp6eih1aW50NCB2KSB7CisgICAgdWlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56
encodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDMgb3BlcmF0b3Iuend4KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3eD0odWludDQgdiwg
dWludDMgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7Cisg
ICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQzIG9wZXJhdG9yLnp3eSh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3k9KHVpbnQ0IHYs
IHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54Owor
ICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50MyBvcGVyYXRvci56d3oodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iuend3KHVpbnQ0IHYp
IHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQz
IG9wZXJhdG9yLnd4eCh1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci53eHkodWludDQgdikgeworICAgIHVpbnQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h5
PSh1aW50NCB2LCB1aW50MyBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
dyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iud3h6KHVpbnQ0IHYpIHsKKyAgICB1aW50
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4
ej0odWludDQgdiwgdWludDMgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnd4dyh1aW50NCB2KSB7CisgICAgdWlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci53
eXgodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3Iud3l4PSh1aW50NCB2LCB1aW50MyBjKSB7CisgICAgdWludDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAg
ICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iu
d3l5KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQzIG9wZXJhdG9yLnd5eih1aW50NCB2KSB7CisgICAgdWludDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eXo9KHVpbnQ0IHYs
IHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54Owor
ICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50MyBvcGVyYXRvci53eXcodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDMgb3BlcmF0b3Iud3p4KHVpbnQ0IHYp
IHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnd6eD0odWludDQgdiwgdWludDMgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0Lngg
PSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnd6eSh1aW50NCB2
KSB7CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci53enk9KHVpbnQ0IHYsIHVpbnQzIGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci53enoodWludDQg
dikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDMgb3BlcmF0b3Iud3p3KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnd3eCh1aW50NCB2KSB7CisgICAgdWlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50MyBvcGVyYXRvci53
d3kodWludDQgdikgeworICAgIHVpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDMgb3BlcmF0b3Iud3d6KHVpbnQ0IHYpIHsKKyAgICB1aW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQzIG9wZXJhdG9yLnd3dyh1aW50NCB2KSB7
CisgICAgdWludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci54eHh4KHVpbnQyIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4eHko
dWludDIgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh5eCh1aW50MiB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHl5KHVpbnQyIHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnh5eHgodWludDIgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eHl4eSh1aW50MiB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXl4KHVpbnQyIHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5eXkodWludDIgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueXh4eCh1aW50MiB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci55eHh5KHVpbnQyIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4eXgodWlu
dDIgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh5eSh1aW50MiB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXh4KHVpbnQyIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnl5eHkodWludDIgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl5
eCh1aW50MiB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXl5KHVpbnQyIHYpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4eHgodWludDMgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IueHh4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci54eHh6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4eXgodWludDMg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh5eSh1aW50MyB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci54eHl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnh4engodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh6eSh1
aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHp6KHVpbnQzIHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3IueHl4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54
eXh6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5eXgodWludDMgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl5eSh1aW50MyB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci54eXl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnh5engodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl6eSh1aW50
MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXp6KHVpbnQzIHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3IueHp4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enh6
KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6eXgodWludDMgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci54enl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnh6engodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp6eSh1aW50MyB2
KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enp6KHVpbnQzIHYpIHsKKyAgICB1aW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnl4eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3IueXh4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eHh6KHVp
bnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4eXgodWludDMgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueXh5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci55eHl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4
engodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh6eSh1aW50MyB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eHp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnl5eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3IueXl4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXh6KHVpbnQz
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5eXgodWludDMgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3IueXl5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci55eXl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5engo
dWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl6eSh1aW50MyB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnl6eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eXp4eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55enh6KHVpbnQzIHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6eXgodWludDMgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueXp5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci55enl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6engodWlu
dDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXp6eSh1aW50MyB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55enp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnp4eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenh4
eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHh6KHVpbnQzIHYpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4eXgodWludDMgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3Iuenh5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci56eHl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4engodWludDMg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenh6eSh1aW50MyB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci56eHp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnp5eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenl4eSh1
aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXh6KHVpbnQzIHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5eXgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3Iuenl5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56
eXl6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5engodWludDMgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenl6eSh1aW50MyB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci56eXp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnp6eHgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp4eSh1aW50
MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56enh6KHVpbnQzIHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6eXgodWludDMgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3Iuenp5eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56enl6
KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6engodWludDMgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp6eSh1aW50MyB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci56enp6KHVpbnQzIHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnh4eHgodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh4eSh1aW50NCB2
KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHh6KHVpbnQ0IHYpIHsKKyAgICB1aW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnh4eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3IueHh5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHl5KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4eXoodWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueHh5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci54eHp4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4
enkodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHh6eih1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHp3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnh4d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3IueHh3eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eHd6KHVpbnQ0
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh4d3codWludDQgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3IueHl4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci54eXh5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5eHoo
dWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl4dyh1aW50NCB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXl4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnh5eXkodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eHl5eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54eXl3KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5engodWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueHl6eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci54eXp6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5encodWlu
dDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHl6dz0odWludDQgdiwgdWludDQg
YykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVz
dWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5d3godWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueHl3eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci54eXd6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh5
d3o9KHVpbnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAg
IHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54
eXd3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6eHgodWludDQgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp4eSh1aW50NCB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci54enh6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnh6eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp5eCh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enl5KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3IueHp5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enl3
PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICBy
ZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp6
eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54enp5KHVpbnQ0IHYpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6enoodWludDQgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IueHp6dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci54end4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6d3kodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHp3eT0odWludDQgdiwgdWludDQgYykg
eworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0
LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh6d3oodWludDQgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3IueHp3dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci54d3h4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh3eHko
dWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHd4eih1aW50NCB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3h3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnh3eXgodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eHd5eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3l6KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh3eXo9KHVpbnQ0IHYsIHVpbnQ0IGMpIHsK
KyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53
ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3l3KHVpbnQ0IHYpIHsKKyAgICB1aW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnh3engodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3IueHd6eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3p5PSh1
aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9
IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1
bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueHd6eih1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54d3p3KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh3d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3IueHd3eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci54
d3d6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnh3d3codWludDQgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh4eCh1aW50NCB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci55eHh5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnl4eHoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh4dyh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eHl4KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4eXkodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3IueXh5eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eHl3
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4engodWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh6eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci55eHp6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnl4encodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh6dz0odWludDQg
diwgdWludDQgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7
CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0Lncg
PSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl4d3godWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXh3eSh1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci55eHd6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnl4d3o9KHVpbnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0g
Yy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci55eHd3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5eHgo
dWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl4eSh1aW50NCB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXh6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnl5eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eXl5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXl5KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5eXoodWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueXl5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci55eXp4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5enkodWlu
dDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl6eih1aW50NCB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXp3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnl5d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXl3
eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55eXd6KHVpbnQ0IHYpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl5d3codWludDQgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IueXp4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci55enh5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6eHoodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXp4dyh1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci55enh3PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAg
ICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3IueXp5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci55enl5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6eXoo
dWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXp5dyh1aW50NCB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55enp4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnl6enkodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
eXp6eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55enp3KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl6d3godWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3IueXp3eD0odWludDQgdiwgdWludDQgYykgeworICAgIHVpbnQ0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAg
cmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnl6d3kodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3IueXp3eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55end3KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl3eHgodWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3IueXd4eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci55d3h6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl3
eHo9KHVpbnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAg
IHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55
d3h3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl3eXgodWludDQgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXd5eSh1aW50NCB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci55d3l6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnl3eXcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXd6eCh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55d3p4PSh1aW50NCB2LCB1aW50NCBj
KSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1
bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXd6eSh1aW50NCB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55d3p6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnl3encodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3IueXd3
eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci55d3d5KHVpbnQ0IHYpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnl3d3oodWludDQgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3IueXd3dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci56eHh4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4eHkodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenh4eih1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci56eHh3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnp4eXgodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenh5eSh1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHl6KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4eXcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3Iuenh5dz0odWludDQgdiwgdWludDQgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0
LnkgPSBjLno7CisgICAgcmVzdWx0LncgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnp4engodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
enh6eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHp6KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4encodWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3Iuenh3eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci56eHd5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4d3k9KHVp
bnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0g
Yy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3Vs
dC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eHd6KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp4d3codWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3Iuenl4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci56eXh5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5
eHoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenl4dyh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXh3PSh1aW50NCB2LCB1aW50NCBjKSB7Cisg
ICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9
IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenl5eCh1aW50NCB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci56eXl5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnp5eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenl5dyh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXp4KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5enkodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3Iuenl6eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56eXp3
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5d3godWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenl3eD0odWludDQgdiwgdWludDQgYykgeworICAg
IHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBj
Lnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnggPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp5d3kodWludDQgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3Iuenl3eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci56eXd3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6eHgodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp4eSh1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci56enh6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnp6eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp5eCh1
aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56enl5KHVpbnQ0IHYpIHsKKyAg
ICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3Iuenp5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56
enp4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6enkodWludDQgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp6eih1aW50NCB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci56enp3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnp6d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuenp3eSh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56end6KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp6d3codWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3Iuend4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3h5
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3eHk9KHVpbnQ0IHYsIHVp
bnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAg
IHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53
OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3h6KHVpbnQ0IHYpIHsK
KyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3eHcodWludDQgdikgeworICAgIHVpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3Iuend5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci56d3l4PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsK
KyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0
b3Iuend5eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3l6KHVpbnQ0
IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3eXcodWludDQgdikgeworICAgIHVp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQordWludDQgb3BlcmF0b3Iuend6eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBv
cGVyYXRvci56d3p5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnp3enoo
dWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iuend6dyh1aW50NCB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3d4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnp3d3kodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
end3eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci56d3d3KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4eHgodWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3Iud3h4eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci53eHh6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4eHcodWlu
dDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h5eCh1aW50NCB2KSB7CisgICAg
dWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eHl5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0
IG9wZXJhdG9yLnd4eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h5
ej0odWludDQgdiwgdWludDQgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAg
cmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4
eXcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h6eCh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eHp5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnd4enk9KHVpbnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJl
c3VsdC56ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci53eHp6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnd4encodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3h3eCh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eHd5KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd4d3oodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3Iud3h3dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eXh4
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5eHkodWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3l4eih1aW50NCB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci53eXh6PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1
bHQueCA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
dWludDQgb3BlcmF0b3Iud3l4dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRv
ci53eXl4KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5eXkodWludDQg
dikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3l5eih1aW50NCB2KSB7CisgICAgdWlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9Cit1aW50NCBvcGVyYXRvci53eXl3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9w
ZXJhdG9yLnd5engodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3l6eD0o
dWludDQgdiwgdWludDQgYykgeworICAgIHVpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lncg
PSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVz
dWx0LnggPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5enko
dWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3l6eih1aW50NCB2KSB7Cisg
ICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eXp3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Vp
bnQ0IG9wZXJhdG9yLnd5d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iu
d3l3eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53eXd6KHVpbnQ0IHYp
IHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd5d3codWludDQgdikgeworICAgIHVpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQordWludDQgb3BlcmF0b3Iud3p4eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVy
YXRvci53enh5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd6eHk9KHVp
bnQ0IHYsIHVpbnQ0IGMpIHsKKyAgICB1aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0g
Yy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3Vs
dC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53enh6KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd6eHcodWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3Iud3p5eCh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci53enl4PSh1aW50NCB2LCB1aW50NCBjKSB7CisgICAgdWludDQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQu
eSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWlu
dDQgb3BlcmF0b3Iud3p5eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53
enl6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd6eXcodWludDQgdikg
eworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3p6eCh1aW50NCB2KSB7CisgICAgdWludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
Cit1aW50NCBvcGVyYXRvci53enp5KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJh
dG9yLnd6enoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3p6dyh1aW50
NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53end4KHVpbnQ0IHYpIHsKKyAgICB1
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd6d3kodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQg
b3BlcmF0b3Iud3p3eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53end3
KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd3eHgodWludDQgdikgewor
ICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3d4eSh1aW50NCB2KSB7CisgICAgdWludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1
aW50NCBvcGVyYXRvci53d3h6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9y
Lnd3eHcodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3d5eCh1aW50NCB2
KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53d3l5KHVpbnQ0IHYpIHsKKyAgICB1aW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3VpbnQ0IG9wZXJhdG9yLnd3eXoodWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3Bl
cmF0b3Iud3d5dyh1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53d3p4KHVp
bnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd3enkodWludDQgdikgeworICAg
IHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQordWludDQgb3BlcmF0b3Iud3d6eih1aW50NCB2KSB7CisgICAgdWludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cit1aW50
NCBvcGVyYXRvci53d3p3KHVpbnQ0IHYpIHsKKyAgICB1aW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3VpbnQ0IG9wZXJhdG9yLnd3
d3godWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQordWludDQgb3BlcmF0b3Iud3d3eSh1aW50NCB2KSB7
CisgICAgdWludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9Cit1aW50NCBvcGVyYXRvci53d3d6KHVpbnQ0IHYpIHsKKyAgICB1aW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3VpbnQ0IG9wZXJhdG9yLnd3d3codWludDQgdikgeworICAgIHVpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0
b3IueHgoY2hhcjIgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0
b3IueHkoY2hhcjIgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0
b3IueHk9KGNoYXIyIHYsIGNoYXIyIGMpIHsKKyAgICBjaGFyMiByZXN1bHQgPSB2OworICAgIHJl
c3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMiBvcGVyYXRvci55eChjaGFyMiB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMiBvcGVyYXRvci55eD0oY2hhcjIgdiwgY2hhcjIgYykgeworICAgIGNoYXIyIHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnl5KGNoYXIyIHYpIHsKKyAgICBjaGFyMiBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnh4KGNoYXIzIHYpIHsKKyAgICBjaGFyMiBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnh5KGNoYXIzIHYpIHsKKyAgICBjaGFyMiBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh5PShjaGFyMyB2LCBjaGFyMiBjKSB7Cisg
ICAgY2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9
IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IueHooY2hhcjMgdikg
eworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHo9KGNoYXIzIHYs
IGNoYXIyIGMpIHsKKyAgICBjaGFyMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54Owor
ICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRv
ci55eChjaGFyMyB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRv
ci55eD0oY2hhcjMgdiwgY2hhcjIgYykgeworICAgIGNoYXIzIHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXIyIG9wZXJhdG9yLnl5KGNoYXIzIHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXIyIG9wZXJhdG9yLnl6KGNoYXIzIHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXIzIG9wZXJhdG9yLnl6PShjaGFyMyB2LCBjaGFyMiBjKSB7CisgICAgY2hhcjMgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IuengoY2hhcjMgdikgeworICAgIGNoYXIyIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iueng9KGNoYXIzIHYsIGNoYXIyIGMpIHsKKyAg
ICBjaGFyMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0g
Yy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci56eShjaGFyMyB2KSB7
CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56eT0oY2hhcjMgdiwg
Y2hhcjIgYykgeworICAgIGNoYXIzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7Cisg
ICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9y
Lnp6KGNoYXIzIHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9y
Lnh4KGNoYXI0IHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9y
Lnh5KGNoYXI0IHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnh5PShjaGFyNCB2LCBjaGFyMiBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjIgb3BlcmF0b3IueHooY2hhcjQgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3IueHo9KGNoYXI0IHYsIGNoYXIyIGMpIHsKKyAgICBjaGFyNCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci54dyhjaGFyNCB2KSB7CisgICAgY2hhcjIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54dz0oY2hhcjQgdiwgY2hhcjIgYykgeworICAg
IGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBj
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnl4KGNoYXI0IHYpIHsK
KyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4PShjaGFyNCB2LCBj
aGFyMiBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAg
ICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3Iu
eXkoY2hhcjQgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3Iu
eXooY2hhcjQgdikgeworICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
eXo9KGNoYXI0IHYsIGNoYXIyIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyMiBvcGVyYXRvci55dyhjaGFyNCB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci55dz0oY2hhcjQgdiwgY2hhcjIgYykgeworICAgIGNoYXI0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnp4KGNoYXI0IHYpIHsKKyAgICBjaGFyMiByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4PShjaGFyNCB2LCBjaGFyMiBjKSB7CisgICAg
Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3IuenkoY2hhcjQgdikgewor
ICAgIGNoYXIyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenk9KGNoYXI0IHYsIGNo
YXIyIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAg
IHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci56
eihjaGFyNCB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci56
dyhjaGFyNCB2KSB7CisgICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56
dz0oY2hhcjQgdiwgY2hhcjIgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnogPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXIyIG9wZXJhdG9yLnd4KGNoYXI0IHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnd4PShjaGFyNCB2LCBjaGFyMiBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjIgb3BlcmF0b3Iud3koY2hhcjQgdikgeworICAgIGNoYXIyIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3k9KGNoYXI0IHYsIGNoYXIyIGMpIHsKKyAgICBj
aGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMiBvcGVyYXRvci53eihjaGFyNCB2KSB7Cisg
ICAgY2hhcjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53ej0oY2hhcjQgdiwgY2hh
cjIgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAg
cmVzdWx0LnogPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIyIG9wZXJhdG9yLnd3
KGNoYXI0IHYpIHsKKyAgICBjaGFyMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh4
eChjaGFyMiB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyMyBvcGVyYXRvci54eHkoY2hhcjIgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHl4KGNoYXIyIHYpIHsK
KyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9w
ZXJhdG9yLnh5eShjaGFyMiB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eHgoY2hhcjIgdikgeworICAgIGNoYXIzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXh5KGNo
YXIyIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXIzIG9wZXJhdG9yLnl5eChjaGFyMiB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eXkoY2hhcjIgdikgeworICAg
IGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0
b3IueHh4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh4eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54eHooY2hhcjMg
dikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjMgb3BlcmF0b3IueHl4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh5eShjaGFyMyB2KSB7CisgICAgY2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54
eXooY2hhcjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjMgb3BlcmF0b3IueHl6PShjaGFyMyB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjMg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAg
ICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iu
eHp4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXIzIG9wZXJhdG9yLnh6eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54enk9KGNoYXIzIHYs
IGNoYXIzIGMpIHsKKyAgICBjaGFyMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54Owor
ICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54enooY2hhcjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXh4KGNoYXIzIHYp
IHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIz
IG9wZXJhdG9yLnl4eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eHooY2hhcjMgdikgeworICAgIGNoYXIz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXh6
PShjaGFyMyB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXl4KGNoYXIzIHYpIHsKKyAgICBjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl5
eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyMyBvcGVyYXRvci55eXooY2hhcjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXp4KGNoYXIzIHYpIHsK
KyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9w
ZXJhdG9yLnl6eD0oY2hhcjMgdiwgY2hhcjMgYykgeworICAgIGNoYXIzIHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl6eShjaGFyMyB2KSB7
CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBv
cGVyYXRvci55enooY2hhcjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iuenh4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp4eShj
aGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyMyBvcGVyYXRvci56eHk9KGNoYXIzIHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyMyByZXN1
bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJl
c3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56eHoo
Y2hhcjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjMgb3BlcmF0b3Iuenl4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp5eD0oY2hhcjMgdiwgY2hh
cjMgYykgeworICAgIGNoYXIzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAg
cmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXIzIG9wZXJhdG9yLnp5eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56eXooY2hhcjMgdikgewor
ICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3Bl
cmF0b3Iuenp4KGNoYXIzIHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp6eShjaGFyMyB2KSB7CisgICAgY2hhcjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56enooY2hh
cjMgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjMgb3BlcmF0b3IueHh4KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh4eShjaGFyNCB2KSB7CisgICAg
Y2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRv
ci54eHooY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjMgb3BlcmF0b3IueHh3KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh5eChjaGFyNCB2
KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MyBvcGVyYXRvci54eXkoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHl6KGNoYXI0IHYpIHsKKyAgICBjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5
ej0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh5dyhjaGFyNCB2KSB7CisgICAgY2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54
eXc9KGNoYXI0IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54engoY2hhcjQgdikgeworICAgIGNo
YXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iu
eHp5KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6eT0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7Cisg
ICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9y
Lnh6eihjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54encoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp3PShjaGFyNCB2
LCBjaGFyMyBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsK
KyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjMgb3BlcmF0b3IueHd4KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnh3eShjaGFyNCB2
KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci54d3k9KGNoYXI0IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci54d3ooY2hhcjQg
dikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueHd6PShjaGFyNCB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQu
eiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueHd3KGNoYXI0
IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXIzIG9wZXJhdG9yLnl4eChjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55eHkoY2hhcjQgdikgeworICAgIGNo
YXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iu
eXh6KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4ej0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7Cisg
ICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9y
Lnl4dyhjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHc9KGNoYXI0IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFy
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55Owor
ICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRv
ci55eXgoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjMgb3BlcmF0b3IueXl5KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl5eihjaGFyNCB2
KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MyBvcGVyYXRvci55eXcoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXp4KGNoYXI0IHYpIHsKKyAgICBjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6
eD0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl6eShjaGFyNCB2KSB7CisgICAgY2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55
enooY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjMgb3BlcmF0b3IueXp3KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6dz0oY2hhcjQgdiwg
Y2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7Cisg
ICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXIzIG9wZXJhdG9yLnl3eChjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3g9KGNoYXI0IHYs
IGNoYXIzIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54Owor
ICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyMyBvcGVyYXRvci55d3koY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3IueXd6KGNoYXI0IHYp
IHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnl3ej0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0Lnog
PSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnl3dyhjaGFyNCB2
KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MyBvcGVyYXRvci56eHgoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iuenh5KGNoYXI0IHYpIHsKKyAgICBjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4
eT0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp4eihjaGFyNCB2KSB7CisgICAgY2hh
cjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56
eHcoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iuenh3PShjaGFyNCB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAg
ICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iu
enl4KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5eD0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7Cisg
ICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9y
Lnp5eShjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56eXooY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iuenl3KGNoYXI0IHYp
IHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnp5dz0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0Lncg
PSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp6eChjaGFyNCB2
KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MyBvcGVyYXRvci56enkoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iuenp6KGNoYXI0IHYpIHsKKyAgICBjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnp6
dyhjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyMyBvcGVyYXRvci56d3goY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuend4PShjaGFyNCB2LCBj
aGFyMyBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAg
ICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjMgb3BlcmF0b3Iuend5KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3eT0oY2hhcjQgdiwg
Y2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7Cisg
ICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXIzIG9wZXJhdG9yLnp3eihjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci56d3coY2hhcjQgdikg
eworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMg
b3BlcmF0b3Iud3h4KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnd4eShjaGFyNCB2KSB7CisgICAgY2hhcjMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHk9
KGNoYXI0IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53
ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci53eHooY2hhcjQgdikgeworICAgIGNoYXIz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3h6
PShjaGFyNCB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
dyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iud3h3KGNoYXI0IHYpIHsKKyAgICBjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnd5
eChjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci53eXg9KGNoYXI0IHYsIGNoYXIzIGMpIHsKKyAgICBjaGFyNCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAg
IHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci53
eXkoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjMgb3BlcmF0b3Iud3l6KGNoYXI0IHYpIHsKKyAgICBjaGFyMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd5ej0oY2hhcjQgdiwg
Y2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7Cisg
ICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXIzIG9wZXJhdG9yLnd5dyhjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyMyBvcGVyYXRvci53engoY2hhcjQgdikg
eworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3Iud3p4PShjaGFyNCB2LCBjaGFyMyBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iud3p5KGNoYXI0IHYp
IHsKKyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnd6eT0oY2hhcjQgdiwgY2hhcjMgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0Lnkg
PSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnd6eihjaGFyNCB2
KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
MyBvcGVyYXRvci53encoY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iud3d4KGNoYXI0IHYpIHsKKyAgICBjaGFy
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXIzIG9wZXJhdG9yLnd3
eShjaGFyNCB2KSB7CisgICAgY2hhcjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyMyBvcGVyYXRvci53d3ooY2hhcjQgdikgeworICAgIGNoYXIzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjMgb3BlcmF0b3Iud3d3KGNoYXI0IHYpIHsK
KyAgICBjaGFyMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnh4eHgoY2hhcjIgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh4eShj
aGFyMiB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHl4KGNoYXIyIHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4eXkoY2hhcjIgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueHl4eChjaGFyMiB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54
eXh5KGNoYXIyIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5eXgoY2hhcjIgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl5eShjaGFyMiB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci55eHh4KGNoYXIyIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnl4eHkoY2hhcjIgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh5eChjaGFy
MiB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHl5KGNoYXIyIHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5eHgoY2hhcjIgdikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3IueXl4eShjaGFyMiB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXl4
KGNoYXIyIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5eXkoY2hhcjIgdikgewor
ICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci54eHh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnh4eHooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh5eChjaGFyMyB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHl5KGNoYXIzIHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnh4eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3IueHh6eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHp5KGNo
YXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4enooY2hhcjMgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci54eXh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5
eHooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl5eChjaGFyMyB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnh5eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3IueHl6eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXp5KGNoYXIz
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5enooY2hhcjMgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3IueHp4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci54enh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6eHoo
Y2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp5eChjaGFyMyB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54enl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnh6eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
eHp6eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54enp5KGNoYXIzIHYp
IHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6enooY2hhcjMgdikgeworICAgIGNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IueXh4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci55eHh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4eHooY2hh
cjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh5eChjaGFyMyB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnl4eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh6
eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHp5KGNoYXIzIHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4enooY2hhcjMgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3IueXl4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci55eXh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5eHooY2hhcjMg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl5eChjaGFyMyB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci55eXl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnl5eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl6eChj
aGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXp5KGNoYXIzIHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueXp4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55
enh5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6eHooY2hhcjMgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp5eChjaGFyMyB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci55enl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnl6eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp6eChjaGFy
MyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55enp5KGNoYXIzIHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3Iuenh4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eHh5
KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4eHooY2hhcjMgdikgewor
ICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh5eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci56eHl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnp4eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh6eChjaGFyMyB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eHp5KGNoYXIzIHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnp4enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3Iuenl4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXh5KGNo
YXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5eHooY2hhcjMgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenl5eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci56eXl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5
eXooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenl6eChjaGFyMyB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXp5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnp5enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3Iuenp4eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56enh5KGNoYXIz
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6eHooY2hhcjMgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iuenp5eChjaGFyMyB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci56enl5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6eXoo
Y2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenp6eChjaGFyMyB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56enp5KGNoYXIzIHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnp6enooY2hhcjMgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
eHh4eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHh5KGNoYXI0IHYp
IHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4eHooY2hhcjQgdikgeworICAgIGNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IueHh4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci54eHl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4eXkoY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh5eihjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHl3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnh4engoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh6
eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eHp6KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4encoY2hhcjQgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3IueHh3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci54eHd5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh4d3ooY2hhcjQg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHh3dyhjaGFyNCB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci54eXh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnh5eHkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl4eihj
aGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXh3KGNoYXI0IHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5eXgoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueHl5eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54
eXl6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5eXcoY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl6eChjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci54eXp5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnh5enooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl6dyhjaGFy
NCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXp3PShjaGFyNCB2LCBjaGFyNCBj
KSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1
bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl3eChjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54eXd5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnh5d3ooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHl3
ej0oY2hhcjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAg
cmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh5
d3coY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp4eChjaGFyNCB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54enh5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnh6eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3IueHp4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54enl4KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6eXkoY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3IueHp5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci54enl3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6eXc9
KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54
ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJl
c3VsdC53ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54enp4
KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh6enkoY2hhcjQgdikgewor
ICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp6eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci54enp3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnh6d3goY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp3eShjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54end5PShjaGFyNCB2LCBjaGFyNCBjKSB7
CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQu
eiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHp3eihjaGFyNCB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci54end3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnh3eHgoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHd4eShj
aGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54d3h6KGNoYXI0IHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3eHcoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueHd5eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54
d3l5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3eXooY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHd5ej0oY2hhcjQgdiwgY2hhcjQgYykgewor
ICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0Lncg
PSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3eXcoY2hhcjQgdikgeworICAgIGNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IueHd6eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci54d3p5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3enk9KGNo
YXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0g
Yy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3Vs
dC55ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci54d3p6KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3encoY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3IueHd3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci54d3d5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnh3
d3ooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueHd3dyhjaGFyNCB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnl4eHkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3IueXh4eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHh3KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4eXgoY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3IueXh5eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci55eHl6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl4eXco
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh6eChjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHp5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnl4enooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
eXh6dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHp3PShjaGFyNCB2
LCBjaGFyNCBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsK
KyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9
IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXh3eChjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eHd5KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnl4d3ooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3IueXh3ej0oY2hhcjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBj
Lno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnl4d3coY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl4eChj
aGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXh5KGNoYXI0IHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueXl4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55
eXl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5eXkoY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl5eihjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci55eXl3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnl5engoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl6eShjaGFy
NCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXp6KGNoYXI0IHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5encoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3IueXl3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55eXd5
KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl5d3ooY2hhcjQgdikgewor
ICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXl3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci55enh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnl6eHkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp4eihjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55enh3KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnl6eHc9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAg
IHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci55enl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnl6eXkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp5eihj
aGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55enl3KGNoYXI0IHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6engoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3IueXp6eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55
enp6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6encoY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXp3eChjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci55end4PShjaGFyNCB2LCBjaGFyNCBjKSB7CisgICAgY2hhcjQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICBy
ZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3IueXp3eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci55end6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl6d3coY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXd4eChjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3h5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnl3eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXd4
ej0oY2hhcjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAg
cmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl3
eHcoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXd5eChjaGFyNCB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3l5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnl3eXooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3IueXd5dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3p4KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl3eng9KGNoYXI0IHYsIGNoYXI0IGMp
IHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3Vs
dC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC54ID0gYy53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3p5KGNoYXI0IHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnl3enooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3IueXd6dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci55d3d4
KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnl3d3koY2hhcjQgdikgewor
ICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3IueXd3eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci55d3d3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnp4eHgoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh4eShjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eHh6KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnp4eHcoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3Iuenh5eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eHl5KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4eXooY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh5dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci56eHl3PShjaGFyNCB2LCBjaGFyNCBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQu
eSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3Iuenh6eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56
eHp5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4enooY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh6dyhjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci56eHd4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnp4d3koY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh3eT0oY2hh
cjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBj
Lng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0
LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp4d3ooY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenh3dyhjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnp5eHkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenl4
eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXh3KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5eHc9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAg
ICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0g
Yy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnp5eXkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3Iuenl5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXl3KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5engoY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iuenl6eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci56eXp6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp5enco
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenl3eChjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56eXd4PShjaGFyNCB2LCBjaGFyNCBjKSB7CisgICAg
Y2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenl3eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci56eXd6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnp5d3coY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenp4eChjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56enh5KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnp6eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3Iuenp4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56enl4KGNo
YXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6eXkoY2hhcjQgdikgeworICAg
IGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenp5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci56enl3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6
engoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuenp6eShjaGFyNCB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56enp6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnp6encoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3Iuenp3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56end5KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp6d3ooY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iuenp3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci56d3h4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3eHko
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuend4eT0oY2hhcjQgdiwgY2hh
cjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAg
cmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3eHooY2hhcjQgdikgewor
ICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuend4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci56d3l4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnp3eXg9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56Owor
ICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRv
ci56d3l5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3eXooY2hhcjQg
dikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuend5dyhjaGFyNCB2KSB7CisgICAgY2hh
cjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitjaGFyNCBvcGVyYXRvci56d3p4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9w
ZXJhdG9yLnp3enkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iuend6eihj
aGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56d3p3KGNoYXI0IHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3d3goY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3Iuend3eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci56
d3d6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnp3d3coY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3h4eChjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci53eHh5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnd4eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3h4dyhjaGFy
NCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHl4KGNoYXI0IHYpIHsKKyAgICBj
aGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2NoYXI0IG9wZXJhdG9yLnd4eXkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQg
b3BlcmF0b3Iud3h5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHl6
PShjaGFyNCB2LCBjaGFyNCBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
dyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICBy
ZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3h5
dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHp4KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd4enkoY2hhcjQgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3Iud3h6eT0oY2hhcjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVz
dWx0LnogPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnd4enooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3Iud3h6dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eHd4KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd4d3koY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iud3h3eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci53eHd3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd5eHgo
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3l4eShjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eXh6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnd5eHo9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3Vs
dC54ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citj
aGFyNCBvcGVyYXRvci53eXh3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9y
Lnd5eXgoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3l5eShjaGFyNCB2
KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eXl6KGNoYXI0IHYpIHsKKyAgICBjaGFy
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2NoYXI0IG9wZXJhdG9yLnd5eXcoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3Bl
cmF0b3Iud3l6eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eXp4PShj
aGFyNCB2LCBjaGFyNCBjKSB7CisgICAgY2hhcjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9
IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1
bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3l6eShj
aGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53eXp6KGNoYXI0IHYpIHsKKyAg
ICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd5encoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hh
cjQgb3BlcmF0b3Iud3l3eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53
eXd5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd5d3ooY2hhcjQgdikg
eworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3l3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitjaGFyNCBvcGVyYXRvci53enh4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJh
dG9yLnd6eHkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3p4eT0oY2hh
cjQgdiwgY2hhcjQgYykgeworICAgIGNoYXI0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBj
Lng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0
LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd6eHooY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3p4dyhjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53enl4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnd6eXg9KGNoYXI0IHYsIGNoYXI0IGMpIHsKKyAgICBjaGFyNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55
ID0gYy56OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFy
NCBvcGVyYXRvci53enl5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd6
eXooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3p5dyhjaGFyNCB2KSB7
CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53enp4KGNoYXI0IHYpIHsKKyAgICBjaGFyNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2NoYXI0IG9wZXJhdG9yLnd6enkoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0
b3Iud3p6eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53enp3KGNoYXI0
IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd6d3goY2hhcjQgdikgeworICAgIGNo
YXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorY2hhcjQgb3BlcmF0b3Iud3p3eShjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBv
cGVyYXRvci53end6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd6d3co
Y2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3d4eChjaGFyNCB2KSB7Cisg
ICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53d3h5KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2No
YXI0IG9wZXJhdG9yLnd3eHooY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iu
d3d4dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53d3l4KGNoYXI0IHYp
IHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd3eXkoY2hhcjQgdikgeworICAgIGNoYXI0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorY2hhcjQgb3BlcmF0b3Iud3d5eihjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVy
YXRvci53d3l3KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd3engoY2hh
cjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3d6eShjaGFyNCB2KSB7CisgICAg
Y2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53d3p6KGNoYXI0IHYpIHsKKyAgICBjaGFyNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2NoYXI0
IG9wZXJhdG9yLnd3encoY2hhcjQgdikgeworICAgIGNoYXI0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorY2hhcjQgb3BlcmF0b3Iud3d3
eChjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitjaGFyNCBvcGVyYXRvci53d3d5KGNoYXI0IHYpIHsK
KyAgICBjaGFyNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2NoYXI0IG9wZXJhdG9yLnd3d3ooY2hhcjQgdikgeworICAgIGNoYXI0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
Y2hhcjQgb3BlcmF0b3Iud3d3dyhjaGFyNCB2KSB7CisgICAgY2hhcjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0
b3IueHgoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3Bl
cmF0b3IueHkoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIg
b3BlcmF0b3IueHk9KHNob3J0MiB2LCBzaG9ydDIgYykgeworICAgIHNob3J0MiByZXN1bHQgPSB2
OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXgoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXg9KHNob3J0MiB2LCBzaG9ydDIgYykgewor
ICAgIHNob3J0MiByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54
ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXkoc2hvcnQy
IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueHgoc2hv
cnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueHko
c2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iu
eHk9KHNob3J0MyB2LCBzaG9ydDIgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJl
c3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDIgb3BlcmF0b3IueHooc2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDMgb3BlcmF0b3IueHo9KHNob3J0MyB2LCBzaG9ydDIgYykgeworICAgIHNob3J0
MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXgoc2hvcnQzIHYpIHsKKyAg
ICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXg9KHNob3J0MyB2LCBz
aG9ydDIgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54Owor
ICAgIHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0
b3IueXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3Bl
cmF0b3IueXooc2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMg
b3BlcmF0b3IueXo9KHNob3J0MyB2LCBzaG9ydDIgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2
OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iuengoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iueng9KHNob3J0MyB2LCBzaG9ydDIgYykgewor
ICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54
ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iuenkoc2hvcnQz
IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iuenk9KHNo
b3J0MyB2LCBzaG9ydDIgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDIgb3BlcmF0b3Iuenooc2hvcnQzIHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDIgb3BlcmF0b3IueHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDIgb3BlcmF0b3IueHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueHk9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueHooc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHo9KHNob3J0NCB2LCBz
aG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54Owor
ICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0
b3IueHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3IueHc9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXg9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAg
IHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0g
Yy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXkoc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3IueXooc2hvcnQ0
IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXo9KHNo
b3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55
ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDIgb3BlcmF0b3IueXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueXc9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iuengoc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iueng9KHNob3J0NCB2LCBzaG9ydDIg
YykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJl
c3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iuenko
c2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
enk9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDIgb3BlcmF0b3Iuenooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDIgb3BlcmF0b3Iuencoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenc9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNo
b3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iud3goc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3g9KHNob3J0NCB2
LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54
OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3Bl
cmF0b3Iud3koc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3Iud3k9KHNob3J0NCB2LCBzaG9ydDIgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iud3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3o9KHNob3J0NCB2LCBzaG9ydDIgYykgewor
ICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56
ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDIgb3BlcmF0b3Iud3coc2hvcnQ0
IHYpIHsKKyAgICBzaG9ydDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHh4KHNo
b3J0MiB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQzIG9wZXJhdG9yLnh4eShzaG9ydDIgdikgeworICAgIHNob3J0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54eXgoc2hvcnQyIHYp
IHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDMgb3BlcmF0b3IueHl5KHNob3J0MiB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl4eChzaG9ydDIgdikgeworICAg
IHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVy
YXRvci55eHkoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXl4KHNob3J0MiB2KSB7CisgICAgc2hvcnQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl5
eShzaG9ydDIgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0MyBvcGVyYXRvci54eHgoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHh5KHNob3J0
MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQzIG9wZXJhdG9yLnh4eihzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54eXgoc2hvcnQzIHYpIHsK
KyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMg
b3BlcmF0b3IueHl5KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnh5eihzaG9ydDMgdikgeworICAgIHNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRv
ci54eXo9KHNob3J0MyB2LCBzaG9ydDMgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAg
IHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHp4KHNob3J0MyB2KSB7
CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQz
IG9wZXJhdG9yLnh6eShzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54enk9KHNob3J0MyB2LCBzaG9ydDMg
YykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJl
c3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDMgb3BlcmF0b3IueHp6KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl4eChzaG9ydDMgdikg
eworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
MyBvcGVyYXRvci55eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXh6KHNob3J0MyB2KSB7CisgICAg
c2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJh
dG9yLnl4ej0oc2hvcnQzIHYsIHNob3J0MyBjKSB7CisgICAgc2hvcnQzIHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55eXgoc2hvcnQzIHYp
IHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDMgb3BlcmF0b3IueXl5KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl5eihzaG9ydDMgdikgeworICAg
IHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVy
YXRvci55engoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXp4PShzaG9ydDMgdiwgc2hvcnQzIGMpIHsK
KyAgICBzaG9ydDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQu
eiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQzIG9wZXJhdG9yLnl6eShzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55enooc2hvcnQzIHYpIHsKKyAg
ICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3Bl
cmF0b3Iuenh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp4eShzaG9ydDMgdikgeworICAgIHNob3J0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56
eHk9KHNob3J0MyB2LCBzaG9ydDMgYykgeworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJl
c3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iuenh6KHNob3J0MyB2KSB7Cisg
ICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9w
ZXJhdG9yLnp5eChzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56eXg9KHNob3J0MyB2LCBzaG9ydDMgYykg
eworICAgIHNob3J0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3Vs
dC55ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDMgb3BlcmF0b3Iuenl5KHNob3J0MyB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp5eihzaG9ydDMgdikgewor
ICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBv
cGVyYXRvci56engoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iuenp5KHNob3J0MyB2KSB7CisgICAgc2hv
cnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9y
Lnp6eihzaG9ydDMgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHh5KHNo
b3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQzIG9wZXJhdG9yLnh4eihzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci54eHcoc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDMgb3BlcmF0b3IueHl4KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnh5eShzaG9ydDQgdikgeworICAg
IHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVy
YXRvci54eXooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl6PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsK
KyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQu
eSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQzIG9wZXJhdG9yLnh5dyhzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXc9KHNob3J0NCB2LCBzaG9y
dDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAg
IHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDMgb3BlcmF0b3IueHp4KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnh6eShzaG9ydDQg
dikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci54enk9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJl
c3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHp6
KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQzIG9wZXJhdG9yLnh6dyhzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54enc9KHNob3J0
NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0g
Yy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueHd4KHNob3J0NCB2KSB7CisgICAgc2hvcnQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnh3
eShzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci54d3k9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNo
b3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55
OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3Bl
cmF0b3IueHd6KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh3ej0oc2hvcnQ0IHYsIHNob3J0MyBjKSB7
CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0
LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0MyBvcGVyYXRvci54d3coc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXh4KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9w
ZXJhdG9yLnl4eShzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55eHooc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eXh6PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl4dyhzaG9ydDQgdikgewor
ICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci55eHc9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXl4KHNob3J0
NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQzIG9wZXJhdG9yLnl5eShzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55eXooc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMg
b3BlcmF0b3IueXl3KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl6eChzaG9ydDQgdikgeworICAgIHNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci55eng9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXp5KHNob3J0NCB2KSB7
CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQz
IG9wZXJhdG9yLnl6eihzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci55encoc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3IueXp3PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnl3eChzaG9ydDQgdikg
eworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci55d3g9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3Vs
dC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXd5KHNo
b3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQzIG9wZXJhdG9yLnl3eihzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55d3o9KHNob3J0NCB2
LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54
OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3IueXd3KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp4eChz
aG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0MyBvcGVyYXRvci56eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh5PShzaG9ydDQg
diwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMu
eDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp4eihzaG9ydDQgdikgeworICAgIHNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56eHco
c2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh3PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9y
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJh
dG9yLnp5eChzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXg9KHNob3J0NCB2LCBzaG9ydDMgYykgewor
ICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55
ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDMgb3BlcmF0b3Iuenl5KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp5eihzaG9ydDQgdikgeworICAg
IHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVy
YXRvci56eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl3PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsK
KyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQu
eSA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQzIG9wZXJhdG9yLnp6eChzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56enkoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3Bl
cmF0b3Iuenp6KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp6dyhzaG9ydDQgdikgeworICAgIHNob3J0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci56
d3goc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuend4PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBz
aG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMu
eTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9w
ZXJhdG9yLnp3eShzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3k9KHNob3J0NCB2LCBzaG9ydDMgYykg
eworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3Vs
dC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDMgb3BlcmF0b3Iuend6KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnp3dyhzaG9ydDQgdikgewor
ICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBv
cGVyYXRvci53eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iud3h5KHNob3J0NCB2KSB7CisgICAgc2hv
cnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnd4eT0oc2hvcnQ0IHYsIHNob3J0MyBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci53eHooc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3Iud3h6PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQu
eiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnd4dyhzaG9y
dDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0MyBvcGVyYXRvci53eXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3l4PShzaG9ydDQgdiwg
c2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsK
KyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnd5eShzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci53eXooc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3Iud3l6PShzaG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAg
ICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9y
Lnd5dyhzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci53engoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p4PShz
aG9ydDQgdiwgc2hvcnQzIGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
dyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnd6eShzaG9ydDQgdikgeworICAgIHNo
b3J0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci53enk9KHNob3J0NCB2LCBzaG9ydDMgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0b3Iud3p6KHNob3J0NCB2KSB7
CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQz
IG9wZXJhdG9yLnd6dyhzaG9ydDQgdikgeworICAgIHNob3J0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci53d3goc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDMgb3BlcmF0
b3Iud3d5KHNob3J0NCB2KSB7CisgICAgc2hvcnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQzIG9wZXJhdG9yLnd3eihzaG9ydDQgdikgeworICAgIHNob3J0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0MyBvcGVyYXRvci53d3co
c2hvcnQ0IHYpIHsKKyAgICBzaG9ydDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueHh4eChzaG9ydDIgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci54eHh5KHNob3J0MiB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnh4eXgoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh5eShzaG9y
dDIgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXh4KHNob3J0MiB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5eHkoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3IueHl5eChzaG9ydDIgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci54eXl5KHNob3J0MiB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4
eHgoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh4eShzaG9ydDIg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHl4KHNob3J0MiB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4eXkoc2hvcnQyIHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueXl4eChzaG9ydDIgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci55eXh5KHNob3J0MiB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5eXgo
c2hvcnQyIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl5eShzaG9ydDIgdikg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHh4KHNob3J0MyB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnh4eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3IueHh4eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci54eHl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh4eXkoc2hv
cnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh5eihzaG9ydDMgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnh4enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3IueHh6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54
eXh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5eHkoc2hvcnQz
IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl4eihzaG9ydDMgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnh5eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3IueHl5eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXp4
KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5enkoc2hvcnQzIHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl6eihzaG9ydDMgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci54enh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnh6eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3IueHp4eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54enl4KHNo
b3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6eXkoc2hvcnQzIHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp5eihzaG9ydDMgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci54enp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnh6enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eHp6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHh4KHNob3J0
MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4eHkoc2hvcnQzIHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh4eihzaG9ydDMgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci55eHl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnl4eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh5
eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHp4KHNob3J0MyB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4enkoc2hvcnQzIHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci55eXh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnl5eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl4eihz
aG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eXl4KHNob3J0MyB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueXl5eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci55eXp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnl5enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl6eihzaG9y
dDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55enh4KHNob3J0MyB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3IueXp4eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci55enl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6
eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXp5eihzaG9ydDMg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55enp4KHNob3J0MyB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueXp6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci56eHh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4eHko
c2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh4eihzaG9ydDMgdikg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHl4KHNob3J0MyB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3Iuenh5eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci56eHp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4enkoc2hv
cnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh6eihzaG9ydDMgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXh4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnp5eHkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3Iuenl4eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56
eXl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5eXkoc2hvcnQz
IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl5eihzaG9ydDMgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXp4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnp5enkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3Iuenl6eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56enh4
KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp6eHkoc2hvcnQzIHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp4eihzaG9ydDMgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci56enl4KHNob3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnp6eXkoc2hvcnQzIHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3Iuenp5eihzaG9ydDMgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56enp4KHNo
b3J0MyB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp6enkoc2hvcnQzIHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp6eihzaG9ydDMgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci54eHh4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnh4eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eHh4eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHh3KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh4eXgoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh5eShzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci54eHl6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnh4eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh6
eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHp5KHNob3J0NCB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh4enooc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci54eHd4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnh4d3koc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHh3eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eHd3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueHl4eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci54eXh6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnh5eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl5eChzaG9y
dDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXl5KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5eXooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3IueHl5dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci54eXp4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5
enkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl6eihzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54eXp3KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh5enc9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAg
IHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0g
Yy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHl3eChzaG9ydDQgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci54eXd5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnh5d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eHl3ej0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7
CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci54eXd3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6eHgo
c2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp4eShzaG9ydDQgdikg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54enh6KHNob3J0NCB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3IueHp5eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci54enl5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6eXooc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp5dyhzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54enl3PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsK
KyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQu
eiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6engoc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp6eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci54enp6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnh6encoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp3eChz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54end5KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh6d3k9KHNob3J0NCB2LCBzaG9ydDQgYykg
eworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3Vs
dC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHp3eihzaG9ydDQgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54end3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnh3eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3IueHd4eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54d3h6
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh3eHcoc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHd5eChzaG9ydDQgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci54d3l5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnh3eXooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3IueHd5ej0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBj
Lno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci54d3l3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh3
engoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHd6eShzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54d3p5PShzaG9ydDQgdiwgc2hvcnQ0
IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICBy
ZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnh3enooc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueHd6dyhzaG9ydDQgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci54d3d4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnh3d3koc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eHd3eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci54d3d3KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4eHgoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh4eShzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci55eHh6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnl4eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh5
eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHl5KHNob3J0NCB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4eXooc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh5dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci55eHp4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnl4enkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh6eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHp3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl4enc9KHNob3J0NCB2LCBzaG9ydDQgYykg
eworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3Vs
dC54ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXh3eChzaG9ydDQgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eHd5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnl4d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3IueXh3ej0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0Lncg
PSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci55eHd3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnl5eHgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl4eShzaG9y
dDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eXh6KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3IueXl5eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci55eXl5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5
eXooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl5dyhzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eXp4KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5enkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueXl6eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci55eXp3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5d3go
c2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXl3eShzaG9ydDQgdikg
eworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55eXd6KHNob3J0NCB2KSB7CisgICAgc2hv
cnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorc2hvcnQ0IG9wZXJhdG9yLnl5d3coc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3IueXp4eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci55enh5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6eHooc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXp4dyhzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55enh3PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsK
KyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQu
eiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6eXgoc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXp5eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci55enl6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnl6eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXp6eChz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55enp5KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6enooc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3IueXp6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci55end4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnl6d3g9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56
OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3IueXp3eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55end6
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl6d3coc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXd4eChzaG9ydDQgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci55d3h5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnl3eHooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3IueXd4ej0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBj
Lno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci55d3h3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl3
eXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXd5eShzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55d3l6KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl3eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3IueXd6eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci55d3p4PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9
IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnl3enkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
eXd6eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci55d3p3KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnl3d3goc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3IueXd3eShzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci55d3d6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnl3d3coc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh4
eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHh5KHNob3J0NCB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4eHooc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh4dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci56eHl4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnp4eXkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh5eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHl3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4eXc9KHNob3J0NCB2LCBzaG9ydDQgYykg
eworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3Vs
dC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh6eChzaG9ydDQgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHp5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnp4enooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3Iuenh6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHd4
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4d3koc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenh3eT0oc2hvcnQ0IHYsIHNob3J0NCBj
KSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVz
dWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eHd6KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp4d3coc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3Iuenl4eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci56eXh5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5
eHooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl4dyhzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXh3PShzaG9ydDQgdiwgc2hvcnQ0
IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICBy
ZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5eXgoc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl5eShzaG9ydDQgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci56eXl6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnp5eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
enl6eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56eXp5KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5enooc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenl6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci56eXd4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnp5d3g9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53
ID0gYy56OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3Iuenl3eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci56eXd6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp5d3coc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp4eChzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56enh5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnp6eHooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3Iuenp4dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56
enl4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp6eXkoc2hvcnQ0
IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp5eihzaG9ydDQgdikgeworICAg
IHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56enl3KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnp6engoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3Iuenp6eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56enp6
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp6encoc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuenp3eChzaG9ydDQgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci56end5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnp6d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3Iuenp3dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3h4KHNo
b3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp3eHkoc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuend4eT0oc2hvcnQ0IHYsIHNob3J0NCBjKSB7
CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0
LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3h6KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp3eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3Iuend5eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci56d3l4PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9
IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnp3eXkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
end5eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3l3KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp3engoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuend6eShzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci56d3p6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnp3encoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuend3
eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci56d3d5KHNob3J0NCB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnp3d3ooc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iuend3dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci53eHh4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnd4eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3h4eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eHh3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4eXgoc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3Iud3h5eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci53eHl6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9y
Lnd4eXo9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56
OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3Iud3h5dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eHp4
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4enkoc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3h6eT0oc2hvcnQ0IHYsIHNob3J0NCBj
KSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVz
dWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eHp6KHNob3J0NCB2KSB7Cisg
ICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4encoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitzaG9ydDQgb3BlcmF0b3Iud3h3eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBv
cGVyYXRvci53eHd5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd4
d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3h3dyhzaG9ydDQg
dikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eXh4KHNob3J0NCB2KSB7CisgICAg
c2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd5eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citz
aG9ydDQgb3BlcmF0b3Iud3l4eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVy
YXRvci53eXh6PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9
IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnd5eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
d3l5eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eXl5KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd5eXooc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3l5dyhzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci53eXp4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnd5eng9KHNob3J0NCB2LCBzaG9ydDQgYykgeworICAgIHNob3J0NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56
ID0gYy56OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9y
dDQgb3BlcmF0b3Iud3l6eShzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRv
ci53eXp6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd5encoc2hv
cnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3l3eChzaG9ydDQgdikgewor
ICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53eXd5KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorc2hvcnQ0IG9wZXJhdG9yLnd5d3ooc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQg
b3BlcmF0b3Iud3l3dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53
enh4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd6eHkoc2hvcnQ0
IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p4eT0oc2hvcnQ0IHYsIHNob3J0
NCBjKSB7CisgICAgc2hvcnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAg
cmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53enh6KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd6eHcoc2hvcnQ0IHYpIHsKKyAgICBzaG9y
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p5eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0
NCBvcGVyYXRvci53enl4PShzaG9ydDQgdiwgc2hvcnQ0IGMpIHsKKyAgICBzaG9ydDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1
bHQueSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
c2hvcnQ0IG9wZXJhdG9yLnd6eXkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3Bl
cmF0b3Iud3p5eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53enl3
KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd6engoc2hvcnQ0IHYp
IHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p6eShzaG9ydDQgdikgeworICAgIHNo
b3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK3Nob3J0NCBvcGVyYXRvci53enp6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hv
cnQ0IG9wZXJhdG9yLnd6encoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0
b3Iud3p3eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53end5KHNo
b3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd6d3ooc2hvcnQ0IHYpIHsK
KyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3p3dyhzaG9ydDQgdikgeworICAgIHNob3J0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK3Nob3J0NCBvcGVyYXRvci53d3h4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0
IG9wZXJhdG9yLnd3eHkoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iu
d3d4eihzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53d3h3KHNob3J0
NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd3eXgoc2hvcnQ0IHYpIHsKKyAg
ICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3d5eShzaG9ydDQgdikgeworICAgIHNob3J0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K3Nob3J0NCBvcGVyYXRvci53d3l6KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9w
ZXJhdG9yLnd3eXcoc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3d6
eChzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53d3p5KHNob3J0NCB2
KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJhdG9yLnd3enooc2hvcnQ0IHYpIHsKKyAgICBz
aG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3d6dyhzaG9ydDQgdikgeworICAgIHNob3J0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3No
b3J0NCBvcGVyYXRvci53d3d4KHNob3J0NCB2KSB7CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorc2hvcnQ0IG9wZXJh
dG9yLnd3d3koc2hvcnQ0IHYpIHsKKyAgICBzaG9ydDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitzaG9ydDQgb3BlcmF0b3Iud3d3eihz
aG9ydDQgdikgeworICAgIHNob3J0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK3Nob3J0NCBvcGVyYXRvci53d3d3KHNob3J0NCB2KSB7
CisgICAgc2hvcnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci54eChpbnQyIHYpIHsKKyAgICBpbnQyIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50MiBvcGVyYXRvci54eShpbnQyIHYpIHsKKyAgICBpbnQyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50MiBvcGVyYXRvci54eT0oaW50MiB2LCBpbnQyIGMpIHsKKyAgICBpbnQyIHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IueXgoaW50MiB2KSB7CisgICAgaW50MiBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IueXg9KGludDIgdiwgaW50MiBjKSB7CisgICAg
aW50MiByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnl5KGludDIgdikgeworICAg
IGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnh4KGludDMgdikgeworICAgIGlu
dDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnh5KGludDMgdikgeworICAgIGludDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh5PShpbnQzIHYsIGludDIgYykgeworICAg
IGludDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci54eihpbnQzIHYpIHsKKyAg
ICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54ej0oaW50MyB2LCBpbnQyIGMp
IHsKKyAgICBpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0
LnogPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IueXgoaW50MyB2
KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXg9KGludDMgdiwg
aW50MiBjKSB7CisgICAgaW50MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAg
IHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnl5
KGludDMgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnl6KGlu
dDMgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl6PShpbnQz
IHYsIGludDIgYykgeworICAgIGludDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsK
KyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRv
ci56eChpbnQzIHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci56
eD0oaW50MyB2LCBpbnQyIGMpIHsKKyAgICBpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIg
b3BlcmF0b3IuenkoaW50MyB2KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3Bl
cmF0b3Iuenk9KGludDMgdiwgaW50MiBjKSB7CisgICAgaW50MyByZXN1bHQgPSB2OworICAgIHJl
c3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQyIG9wZXJhdG9yLnp6KGludDMgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQyIG9wZXJhdG9yLnh4KGludDQgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQy
IG9wZXJhdG9yLnh5KGludDQgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnh5PShpbnQ0IHYsIGludDIgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50MiBvcGVyYXRvci54eihpbnQ0IHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci54ej0oaW50NCB2LCBpbnQyIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDIgb3BlcmF0b3IueHcoaW50NCB2KSB7CisgICAgaW50MiByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3IueHc9KGludDQgdiwgaW50MiBjKSB7CisgICAgaW50NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnl4KGludDQgdikgeworICAgIGludDIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4PShpbnQ0IHYsIGludDIgYykgeworICAgIGlu
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci55eShpbnQ0IHYpIHsKKyAgICBp
bnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci55eihpbnQ0IHYpIHsKKyAgICBpbnQy
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55ej0oaW50NCB2LCBpbnQyIGMpIHsKKyAg
ICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBj
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0b3IueXcoaW50NCB2KSB7Cisg
ICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXc9KGludDQgdiwgaW50MiBj
KSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3Vs
dC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnp4KGludDQg
dikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4PShpbnQ0IHYs
IGludDIgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAg
ICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MiBvcGVyYXRvci56
eShpbnQ0IHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eT0o
aW50NCB2LCBpbnQyIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBj
Lng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3Bl
cmF0b3IuenooaW50NCB2KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDIgb3BlcmF0
b3IuencoaW50NCB2KSB7CisgICAgaW50MiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
enc9KGludDQgdiwgaW50MiBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56
ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQy
IG9wZXJhdG9yLnd4KGludDQgdikgeworICAgIGludDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnd4PShpbnQ0IHYsIGludDIgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50MiBvcGVyYXRvci53eShpbnQ0IHYpIHsKKyAgICBpbnQyIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci53eT0oaW50NCB2LCBpbnQyIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDIgb3BlcmF0b3Iud3ooaW50NCB2KSB7CisgICAgaW50MiByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3Iud3o9KGludDQgdiwgaW50MiBjKSB7CisgICAgaW50NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQyIG9wZXJhdG9yLnd3KGludDQgdikgeworICAgIGludDIgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh4eChpbnQyIHYpIHsKKyAgICBpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54eHkoaW50MiB2
KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMg
b3BlcmF0b3IueHl4KGludDIgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh5eShpbnQyIHYpIHsKKyAgICBpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci55eHgoaW50MiB2
KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMg
b3BlcmF0b3IueXh5KGludDIgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl5eChpbnQyIHYpIHsKKyAgICBpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci55eXkoaW50MiB2
KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMg
b3BlcmF0b3IueHh4KGludDMgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh4eShpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54eHooaW50MyB2
KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMg
b3BlcmF0b3IueHl4KGludDMgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh5eShpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54eXooaW50MyB2
KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMg
b3BlcmF0b3IueHl6PShpbnQzIHYsIGludDMgYykgeworICAgIGludDMgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54engoaW50MyB2KSB7Cisg
ICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0
b3IueHp5KGludDMgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh6eT0oaW50MyB2LCBpbnQzIGMpIHsKKyAgICBpbnQzIHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAg
cmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHp6
KGludDMgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQzIG9wZXJhdG9yLnl4eChpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci55eHkoaW50MyB2KSB7CisgICAgaW50
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXh6
KGludDMgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQzIG9wZXJhdG9yLnl4ej0oaW50MyB2LCBpbnQzIGMpIHsKKyAgICBpbnQzIHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0
LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXl4KGludDMg
dikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQz
IG9wZXJhdG9yLnl5eShpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci55eXooaW50MyB2KSB7CisgICAgaW50MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXp4KGludDMg
dikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQz
IG9wZXJhdG9yLnl6eD0oaW50MyB2LCBpbnQzIGMpIHsKKyAgICBpbnQzIHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXp5KGludDMgdikgewor
ICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJh
dG9yLnl6eihpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50MyBvcGVyYXRvci56eHgoaW50MyB2KSB7CisgICAgaW50MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenh5KGludDMgdikgewor
ICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJh
dG9yLnp4eT0oaW50MyB2LCBpbnQzIGMpIHsKKyAgICBpbnQzIHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnogPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenh6KGludDMgdikgeworICAgIGlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp5
eChpbnQzIHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50MyBvcGVyYXRvci56eXg9KGludDMgdiwgaW50MyBjKSB7CisgICAgaW50MyByZXN1bHQg
PSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3Vs
dC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp5eShpbnQz
IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
MyBvcGVyYXRvci56eXooaW50MyB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenp4KGludDMgdikgeworICAgIGludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp6eShpbnQz
IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
MyBvcGVyYXRvci56enooaW50MyB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHh4KGludDQgdikgeworICAgIGludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh4eShpbnQ0
IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
MyBvcGVyYXRvci54eHooaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHh3KGludDQgdikgeworICAgIGludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh5eChpbnQ0
IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
MyBvcGVyYXRvci54eXkoaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHl6KGludDQgdikgeworICAgIGludDMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5ej0oaW50
NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7
CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHl3KGludDQgdikgeworICAgIGludDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5dz0oaW50NCB2LCBp
bnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAg
cmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDMgb3BlcmF0b3IueHp4KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh6eShpbnQ0IHYpIHsKKyAgICBp
bnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54
enk9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54
ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnh6eihpbnQ0IHYpIHsKKyAgICBpbnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54encoaW50
NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3IueHp3PShpbnQ0IHYsIGludDMgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci54d3goaW50NCB2KSB7
CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3Bl
cmF0b3IueHd5KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh3eT0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0
IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7Cisg
ICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iu
eHd6KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnh3ej0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3Vs
dCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVz
dWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueHd3KGlu
dDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQzIG9wZXJhdG9yLnl4eChpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci55eHkoaW50NCB2KSB7CisgICAgaW50MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXh6KGlu
dDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnl4ej0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0Lnog
PSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXh3KGludDQgdikg
eworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnl4dz0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXl4KGludDQgdikgeworICAg
IGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9y
Lnl5eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50MyBvcGVyYXRvci55eXooaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXl3KGludDQgdikgeworICAg
IGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9y
Lnl6eChpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci55eng9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJl
c3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl6eShp
bnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50MyBvcGVyYXRvci55enooaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXp3KGludDQgdikgeworICAgIGludDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6dz0o
aW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBj
Lng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3IueXd4KGludDQgdikgeworICAgIGludDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl3eD0oaW50NCB2
LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7Cisg
ICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDMgb3BlcmF0b3IueXd5KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl3eihpbnQ0IHYpIHsKKyAg
ICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci55d3o9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnl3dyhpbnQ0IHYpIHsKKyAgICBpbnQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci56eHgo
aW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDMgb3BlcmF0b3Iuenh5KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4eT0oaW50NCB2LCBpbnQzIGMpIHsK
KyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0Lngg
PSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMg
b3BlcmF0b3Iuenh6KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp4dyhpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHc9KGludDQg
diwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54Owor
ICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp5eChpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXg9KGludDQgdiwgaW50
MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJl
c3VsdC55ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQzIG9wZXJhdG9yLnp5eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci56eXooaW50NCB2KSB7CisgICAgaW50
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenl3
KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnp5dz0oaW50NCB2LCBpbnQzIGMpIHsKKyAgICBpbnQ0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0
LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenp4KGludDQg
dikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQz
IG9wZXJhdG9yLnp6eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci56enooaW50NCB2KSB7CisgICAgaW50MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iuenp3KGludDQg
dikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQz
IG9wZXJhdG9yLnp3eChpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56d3g9KGludDQgdiwgaW50MyBjKSB7CisgICAg
aW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55
OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJh
dG9yLnp3eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci56d3k9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAg
IHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnp3
eihpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50MyBvcGVyYXRvci56d3coaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iud3h4KGludDQgdikgeworICAgIGlu
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnd4
eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci53eHk9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3Vs
dC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnd4eihpbnQ0
IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci53eHo9KGludDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC56ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnd4dyhpbnQ0IHYpIHsK
KyAgICBpbnQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVy
YXRvci53eXgoaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3l4PShpbnQ0IHYsIGludDMgYykgeworICAgIGludDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAg
ICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci53
eXkoaW50NCB2KSB7CisgICAgaW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDMgb3BlcmF0b3Iud3l6KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5ej0oaW50NCB2LCBpbnQzIGMp
IHsKKyAgICBpbnQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0
LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDMgb3BlcmF0b3Iud3l3KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnd6eChpbnQ0IHYpIHsKKyAgICBpbnQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eng9KGlu
dDQgdiwgaW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54
OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQzIG9wZXJhdG9yLnd6eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enk9KGludDQgdiwg
aW50MyBjKSB7CisgICAgaW50NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAg
IHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQzIG9wZXJhdG9yLnd6eihpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci53encoaW50NCB2KSB7CisgICAg
aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iu
d3d4KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQzIG9wZXJhdG9yLnd3eShpbnQ0IHYpIHsKKyAgICBpbnQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50MyBvcGVyYXRvci53d3ooaW50NCB2KSB7CisgICAg
aW50MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDMgb3BlcmF0b3Iu
d3d3KGludDQgdikgeworICAgIGludDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnh4eHgoaW50MiB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3IueHh4eShpbnQyIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHl4KGludDIgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4eXkoaW50MiB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3IueHl4eChpbnQyIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eXh5
KGludDIgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eXgoaW50MiB2KSB7CisgICAg
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3IueHl5eShpbnQyIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci55eHh4KGludDIgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eHkoaW50MiB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh5eChpbnQyIHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci55eHl5KGludDIgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5
eHgoaW50MiB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl4eShpbnQyIHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci55eXl4KGludDIgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnl5eXkoaW50MiB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh4eChpbnQz
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHh5KGludDMgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnh4eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
eHh5eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHl5KGludDMgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3IueHh6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHp5KGlu
dDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4enooaW50MyB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IueHl4eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci54eXh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eHooaW50MyB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHl5eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci54eXl5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eXoo
aW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHl6eChpbnQzIHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci54eXp5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnh5enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHp4eChpbnQzIHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enh5KGludDMgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnh6eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHp5
eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enl5KGludDMgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh6eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3IueHp6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enp5KGludDMg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh6enooaW50MyB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3IueXh4eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55
eHh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eHooaW50MyB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh5eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci55eHl5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eXooaW50
MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh6eChpbnQzIHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci55eHp5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnl4enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl4eChpbnQzIHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnl5eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl5eChp
bnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXl5KGludDMgdikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnl5eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3IueXl6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXp5KGludDMgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5enooaW50MyB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3IueXp4eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enh5
KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6eHooaW50MyB2KSB7CisgICAg
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3IueXp5eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci55enl5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6eXooaW50MyB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXp6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci55enp5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6
enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh4eChpbnQzIHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci56eHh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnp4eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh5eChpbnQz
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHl5KGludDMgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnp4eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
enh6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHp5KGludDMgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3Iuenl4eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXh5KGlu
dDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5eHooaW50MyB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3Iuenl5eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci56eXl5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5eXooaW50MyB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenl6eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci56eXp5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5enoo
aW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp4eChpbnQzIHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci56enh5KGludDMgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnp6eHooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp5eChpbnQzIHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56enl5KGludDMgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnp6eXooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp6
eChpbnQzIHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56enp5KGludDMgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp6enooaW50MyB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3IueHh4eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHh5KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4eHooaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3IueHh4dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54
eHl4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4eXkoaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh5eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci54eHl3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh4engoaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh6eShpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci54eHp6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnh4encoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh3eChpbnQ0IHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eHd5KGludDQgdikgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnh4d3ooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHh3dyhp
bnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eXh4KGludDQgdikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnh5eHkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3IueHl4eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eXh3KGludDQgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eXgoaW50NCB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3IueHl5eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54eXl6
KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5eXcoaW50NCB2KSB7CisgICAg
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3IueHl6eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci54eXp5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5enooaW50NCB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHl6dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci54eXp3PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQu
eiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci54eXd4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh5d3ko
aW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHl3eihpbnQ0IHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci54eXd6PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICBy
ZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci54eXd3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnh6eHgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHp4eShpbnQ0IHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enh6KGludDQgdikgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnh6eHcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHp5eChp
bnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enl5KGludDQgdikgeworICAgIGlu
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitpbnQ0IG9wZXJhdG9yLnh6eXooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0
b3IueHp5dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enl3PShpbnQ0IHYs
IGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAg
ICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enp4KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh6enkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3IueHp6eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54enp3KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh6d3goaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IueHp3eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci54end5PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAg
ICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54
end6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh6d3coaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHd4eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci54d3h5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh3eHooaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHd4dyhpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci54d3l4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnh3eXkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHd5eihpbnQ0IHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci54d3l6PShpbnQ0IHYsIGludDQgYykgeworICAgIGlu
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsK
KyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci54d3l3KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnh3engoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHd6eShpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54d3p5PShpbnQ0IHYsIGludDQgYykgewor
ICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9
IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54d3p6KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnh3encoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueHd3
eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci54d3d5KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnh3d3ooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3IueHd3dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eHh4KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eHkoaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3IueXh4eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55
eHh3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eXgoaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh5eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci55eHl6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl4eXcoaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh6eChpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci55eHp5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnl4enooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh6dyhpbnQ0IHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eHp3PShpbnQ0IHYsIGludDQgYykgeworICAgIGlu
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci55eHd4KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnl4d3koaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXh3eihpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eHd6PShpbnQ0IHYsIGludDQgYykgewor
ICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9
IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eHd3KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnl5eHgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl4
eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXh6KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5eHcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3IueXl5eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55eXl5KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5eXooaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3IueXl5dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55
eXp4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5enkoaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl6eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci55eXp3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl5d3goaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXl3eShpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci55eXd6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9y
Lnl5d3coaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXp4eChpbnQ0IHYpIHsK
KyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enh5KGludDQgdikgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnl6eHooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXp4dyhp
bnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enh3PShpbnQ0IHYsIGludDQgYykg
eworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQu
eiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enl4KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnl6eXkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
eXp5eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enl3KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6engoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3IueXp6eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55enp6KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6encoaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3IueXp3eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci55end4PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAg
ICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55
end5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl6d3ooaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXp3dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci55d3h4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl3eHkoaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXd4eihpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci55d3h6PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1
bHQueCA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci55d3h3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl3
eXgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXd5eShpbnQ0IHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci55d3l6KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnl3eXcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXd6eChpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55d3p4PShpbnQ0IHYsIGludDQgYykgewor
ICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9
IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55d3p5KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnl3enooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3IueXd6
dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55d3d4KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnl3d3koaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3IueXd3eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci55d3d3KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4eHgoaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3Iuenh4eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56
eHh6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4eHcoaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh5eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci56eHl5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4eXooaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh5dyhpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci56eHl3PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1
bHQueSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci56eHp4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp4
enkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh6eihpbnQ0IHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci56eHp3KGludDQgdikgeworICAgIGludDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9w
ZXJhdG9yLnp4d3goaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenh3eShpbnQ0
IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHd5PShpbnQ0IHYsIGludDQgYykgewor
ICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9
IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eHd6KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnp4d3coaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenl4
eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXh5KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5eHooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3Iuenl4dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXh3PShpbnQ0
IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsK
KyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9
IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXl4KGludDQgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5eXkoaW50NCB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3Iuenl5eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56eXl3
KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5engoaW50NCB2KSB7CisgICAg
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3Iuenl6eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci56eXp6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5encoaW50NCB2
KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenl3eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci56eXd4PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQu
dyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci56eXd5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp5d3oo
aW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenl3dyhpbnQ0IHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci56enh4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnp6eHkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp4eihpbnQ0IHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56enh3KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnp6eXgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp5
eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56enl6KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp6eXcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3Iuenp6eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56enp5KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp6enooaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3Iuenp6dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56
end4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp6d3koaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuenp3eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci56end3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp3eHgoaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuend4eShpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci56d3h5PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1
bHQueCA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci56d3h6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp3
eHcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuend5eChpbnQ0IHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci56d3l4PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAg
ICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci56d3l5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnp3eXooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuend5dyhpbnQ0IHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56d3p4KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnp3enkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iuend6
eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56d3p3KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp3d3goaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3Iuend3eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci56d3d6KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnp3d3coaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3Iud3h4eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53
eHh5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd4eHooaW50NCB2KSB7Cisg
ICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3h4dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBv
cGVyYXRvci53eHl4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd4eXkoaW50
NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3h5eihpbnQ0IHYpIHsKKyAgICBpbnQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraW50NCBvcGVyYXRvci53eHl6PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1
bHQueSA9IGMuejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aW50NCBvcGVyYXRvci53eHl3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd4
engoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3h6eShpbnQ0IHYpIHsKKyAg
ICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraW50NCBvcGVyYXRvci53eHp5PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAg
ICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci53eHp6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnd4encoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3h3eChpbnQ0IHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eHd5KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnd4d3ooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3h3
dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eXh4KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5eHkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3Iud3l4eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eXh6PShpbnQ0
IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsK
KyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQueiA9
IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eXh3KGludDQgdikg
eworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5eXgoaW50NCB2KSB7CisgICAgaW50NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2lu
dDQgb3BlcmF0b3Iud3l5eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53eXl6
KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5eXcoaW50NCB2KSB7CisgICAg
aW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2ludDQgb3BlcmF0b3Iud3l6eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVy
YXRvci53eXp4PShpbnQ0IHYsIGludDQgYykgeworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsK
KyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci53eXp5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5enooaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3l6dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci53eXd4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd5d3ko
aW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3l3eihpbnQ0IHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci53eXd3KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnd6eHgoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3p4eShpbnQ0IHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enh5PShpbnQ0IHYsIGludDQgYykgeworICAg
IGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMu
eTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enh6KGludDQgdikgeworICAgIGludDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0
IG9wZXJhdG9yLnd6eHcoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3p5eChp
bnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enl4PShpbnQ0IHYsIGludDQgYykg
eworICAgIGludDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQu
eiA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enl5KGludDQgdikgeworICAgIGludDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitpbnQ0IG9wZXJhdG9yLnd6eXooaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iu
d3p5dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enp4KGludDQgdikgewor
ICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd6enkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQg
b3BlcmF0b3Iud3p6eihpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53enp3KGlu
dDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd6d3goaW50NCB2KSB7CisgICAgaW50
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2ludDQgb3BlcmF0b3Iud3p3eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRv
ci53end6KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd6d3coaW50NCB2KSB7
CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3d4eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50
NCBvcGVyYXRvci53d3h5KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd3eHoo
aW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3d4dyhpbnQ0IHYpIHsKKyAgICBp
bnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraW50NCBvcGVyYXRvci53d3l4KGludDQgdikgeworICAgIGludDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJh
dG9yLnd3eXkoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3d5eihpbnQ0IHYp
IHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53d3l3KGludDQgdikgeworICAgIGludDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citp
bnQ0IG9wZXJhdG9yLnd3engoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3BlcmF0b3Iud3d6
eShpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53d3p6KGludDQgdikgeworICAg
IGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd3encoaW50NCB2KSB7CisgICAgaW50NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2ludDQgb3Bl
cmF0b3Iud3d3eChpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
dzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraW50NCBvcGVyYXRvci53d3d5KGludDQg
dikgeworICAgIGludDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitpbnQ0IG9wZXJhdG9yLnd3d3ooaW50NCB2KSB7CisgICAgaW50NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2ludDQgb3BlcmF0b3Iud3d3dyhpbnQ0IHYpIHsKKyAgICBpbnQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3Iu
eHgoaGFsZjIgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3Iu
eHkoaGFsZjIgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3Iu
eHk9KGhhbGYyIHYsIGhhbGYyIGMpIHsKKyAgICBoYWxmMiByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMiBvcGVyYXRvci55eChoYWxmMiB2KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMiBvcGVyYXRvci55eD0oaGFsZjIgdiwgaGFsZjIgYykgeworICAgIGhhbGYyIHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnl5KGhhbGYyIHYpIHsKKyAgICBoYWxmMiByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnh4KGhhbGYzIHYpIHsKKyAgICBoYWxmMiByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnh5KGhhbGYzIHYpIHsKKyAgICBoYWxmMiByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh5PShoYWxmMyB2LCBoYWxmMiBjKSB7CisgICAg
aGFsZjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IueHooaGFsZjMgdikgewor
ICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHo9KGhhbGYzIHYsIGhh
bGYyIGMpIHsKKyAgICBoYWxmMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAg
IHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci55
eChoYWxmMyB2KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55
eD0oaGFsZjMgdiwgaGFsZjIgYykgeworICAgIGhhbGYzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0
LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYyIG9wZXJhdG9yLnl5KGhhbGYzIHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYyIG9wZXJhdG9yLnl6KGhhbGYzIHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzIG9wZXJhdG9yLnl6PShoYWxmMyB2LCBoYWxmMiBjKSB7CisgICAgaGFsZjMgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IuengoaGFsZjMgdikgeworICAgIGhhbGYyIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iueng9KGhhbGYzIHYsIGhhbGYyIGMpIHsKKyAgICBo
YWxmMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci56eShoYWxmMyB2KSB7Cisg
ICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56eT0oaGFsZjMgdiwgaGFs
ZjIgYykgeworICAgIGhhbGYzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAg
cmVzdWx0LnkgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnp6
KGhhbGYzIHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnh4
KGhhbGY0IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnh5
KGhhbGY0IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5
PShoYWxmNCB2LCBoYWxmMiBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQu
eCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjIgb3BlcmF0b3IueHooaGFsZjQgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3IueHo9KGhhbGY0IHYsIGhhbGYyIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci54dyhoYWxmNCB2KSB7CisgICAgaGFsZjIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54dz0oaGFsZjQgdiwgaGFsZjIgYykgeworICAgIGhh
bGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnl4KGhhbGY0IHYpIHsKKyAg
ICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4PShoYWxmNCB2LCBoYWxm
MiBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICBy
ZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IueXko
aGFsZjQgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IueXoo
aGFsZjQgdikgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXo9
KGhhbGY0IHYsIGhhbGYyIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55
ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
MiBvcGVyYXRvci55dyhoYWxmNCB2KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci55dz0oaGFsZjQgdiwgaGFsZjIgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7
CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnp4KGhhbGY0IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4PShoYWxmNCB2LCBoYWxmMiBjKSB7CisgICAgaGFs
ZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjIgb3BlcmF0b3IuenkoaGFsZjQgdikgeworICAg
IGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenk9KGhhbGY0IHYsIGhhbGYy
IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJl
c3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci56eiho
YWxmNCB2KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci56dyho
YWxmNCB2KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56dz0o
aGFsZjQgdiwgaGFsZjIgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYy
IG9wZXJhdG9yLnd4KGhhbGY0IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnd4PShoYWxmNCB2LCBoYWxmMiBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjIgb3BlcmF0b3Iud3koaGFsZjQgdikgeworICAgIGhhbGYyIHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3k9KGhhbGY0IHYsIGhhbGYyIGMpIHsKKyAgICBoYWxm
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMiBvcGVyYXRvci53eihoYWxmNCB2KSB7CisgICAg
aGFsZjIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53ej0oaGFsZjQgdiwgaGFsZjIg
YykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVz
dWx0LnogPSBjLnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIG9wZXJhdG9yLnd3KGhh
bGY0IHYpIHsKKyAgICBoYWxmMiByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh4eCho
YWxmMiB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmMyBvcGVyYXRvci54eHkoaGFsZjIgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHl4KGhhbGYyIHYpIHsKKyAg
ICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJh
dG9yLnh5eShoYWxmMiB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55eHgoaGFsZjIgdikgeworICAgIGhhbGYzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXh5KGhhbGYy
IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGYzIG9wZXJhdG9yLnl5eChoYWxmMiB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55eXkoaGFsZjIgdikgeworICAgIGhh
bGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iu
eHh4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYzIG9wZXJhdG9yLnh4eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54eHooaGFsZjMgdikg
eworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMg
b3BlcmF0b3IueHl4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh5eShoYWxmMyB2KSB7CisgICAgaGFsZjMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54eXoo
aGFsZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjMgb3BlcmF0b3IueHl6PShoYWxmMyB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjMgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICBy
ZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHp4
KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzIG9wZXJhdG9yLnh6eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54enk9KGhhbGYzIHYsIGhh
bGYzIGMpIHsKKyAgICBoYWxmMyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAg
IHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMyBvcGVyYXRvci54enooaGFsZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXh4KGhhbGYzIHYpIHsK
KyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9w
ZXJhdG9yLnl4eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55eHooaGFsZjMgdikgeworICAgIGhhbGYzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXh6PSho
YWxmMyB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9
IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXl4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl5eSho
YWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmMyBvcGVyYXRvci55eXooaGFsZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXp4KGhhbGYzIHYpIHsKKyAg
ICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJh
dG9yLnl6eD0oaGFsZjMgdiwgaGFsZjMgYykgeworICAgIGhhbGYzIHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl6eShoYWxmMyB2KSB7Cisg
ICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVy
YXRvci55enooaGFsZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenh4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp4eShoYWxm
MyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmMyBvcGVyYXRvci56eHk9KGhhbGYzIHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmMyByZXN1bHQg
PSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3Vs
dC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56eHooaGFs
ZjMgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjMgb3BlcmF0b3Iuenl4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp5eD0oaGFsZjMgdiwgaGFsZjMg
YykgeworICAgIGhhbGYzIHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVz
dWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYzIG9wZXJhdG9yLnp5eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56eXooaGFsZjMgdikgeworICAg
IGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0
b3Iuenp4KGhhbGYzIHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp6eShoYWxmMyB2KSB7CisgICAgaGFsZjMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56enooaGFsZjMg
dikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjMgb3BlcmF0b3IueHh4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh4eShoYWxmNCB2KSB7CisgICAgaGFs
ZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54
eHooaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjMgb3BlcmF0b3IueHh3KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh5eChoYWxmNCB2KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBv
cGVyYXRvci54eXkoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHl6KGhhbGY0IHYpIHsKKyAgICBoYWxmMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5ej0o
aGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lngg
PSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh5dyhoYWxmNCB2KSB7CisgICAgaGFsZjMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXc9
KGhhbGY0IHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54
ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54engoaGFsZjQgdikgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHp5
KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnh6eT0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAg
cmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh6
eihoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMyBvcGVyYXRvci54encoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp3PShoYWxmNCB2LCBo
YWxmMyBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAg
ICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjMgb3BlcmF0b3IueHd4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnh3eShoYWxmNCB2KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci54d3k9KGhhbGY0IHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci54d3ooaGFsZjQgdikg
eworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueHd6PShoYWxmNCB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueHd3KGhhbGY0IHYp
IHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYz
IG9wZXJhdG9yLnl4eChoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55eHkoaGFsZjQgdikgeworICAgIGhhbGYz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXh6
KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnl4ej0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAg
cmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl4
dyhoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci55eHc9KGhhbGY0IHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmNCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAg
IHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55
eXgoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjMgb3BlcmF0b3IueXl5KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl5eihoYWxmNCB2KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBv
cGVyYXRvci55eXcoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXp4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6eD0o
aGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnkg
PSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl6eShoYWxmNCB2KSB7CisgICAgaGFsZjMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci55enoo
aGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjMgb3BlcmF0b3IueXp3KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6dz0oaGFsZjQgdiwgaGFs
ZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnkgPSBjLng7CisgICAg
cmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzIG9wZXJhdG9yLnl3eChoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55d3g9KGhhbGY0IHYsIGhh
bGYzIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAg
IHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMyBvcGVyYXRvci55d3koaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3IueXd6KGhhbGY0IHYpIHsK
KyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnl3ej0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnogPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnl3dyhoYWxmNCB2KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBv
cGVyYXRvci56eHgoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenh5KGhhbGY0IHYpIHsKKyAgICBoYWxmMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4eT0o
aGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnog
PSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp4eihoYWxmNCB2KSB7CisgICAgaGFsZjMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56eHco
aGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iuenh3PShoYWxmNCB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICBy
ZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenl4
KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnp5eD0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJl
c3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAg
cmVzdWx0LnggPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp5
eShoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMyBvcGVyYXRvci56eXooaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenl3KGhhbGY0IHYpIHsK
KyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnp5dz0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp6eChoYWxmNCB2KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBv
cGVyYXRvci56enkoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iuenp6KGhhbGY0IHYpIHsKKyAgICBoYWxmMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnp6dyho
YWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmMyBvcGVyYXRvci56d3goaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuend4PShoYWxmNCB2LCBoYWxm
MyBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICBy
ZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjMgb3BlcmF0b3Iuend5KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3eT0oaGFsZjQgdiwgaGFs
ZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAg
cmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzIG9wZXJhdG9yLnp3eihoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci56d3coaGFsZjQgdikgewor
ICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3Bl
cmF0b3Iud3h4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnd4eShoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHk9KGhh
bGY0IHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0g
Yy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci53eHooaGFsZjQgdikgeworICAgIGhhbGYzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3h6PSho
YWxmNCB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9
IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iud3h3KGhhbGY0IHYpIHsKKyAgICBoYWxmMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnd5eCho
YWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci53eXg9KGhhbGY0IHYsIGhhbGYzIGMpIHsKKyAgICBoYWxmNCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJl
c3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci53eXko
aGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjMgb3BlcmF0b3Iud3l6KGhhbGY0IHYpIHsKKyAgICBoYWxmMyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd5ej0oaGFsZjQgdiwgaGFs
ZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAg
cmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYzIG9wZXJhdG9yLnd5dyhoYWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBvcGVyYXRvci53engoaGFsZjQgdikgewor
ICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3Iud3p4PShoYWxmNCB2LCBoYWxmMyBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iud3p5KGhhbGY0IHYpIHsK
KyAgICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnd6eT0oaGFsZjQgdiwgaGFsZjMgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnkgPSBj
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnd6eihoYWxmNCB2KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMyBv
cGVyYXRvci53encoaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iud3d4KGhhbGY0IHYpIHsKKyAgICBoYWxmMyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIG9wZXJhdG9yLnd3eSho
YWxmNCB2KSB7CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmMyBvcGVyYXRvci53d3ooaGFsZjQgdikgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjMgb3BlcmF0b3Iud3d3KGhhbGY0IHYpIHsKKyAg
ICBoYWxmMyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnh4eHgoaGFsZjIgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh4eShoYWxm
MiB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHl4KGhhbGYyIHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4eXkoaGFsZjIgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueHl4eChoYWxmMiB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXh5
KGhhbGYyIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5eXgoaGFsZjIgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl5eShoYWxmMiB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci55eHh4KGhhbGYyIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnl4eHkoaGFsZjIgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh5eChoYWxmMiB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHl5KGhhbGYyIHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnl5eHgoaGFsZjIgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3IueXl4eShoYWxmMiB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXl4KGhh
bGYyIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5eXkoaGFsZjIgdikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci54eHh5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4
eHooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh5eChoYWxmMyB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnh4eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3IueHh6eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHp5KGhhbGYz
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4enooaGFsZjMgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3IueHl4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci54eXh5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5eHoo
aGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl5eChoYWxmMyB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnh5eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
eHl6eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXp5KGhhbGYzIHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5enooaGFsZjMgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3IueHp4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci54enh5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6eHooaGFs
ZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp5eChoYWxmMyB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54enl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnh6eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp6
eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54enp5KGhhbGYzIHYpIHsK
KyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6enooaGFsZjMgdikgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3IueXh4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci55eHh5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4eHooaGFsZjMg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh5eChoYWxmMyB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci55eHl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnl4eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh6eCho
YWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHp5KGhhbGYzIHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3IueXl4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55
eXh5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5eHooaGFsZjMgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl5eChoYWxmMyB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci55eXl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnl5eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl6eChoYWxm
MyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXp5KGhhbGYzIHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueXp4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enh5
KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6eHooaGFsZjMgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXp5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci55enl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnl6eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXp6eChoYWxmMyB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enp5KGhhbGYzIHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnl6enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3Iuenh4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHh5KGhh
bGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4eHooaGFsZjMgdikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci56eHl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4
eXooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
ejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh6eChoYWxmMyB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHp5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnp4enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3Iuenl4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eXh5KGhhbGYz
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5eHooaGFsZjMgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3Iuenl5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci56eXl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5eXoo
aGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenl6eChoYWxmMyB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eXp5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnp5enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
enp4eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56enh5KGhhbGYzIHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6eHooaGFsZjMgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iuenp5eChoYWxmMyB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci56enl5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6eXooaGFs
ZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenp6eChoYWxmMyB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56enp5KGhhbGYzIHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnp6enooaGFsZjMgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh4
eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHh5KGhhbGY0IHYpIHsK
KyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3IueHh4dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci54eHl4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4eXkoaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh5eihoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci54eHl3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnh4engoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh6eSho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eHp6KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3IueHh3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54
eHd5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh4d3ooaGFsZjQgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHh3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci54eXh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnh5eHkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl4eihoYWxm
NCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXh3KGhhbGY0IHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5eXgoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueHl5eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXl6
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5eXcoaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl6eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci54eXp5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnh5enooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl6dyhoYWxmNCB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54eXp3PShoYWxmNCB2LCBoYWxmNCBjKSB7
CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQu
eSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl3eChoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci54eXd5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnh5d3ooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHl3ej0o
aGFsZjQgdiwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lngg
PSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVz
dWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh5d3co
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp4eChoYWxmNCB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54enh5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnh6eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
eHp4dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54enl4KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6eXkoaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3IueHp5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci54enl3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6eXc9KGhh
bGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0g
Yy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3Vs
dC53ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54enp4KGhh
bGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6enkoaGFsZjQgdikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp6eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci54enp3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh6
d3goaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp3eShoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54end5PShoYWxmNCB2LCBoYWxmNCBjKSB7Cisg
ICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9
IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHp3eihoYWxmNCB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci54end3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnh3eHgoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHd4eShoYWxm
NCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54d3h6KGhhbGY0IHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3eHcoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueHd5eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54d3l5
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3eXooaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHd5ej0oaGFsZjQgdiwgaGFsZjQgYykgeworICAg
IGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBj
Lnk7CisgICAgcmVzdWx0LnkgPSBjLno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3eXcoaGFsZjQgdikgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3IueHd6eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci54d3p5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0Lncg
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3enk9KGhhbGY0
IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54
OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC55
ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci54d3p6KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3encoaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3IueHd3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci54d3d5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnh3d3oo
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueHd3dyhoYWxmNCB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnl4eHkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
eXh4eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHh3KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4eXgoaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3IueXh5eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci55eHl6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl4eXcoaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh6eChoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHp5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnl4enooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh6
dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHp3PShoYWxmNCB2LCBo
YWxmNCBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAg
ICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQudyA9IGMu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXh3eChoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eHd5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnl4d3ooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3IueXh3ej0oaGFsZjQgdiwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7
CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnl4d3coaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl4eChoYWxm
NCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXh5KGhhbGY0IHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueXl4dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXl4
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5eXkoaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci55eXl3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnl5engoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl6eShoYWxmNCB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXp6KGhhbGY0IHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnl5encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3IueXl3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55eXd5KGhh
bGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl5d3ooaGFsZjQgdikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3IueXl3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci55enh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6
eHkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXp4eihoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enh3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnl6eHc9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1
bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJl
c3VsdC54ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci55enl4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnl6eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXp5eihoYWxm
NCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enl3KGhhbGY0IHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6engoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3IueXp6eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55enp6
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6encoaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXp3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci55end4PShoYWxmNCB2LCBoYWxmNCBjKSB7CisgICAgaGFsZjQgcmVzdWx0
ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1
bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3IueXp3eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci55end6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl6d3coaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXd4eChoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci55d3h5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnl3eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXd4ej0o
aGFsZjQgdiwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0Lnkg
PSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVz
dWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl3eHco
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3IueXd5eChoYWxmNCB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55d3l5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnl3eXooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
eXd5dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55d3p4KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl3eng9KGhhbGY0IHYsIGhhbGY0IGMpIHsK
KyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53
ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55d3p5KGhhbGY0IHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnl3enooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3IueXd6dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci55d3d4KGhh
bGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnl3d3koaGFsZjQgdikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3IueXd3eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci55d3d3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4
eHgoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh4eShoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHh6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnp4eHcoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3Iuenh5eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHl5KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4eXooaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3Iuenh5dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci56eHl3PShoYWxmNCB2LCBoYWxmNCBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9
IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3Iuenh6eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eHp5
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4enooaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh6dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci56eHd4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnp4d3koaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh3eT0oaGFsZjQg
diwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7
CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0Lnkg
PSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp4d3ooaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenh3dyhoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci56eXh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnp5eHkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenl4eiho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eXh3KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5eHc9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBo
YWxmNCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55
OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eXl4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnp5eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
enl5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eXl3KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5engoaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iuenl6eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci56eXp6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5encoaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenl3eChoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56eXd4PShoYWxmNCB2LCBoYWxmNCBjKSB7CisgICAgaGFs
ZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsK
KyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenl3eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci56eXd6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp5
d3coaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYu
dzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenp4eChoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56enh5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnp6eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3Iuenp4dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56enl4KGhhbGY0
IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0
LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6eXkoaGFsZjQgdikgeworICAgIGhh
bGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0
OworfQoraGFsZjQgb3BlcmF0b3Iuenp5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci56enl3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6engo
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuenp6eShoYWxmNCB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56enp6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnp6encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
enp3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56end5KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp6d3ooaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iuenp3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci56d3h4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3eHkoaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuend4eT0oaGFsZjQgdiwgaGFsZjQg
YykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVz
dWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3eHooaGFsZjQgdikgeworICAg
IGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjQgb3BlcmF0b3Iuend4dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci56d3l4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3
eXg9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAg
IHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56
d3l5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3eXooaGFsZjQgdikg
eworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuend5dyhoYWxmNCB2KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmNCBvcGVyYXRvci56d3p4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJh
dG9yLnp3enkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iuend6eihoYWxm
NCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56d3p3KGhhbGY0IHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3d3goaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3Iuend3eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci56d3d6
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnp3d3coaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3h4eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci53eHh5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnd4eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3h4dyhoYWxmNCB2
KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHl4KGhhbGY0IHYpIHsKKyAgICBoYWxm
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGY0IG9wZXJhdG9yLnd4eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3Bl
cmF0b3Iud3h5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHl6PSho
YWxmNCB2LCBoYWxmNCBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9
IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1
bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3h5dyho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHp4KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd4enkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3Iud3h6eT0oaGFsZjQgdiwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9
IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0
LnogPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnd4enooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
d3h6dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eHd4KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd4d3koaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iud3h3eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci53eHd3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd5eHgoaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3l4eShoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eXh6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnd5eHo9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC54
ID0gYy56OworICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBvcGVyYXRvci53eXh3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd5
eXgoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3l5eShoYWxmNCB2KSB7
CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eXl6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGY0IG9wZXJhdG9yLnd5eXcoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0
b3Iud3l6eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eXp4PShoYWxm
NCB2LCBoYWxmNCBjKSB7CisgICAgaGFsZjQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMu
eDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQu
eCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3l6eShoYWxm
NCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eXp6KGhhbGY0IHYpIHsKKyAgICBo
YWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGY0IG9wZXJhdG9yLnd5encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQg
b3BlcmF0b3Iud3l3eChoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53eXd5
KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd5d3ooaGFsZjQgdikgewor
ICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3l3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmNCBvcGVyYXRvci53enh4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9y
Lnd6eHkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3p4eT0oaGFsZjQg
diwgaGFsZjQgYykgeworICAgIGhhbGY0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7
CisgICAgcmVzdWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0Lnkg
PSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd6eHooaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3p4dyhoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci53enl4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnd6eXg9KGhhbGY0IHYsIGhhbGY0IGMpIHsKKyAgICBoYWxmNCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0g
Yy56OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBv
cGVyYXRvci53enl5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVz
dWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd6eXoo
aGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3p5dyhoYWxmNCB2KSB7Cisg
ICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53enp4KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0IG9wZXJhdG9yLnd6enkoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iu
d3p6eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53Owor
ICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53enp3KGhhbGY0IHYp
IHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd6d3goaGFsZjQgdikgeworICAgIGhhbGY0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQoraGFsZjQgb3BlcmF0b3Iud3p3eShoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVy
YXRvci53end6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd6d3coaGFs
ZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3d4eChoYWxmNCB2KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53d3h5KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
IG9wZXJhdG9yLnd3eHooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3d4
dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53d3l4KGhhbGY0IHYpIHsK
KyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd3eXkoaGFsZjQgdikgeworICAgIGhhbGY0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjQgb3BlcmF0b3Iud3d5eihoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRv
ci53d3l3KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd3engoaGFsZjQg
dikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3d6eShoYWxmNCB2KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBvcGVyYXRvci53d3p6KGhhbGY0IHYpIHsKKyAgICBoYWxmNCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0IG9w
ZXJhdG9yLnd3encoaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgb3BlcmF0b3Iud3d3eCho
YWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNCBvcGVyYXRvci53d3d5KGhhbGY0IHYpIHsKKyAg
ICBoYWxmNCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGY0IG9wZXJhdG9yLnd3d3ooaGFsZjQgdikgeworICAgIGhhbGY0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjQgb3BlcmF0b3Iud3d3dyhoYWxmNCB2KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iu
eHgoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0
b3IueHkoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3Bl
cmF0b3IueHk9KGZsb2F0MiB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0MiByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXgoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXg9KGZsb2F0MiB2LCBmbG9hdDIgYykgeworICAg
IGZsb2F0MiByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0g
Yy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXkoZmxvYXQyIHYp
IHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueHgoZmxvYXQz
IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueHkoZmxv
YXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHk9
KGZsb2F0MyB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDIgb3BlcmF0b3IueHooZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDMgb3BlcmF0b3IueHo9KGZsb2F0MyB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0MyBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXgoZmxvYXQzIHYpIHsKKyAgICBm
bG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXg9KGZsb2F0MyB2LCBmbG9h
dDIgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAg
IHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iu
eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0
b3IueXooZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3Bl
cmF0b3IueXo9KGZsb2F0MyB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IuengoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iueng9KGZsb2F0MyB2LCBmbG9hdDIgYykgeworICAg
IGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54ID0g
Yy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IuenkoZmxvYXQzIHYp
IHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iuenk9KGZsb2F0
MyB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0g
Yy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIg
b3BlcmF0b3IuenooZmxvYXQzIHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDIgb3BlcmF0b3IueHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDIgb3BlcmF0b3IueHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueHk9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCBy
ZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueHooZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHo9KGZsb2F0NCB2LCBmbG9h
dDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAg
IHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iu
eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3IueHc9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAg
IHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDIgb3BlcmF0b3IueXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXg9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZs
b2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXkoZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IueXooZmxvYXQ0IHYp
IHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXo9KGZsb2F0
NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0g
Yy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIg
b3BlcmF0b3IueXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueXc9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IuengoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iueng9KGZsb2F0NCB2LCBmbG9hdDIgYykg
eworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3Vs
dC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3IuenkoZmxv
YXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenk9
KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDIgb3BlcmF0b3IuenooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDIgb3BlcmF0b3IuencoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iuenc9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iud3goZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3g9KGZsb2F0NCB2LCBm
bG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54Owor
ICAgIHJlc3VsdC54ID0gYy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0
b3Iud3koZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3Iud3k9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iud3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDIgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3o9KGZsb2F0NCB2LCBmbG9hdDIgYykgeworICAg
IGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0g
Yy55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDIgb3BlcmF0b3Iud3coZmxvYXQ0IHYp
IHsKKyAgICBmbG9hdDIgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHh4KGZsb2F0
MiB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzIG9wZXJhdG9yLnh4eShmbG9hdDIgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54eXgoZmxvYXQyIHYpIHsK
KyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMg
b3BlcmF0b3IueHl5KGZsb2F0MiB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl4eChmbG9hdDIgdikgeworICAgIGZs
b2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRv
ci55eHkoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXl4KGZsb2F0MiB2KSB7CisgICAgZmxvYXQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl5eShm
bG9hdDIgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0MyBvcGVyYXRvci54eHgoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHh5KGZsb2F0MyB2
KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQzIG9wZXJhdG9yLnh4eihmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54eXgoZmxvYXQzIHYpIHsKKyAg
ICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3Bl
cmF0b3IueHl5KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnh5eihmbG9hdDMgdikgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54
eXo9KGZsb2F0MyB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJl
c3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHp4KGZsb2F0MyB2KSB7Cisg
ICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9w
ZXJhdG9yLnh6eShmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54enk9KGZsb2F0MyB2LCBmbG9hdDMgYykg
eworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3Vs
dC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDMgb3BlcmF0b3IueHp6KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl4eChmbG9hdDMgdikgewor
ICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBv
cGVyYXRvci55eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXh6KGZsb2F0MyB2KSB7CisgICAgZmxv
YXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9y
Lnl4ej0oZmxvYXQzIHYsIGZsb2F0MyBjKSB7CisgICAgZmxvYXQzIHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55eXgoZmxvYXQzIHYpIHsK
KyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMg
b3BlcmF0b3IueXl5KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl5eihmbG9hdDMgdikgeworICAgIGZs
b2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRv
ci55engoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXp4PShmbG9hdDMgdiwgZmxvYXQzIGMpIHsKKyAg
ICBmbG9hdDMgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9
IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
IG9wZXJhdG9yLnl6eShmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55enooZmxvYXQzIHYpIHsKKyAgICBm
bG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0
b3Iuenh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp4eShmbG9hdDMgdikgeworICAgIGZsb2F0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56eHk9
KGZsb2F0MyB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3Vs
dC56ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iuenh6KGZsb2F0MyB2KSB7CisgICAg
ZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJh
dG9yLnp5eChmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56eXg9KGZsb2F0MyB2LCBmbG9hdDMgYykgewor
ICAgIGZsb2F0MyByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55
ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDMgb3BlcmF0b3Iuenl5KGZsb2F0MyB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp5eihmbG9hdDMgdikgeworICAg
IGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVy
YXRvci56engoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iuenp5KGZsb2F0MyB2KSB7CisgICAgZmxvYXQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp6
eihmbG9hdDMgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MyBvcGVyYXRvci54eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHh5KGZsb2F0
NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzIG9wZXJhdG9yLnh4eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci54eHcoZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMg
b3BlcmF0b3IueHl4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnh5eShmbG9hdDQgdikgeworICAgIGZs
b2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRv
ci54eXooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl6PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueSA9
IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
IG9wZXJhdG9yLnh5dyhmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXc9KGZsb2F0NCB2LCBmbG9hdDMg
YykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJl
c3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDMgb3BlcmF0b3IueHp4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnh6eShmbG9hdDQgdikg
eworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci54enk9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQg
PSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3Vs
dC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHp6KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQzIG9wZXJhdG9yLnh6dyhmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54enc9KGZsb2F0NCB2
LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54
OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueHd4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnh3eShm
bG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci54d3k9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0
NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55Owor
ICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0
b3IueHd6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh3ej0oZmxvYXQ0IHYsIGZsb2F0MyBjKSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0Lncg
PSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
MyBvcGVyYXRvci54d3coZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXh4KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJh
dG9yLnl4eShmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55eHooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh6
PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1
bHQueSA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl4dyhmbG9hdDQgdikgeworICAg
IGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci55eHc9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC53ID0g
Yy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXl4KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQzIG9wZXJhdG9yLnl5eShmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55eXooZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3Bl
cmF0b3IueXl3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl6eChmbG9hdDQgdikgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55
eng9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC54ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXp5KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9w
ZXJhdG9yLnl6eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci55encoZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
eXp3PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICBy
ZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnl3eChmbG9hdDQgdikgewor
ICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci55d3g9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2
OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC54
ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXd5KGZsb2F0
NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQzIG9wZXJhdG9yLnl3eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55d3o9KGZsb2F0NCB2LCBm
bG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54Owor
ICAgIHJlc3VsdC53ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3IueXd3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp4eChmbG9h
dDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0MyBvcGVyYXRvci56eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh5PShmbG9hdDQgdiwg
ZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsK
KyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp4eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56eHcoZmxv
YXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3Iuenh3PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQg
cmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAg
ICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9y
Lnp5eChmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXg9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAg
IGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0g
Yy55OworICAgIHJlc3VsdC54ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMg
b3BlcmF0b3Iuenl5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp5eihmbG9hdDQgdikgeworICAgIGZs
b2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRv
ci56eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl3PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQueSA9
IGMueTsKKyAgICByZXN1bHQudyA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQz
IG9wZXJhdG9yLnp6eChmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56enkoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0
b3Iuenp6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp6dyhmbG9hdDQgdikgeworICAgIGZsb2F0MyBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci56d3go
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iuend4PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9h
dDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsK
KyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJh
dG9yLnp3eShmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3k9KGZsb2F0NCB2LCBmbG9hdDMgYykgewor
ICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC53
ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDMgb3BlcmF0b3Iuend6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnp3dyhmbG9hdDQgdikgeworICAg
IGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVy
YXRvci53eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iud3h5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQz
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4
eT0oZmxvYXQ0IHYsIGZsb2F0MyBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LncgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci53eHooZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3Iud3h6PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsK
KyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueCA9IGMueTsKKyAgICByZXN1bHQueiA9
IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnd4dyhmbG9hdDQg
dikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0MyBvcGVyYXRvci53eXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3l4PShmbG9hdDQgdiwgZmxv
YXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAg
ICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQzIG9wZXJhdG9yLnd5eShmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci53eXooZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3Iud3l6PShmbG9hdDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVz
dWx0ID0gdjsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICBy
ZXN1bHQueiA9IGMuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnd5
dyhmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0MyBvcGVyYXRvci53engoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p4PShmbG9h
dDQgdiwgZmxvYXQzIGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQudyA9
IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnd6eShmbG9hdDQgdikgeworICAgIGZsb2F0
MyByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53
enk9KGZsb2F0NCB2LCBmbG9hdDMgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC53ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iud3p6KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQzIG9w
ZXJhdG9yLnd6dyhmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci53d3goZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDMgb3BlcmF0b3Iu
d3d5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQzIHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQzIG9wZXJhdG9yLnd3eihmbG9hdDQgdikgeworICAgIGZsb2F0MyByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0MyBvcGVyYXRvci53d3coZmxv
YXQ0IHYpIHsKKyAgICBmbG9hdDMgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJl
c3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueHh4eChmbG9hdDIgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci54eHh5KGZsb2F0MiB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4
eXgoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh5eShmbG9hdDIg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXh4KGZsb2F0MiB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5eHkoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IueHl5eChmbG9hdDIgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci54eXl5KGZsb2F0MiB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4eHgo
ZmxvYXQyIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh4eShmbG9hdDIgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHl4KGZsb2F0MiB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4eXkoZmxvYXQyIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueXl4eChmbG9hdDIgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci55eXh5KGZsb2F0MiB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5eXgoZmxv
YXQyIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl5eShmbG9hdDIgdikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnh4eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3IueHh4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54
eHl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4eXkoZmxvYXQz
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh5eihmbG9hdDMgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1
bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnh4enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3IueHh6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXh4
KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5eHkoZmxvYXQzIHYp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl4eihmbG9hdDMgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnh5eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3IueHl5eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXp4KGZs
b2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5enkoZmxvYXQzIHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl6eihmbG9hdDMgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci54enh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnh6eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
eHp4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54enl4KGZsb2F0
MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6eXkoZmxvYXQzIHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp5eihmbG9hdDMgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci54enp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYu
ejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnh6enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp6
eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHh4KGZsb2F0MyB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4eHkoZmxvYXQzIHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci55eHl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnl4eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh5eihm
bG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHp4KGZsb2F0MyB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4enkoZmxvYXQzIHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IueXh6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci55eXh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnl5eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl4eihmbG9h
dDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXl4KGZsb2F0MyB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueXl5eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci55eXp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5
enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0g
di55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl6eihmbG9hdDMg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55enh4KGZsb2F0MyB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IueXp4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci55enl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6eXko
ZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXp5eihmbG9hdDMgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55enp4KGZsb2F0MyB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueXp6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci56eHh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
ejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQu
dyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4eHkoZmxv
YXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJl
c3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh4eihmbG9hdDMgdikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2
Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICBy
ZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnp4eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0g
di55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3Iuenh5eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56
eHp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4enkoZmxvYXQz
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh6eihmbG9hdDMgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7
CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXh4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnp5eHkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3Iuenl4eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXl4
KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5eXkoZmxvYXQzIHYp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl5eihmbG9hdDMgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXp4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnp5enkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3Iuenl6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enh4KGZs
b2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp6eHkoZmxvYXQzIHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp4eihmbG9hdDMgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci56enl4KGZsb2F0MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnp6eXkoZmxvYXQzIHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
enp5eihmbG9hdDMgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0Lncg
PSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enp4KGZsb2F0
MyB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp6enkoZmxvYXQzIHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp6eihmbG9hdDMgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci54eHh4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnh4eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh4
eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHh3KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4eXgoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci54eHl6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnh4eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di54OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh6eChm
bG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHp5KGZsb2F0NCB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh4enooZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IueHh6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci54eHd4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnh4d3koZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHh3eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eHd3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueHl4eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2
Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci54eXh6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5
eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl5eChmbG9hdDQg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXl5KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5eXooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IueHl5dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci54eXp4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1
bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5enko
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl6eihmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54eXp3KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnh5enc9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZs
b2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55
OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl3eChmbG9hdDQgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci54eXd5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnh5d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHl3
ej0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVz
dWx0LnggPSBjLng7CisgICAgcmVzdWx0LnkgPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7Cisg
ICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci54eXd3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eDsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6eHgoZmxv
YXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJl
c3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp4eShmbG9hdDQgdikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2
Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54enh6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICBy
ZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnh6eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0g
di54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3IueHp5eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54
enl5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6eXooZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp5dyhmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54enl3PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1bHQueiA9
IGMueTsKKyAgICByZXN1bHQueSA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6engoZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IueHp6eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci54enp6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnh6encoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp3eChmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54end5KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh6d3k9KGZsb2F0NCB2LCBmbG9hdDQgYykgewor
ICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC54ID0gYy54OworICAgIHJlc3VsdC56
ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56OworICAgIHJlc3VsdC55ID0gYy53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHp3eihmbG9hdDQgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci54end3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnh3eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3IueHd4eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54d3h6KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICBy
ZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh3eHcoZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0g
di53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHd5eChmbG9hdDQgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci54d3l5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnh3eXooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
eHd5ej0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnggPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnkgPSBjLno7
CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci54d3l3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh3engo
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHd6eShmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54d3p5PShmbG9hdDQgdiwgZmxvYXQ0IGMp
IHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueCA9IGMueDsKKyAgICByZXN1
bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMuejsKKyAgICByZXN1bHQueSA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnh3enooZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHd6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVz
dWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci54d3d4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
dzsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnh3d3koZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi54OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueHd3
eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lng7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci54d3d3KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueDsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4eHgoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54Owor
ICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh4eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0
LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci55eHh6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnl4eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh5eChm
bG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHl5KGZsb2F0NCB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4eXooZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IueXh5dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci55eHp4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnl4enkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh6eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHp3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl4enc9KGZsb2F0NCB2LCBmbG9hdDQgYykgewor
ICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC55ID0gYy54OworICAgIHJlc3VsdC54
ID0gYy55OworICAgIHJlc3VsdC56ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXh3eChmbG9hdDQgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eHd5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnl4d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3IueXh3ej0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7Cisg
ICAgcmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBj
Lno7CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci55eHd3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5
eHgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55Owor
ICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0g
di54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl4eShmbG9hdDQg
dikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0
LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXh6KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsK
KyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3Vs
dC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3IueXl5eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci55eXl5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5eXoo
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl5dyhmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXp4KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5enkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueXl6eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci55eXp3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYu
eTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQu
dyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl5d3goZmxv
YXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJl
c3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54Owor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXl3eShmbG9hdDQgdikgewor
ICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2
Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55eXd6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0
IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICBy
ZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0Owor
fQorZmxvYXQ0IG9wZXJhdG9yLnl5d3coZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0Owor
ICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0g
di53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3IueXp4eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAg
cmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55
enh5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsK
KyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9
IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6eHooZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3Vs
dC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXp4dyhmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55enh3PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQueiA9
IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6eXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAg
IHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3IueXp5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0Lnog
PSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci55enl6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnl6eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55
OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXp6eChmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVz
dWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55enp5KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6enooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3IueXp6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci55end4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICBy
ZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6
d3g9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC55ID0gYy54OworICAgIHJlc3VsdC56ID0gYy55OworICAgIHJlc3VsdC53ID0gYy56Owor
ICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3IueXp3eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnk7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55end6KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl6d3coZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXd4eChmbG9hdDQgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAg
cmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci55d3h5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9
IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnl3eHooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
eXd4ej0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAg
cmVzdWx0LnkgPSBjLng7CisgICAgcmVzdWx0LncgPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7
CisgICAgcmVzdWx0LnogPSBjLnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci55d3h3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl3eXgo
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAg
IHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXd5eShmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0Lnkg
PSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55d3l6KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnl3eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi55OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3IueXd6eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci55d3p4PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueSA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueiA9IGMu
ejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnl3enkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXd6
eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci55d3p3KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnl3d3goZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi55OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3IueXd3eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnk7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci55d3d6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYueTsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnl3d3coZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di55OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh4eChm
bG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHh5KGZsb2F0NCB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4eHooZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAg
IHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh4dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0Lnog
PSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci56eHl4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnp4eXkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh5eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHl3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4eXc9KGZsb2F0NCB2LCBmbG9hdDQgYykgewor
ICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC54
ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56OworICAgIHJlc3VsdC53ID0gYy53OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh6eChmbG9hdDQgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7Cisg
ICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHp5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQu
eiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnp4enooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3Iuenh6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHd4KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4d3koZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenh3eT0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7
CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0
LnggPSBjLnk7CisgICAgcmVzdWx0LncgPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eHd6KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp4d3coZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3Iuenl4eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci56eXh5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5eHoo
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAg
IHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl4dyhmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0Lnkg
PSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXh3PShmbG9hdDQgdiwgZmxvYXQ0IGMp
IHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAgICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1
bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMuejsKKyAgICByZXN1bHQudyA9IGMudzsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5eXgoZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55
OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVz
dWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci56eXl6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYu
eTsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnp5eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl6
eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56eXp5KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5enooZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenl6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci56eXd4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnp5d3g9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC56ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC53ID0g
Yy56OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3Iuenl3eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56
eXd6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp5d3coZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp4eChmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7
CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enh5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1
bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnp6eHooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3Iuenp4dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enl4
KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp6eXkoZmxvYXQ0IHYp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp5eihmbG9hdDQgdikgeworICAgIGZs
b2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7Cisg
ICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enl3KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3Vs
dDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQu
eiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnp6engoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56Owor
ICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3Iuenp6eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0
LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56enp6KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp6encoZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuenp3eChmbG9hdDQgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci56end5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnp6d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi53OworICAg
IHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
enp3dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3h4KGZsb2F0
NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1
bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp3eHkoZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53
OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuend4eT0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LnogPSBjLng7CisgICAgcmVzdWx0Lncg
PSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3h6KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnp3eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3Iuend5eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7Cisg
ICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci56d3l4PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQueiA9IGMueDsKKyAgICByZXN1bHQudyA9IGMueTsKKyAgICByZXN1bHQueSA9IGMu
ejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnp3eXkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuend5
eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3l3KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp3engoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuend6eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci56d3p6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnp3encoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di56OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iuend3eChm
bG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci56d3d5KGZsb2F0NCB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYuejsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnp3d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi56OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iuend3dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lno7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci53eHh4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnd4eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3h4eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eHh3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
eDsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4eXgoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJl
c3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3Iud3h5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci53eHl6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQu
eCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICBy
ZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4
eXo9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2OworICAgIHJl
c3VsdC53ID0gYy54OworICAgIHJlc3VsdC54ID0gYy55OworICAgIHJlc3VsdC55ID0gYy56Owor
ICAgIHJlc3VsdC56ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3Iud3h5dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eHp4KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueDsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4enkoZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di54OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3h6eT0oZmxvYXQ0IHYsIGZsb2F0NCBjKSB7
CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVzdWx0
LnggPSBjLnk7CisgICAgcmVzdWx0LnogPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eHp6KGZsb2F0NCB2KSB7CisgICAg
ZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsK
KyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVz
dWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4encoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVz
dWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi54OworICAgIHJlc3Vs
dC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9Citm
bG9hdDQgb3BlcmF0b3Iud3h3eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAg
cmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7
CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVy
YXRvci53eHd5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9
IHYudzsKKyAgICByZXN1bHQueSA9IHYueDsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1
bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd4d3oo
ZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAg
IHJlc3VsdC55ID0gdi54OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56
OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3h3dyhmbG9hdDQgdikg
eworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0Lnkg
PSB2Lng7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eXh4KGZsb2F0NCB2KSB7CisgICAgZmxv
YXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAg
ICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0
OworfQorZmxvYXQ0IG9wZXJhdG9yLnd5eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0
OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56
ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9h
dDQgb3BlcmF0b3Iud3l4eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVz
dWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lng7Cisg
ICAgcmVzdWx0LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRv
ci53eXh6PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0gdjsKKyAg
ICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueSA9IGMueTsKKyAgICByZXN1bHQueCA9IGMu
ejsKKyAgICByZXN1bHQueiA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnd5eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3l5
eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2
Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eXl5KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd5eXooZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3l5dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci53eXp4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsK
KyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnd5eng9KGZsb2F0NCB2LCBmbG9hdDQgYykgeworICAgIGZsb2F0NCByZXN1bHQgPSB2Owor
ICAgIHJlc3VsdC53ID0gYy54OworICAgIHJlc3VsdC55ID0gYy55OworICAgIHJlc3VsdC56ID0g
Yy56OworICAgIHJlc3VsdC54ID0gYy53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQg
b3BlcmF0b3Iud3l6eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0
LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAg
cmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53
eXp6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsK
KyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9
IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd5encoZmxvYXQ0
IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3Vs
dC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi53OworICAg
IHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3l3eChmbG9hdDQgdikgeworICAg
IGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7
CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53eXd5KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJl
c3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYueTsKKyAgICByZXN1
bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
ZmxvYXQ0IG9wZXJhdG9yLnd5d3ooZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAg
IHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi55OworICAgIHJlc3VsdC56ID0gdi53
OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3Bl
cmF0b3Iud3l3dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0Lngg
PSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnk7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVz
dWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53enh4
KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAg
ICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYu
eDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd6eHkoZmxvYXQ0IHYp
IHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55
ID0gdi56OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi55OworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p4eT0oZmxvYXQ0IHYsIGZsb2F0NCBj
KSB7CisgICAgZmxvYXQ0IHJlc3VsdCA9IHY7CisgICAgcmVzdWx0LncgPSBjLng7CisgICAgcmVz
dWx0LnogPSBjLnk7CisgICAgcmVzdWx0LnggPSBjLno7CisgICAgcmVzdWx0LnkgPSBjLnc7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53enh6KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
ejsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd6eHcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQg
cmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJl
c3VsdC56ID0gdi54OworICAgIHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9
CitmbG9hdDQgb3BlcmF0b3Iud3p5eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7Cisg
ICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2
Lnk7CisgICAgcmVzdWx0LncgPSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBv
cGVyYXRvci53enl4PShmbG9hdDQgdiwgZmxvYXQ0IGMpIHsKKyAgICBmbG9hdDQgcmVzdWx0ID0g
djsKKyAgICByZXN1bHQudyA9IGMueDsKKyAgICByZXN1bHQueiA9IGMueTsKKyAgICByZXN1bHQu
eSA9IGMuejsKKyAgICByZXN1bHQueCA9IGMudzsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxv
YXQ0IG9wZXJhdG9yLnd6eXkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJl
c3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi55Owor
ICAgIHJlc3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0
b3Iud3p5eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2
Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnk7CisgICAgcmVzdWx0
LncgPSB2Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53enl3KGZs
b2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICBy
ZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYueTsKKyAgICByZXN1bHQudyA9IHYudzsK
KyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd6engoZmxvYXQ0IHYpIHsK
KyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0g
di56OworICAgIHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVy
biByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p6eShmbG9hdDQgdikgeworICAgIGZsb2F0
NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAg
cmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2Zsb2F0NCBvcGVyYXRvci53enp6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsK
KyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9
IHYuejsKKyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0
IG9wZXJhdG9yLnd6encoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3Vs
dC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56OworICAgIHJlc3VsdC56ID0gdi56OworICAg
IHJlc3VsdC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iu
d3p3eChmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7
CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0Lncg
PSB2Lng7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53end5KGZsb2F0
NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1
bHQueSA9IHYuejsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYueTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd6d3ooZmxvYXQ0IHYpIHsKKyAg
ICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi56
OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3p3dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCBy
ZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lno7CisgICAgcmVz
dWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2Zsb2F0NCBvcGVyYXRvci53d3h4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAg
ICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYu
eDsKKyAgICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9w
ZXJhdG9yLnd3eHkoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54
ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi54OworICAgIHJl
c3VsdC53ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3d4
eihmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7Cisg
ICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lng7CisgICAgcmVzdWx0LncgPSB2
Lno7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53d3h3KGZsb2F0NCB2
KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQu
eSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueDsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd3eXgoZmxvYXQ0IHYpIHsKKyAgICBm
bG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53Owor
ICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3VsdC53ID0gdi54OworICAgIHJldHVybiByZXN1
bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3d5eShmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1
bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0
LnogPSB2Lnk7CisgICAgcmVzdWx0LncgPSB2Lnk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zs
b2F0NCBvcGVyYXRvci53d3l6KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICBy
ZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYueTsK
KyAgICByZXN1bHQudyA9IHYuejsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJh
dG9yLnd3eXcoZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0g
di53OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi55OworICAgIHJlc3Vs
dC53ID0gdi53OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3d6eChm
bG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAg
cmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lng7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53d3p5KGZsb2F0NCB2KSB7
CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9
IHYudzsKKyAgICByZXN1bHQueiA9IHYuejsKKyAgICByZXN1bHQudyA9IHYueTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9yLnd3enooZmxvYXQ0IHYpIHsKKyAgICBmbG9h
dDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53OworICAgIHJlc3VsdC55ID0gdi53OworICAg
IHJlc3VsdC56ID0gdi56OworICAgIHJlc3VsdC53ID0gdi56OworICAgIHJldHVybiByZXN1bHQ7
Cit9CitmbG9hdDQgb3BlcmF0b3Iud3d6dyhmbG9hdDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7
CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVzdWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0Lnog
PSB2Lno7CisgICAgcmVzdWx0LncgPSB2Lnc7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0
NCBvcGVyYXRvci53d3d4KGZsb2F0NCB2KSB7CisgICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1
bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYudzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAg
ICByZXN1bHQudyA9IHYueDsKKyAgICByZXR1cm4gcmVzdWx0OworfQorZmxvYXQ0IG9wZXJhdG9y
Lnd3d3koZmxvYXQ0IHYpIHsKKyAgICBmbG9hdDQgcmVzdWx0OworICAgIHJlc3VsdC54ID0gdi53
OworICAgIHJlc3VsdC55ID0gdi53OworICAgIHJlc3VsdC56ID0gdi53OworICAgIHJlc3VsdC53
ID0gdi55OworICAgIHJldHVybiByZXN1bHQ7Cit9CitmbG9hdDQgb3BlcmF0b3Iud3d3eihmbG9h
dDQgdikgeworICAgIGZsb2F0NCByZXN1bHQ7CisgICAgcmVzdWx0LnggPSB2Lnc7CisgICAgcmVz
dWx0LnkgPSB2Lnc7CisgICAgcmVzdWx0LnogPSB2Lnc7CisgICAgcmVzdWx0LncgPSB2Lno7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2Zsb2F0NCBvcGVyYXRvci53d3d3KGZsb2F0NCB2KSB7Cisg
ICAgZmxvYXQ0IHJlc3VsdDsKKyAgICByZXN1bHQueCA9IHYudzsKKyAgICByZXN1bHQueSA9IHYu
dzsKKyAgICByZXN1bHQueiA9IHYudzsKKyAgICByZXN1bHQudyA9IHYudzsKKyAgICByZXR1cm4g
cmVzdWx0OworfQorKi8KKworbmF0aXZlIGZsb2F0IGNvcyhmbG9hdCk7CitoYWxmIGNvcyhoYWxm
IHgpIHsKKyAgICByZXR1cm4gaGFsZihjb3MoZmxvYXQoeCkpKTsKK30KK25hdGl2ZSBmbG9hdCBz
aW4oZmxvYXQpOworaGFsZiBzaW4oaGFsZiB4KSB7CisgICAgcmV0dXJuIGhhbGYoc2luKGZsb2F0
KHgpKSk7Cit9CituYXRpdmUgZmxvYXQgdGFuKGZsb2F0KTsKK2hhbGYgdGFuKGhhbGYgeCkgewor
ICAgIHJldHVybiBoYWxmKHRhbihmbG9hdCh4KSkpOworfQorbmF0aXZlIGZsb2F0IGFjb3MoZmxv
YXQpOworaGFsZiBhY29zKGhhbGYgeCkgeworICAgIHJldHVybiBoYWxmKGFjb3MoZmxvYXQoeCkp
KTsKK30KK25hdGl2ZSBmbG9hdCBhc2luKGZsb2F0KTsKK2hhbGYgYXNpbihoYWxmIHgpIHsKKyAg
ICByZXR1cm4gaGFsZihhc2luKGZsb2F0KHgpKSk7Cit9CituYXRpdmUgZmxvYXQgYXRhbihmbG9h
dCk7CitoYWxmIGF0YW4oaGFsZiB4KSB7CisgICAgcmV0dXJuIGhhbGYoYXRhbihmbG9hdCh4KSkp
OworfQorbmF0aXZlIGZsb2F0IGNvc2goZmxvYXQpOworaGFsZiBjb3NoKGhhbGYgeCkgeworICAg
IHJldHVybiBoYWxmKGNvc2goZmxvYXQoeCkpKTsKK30KK25hdGl2ZSBmbG9hdCBzaW5oKGZsb2F0
KTsKK2hhbGYgc2luaChoYWxmIHgpIHsKKyAgICByZXR1cm4gaGFsZihzaW5oKGZsb2F0KHgpKSk7
Cit9CituYXRpdmUgZmxvYXQgdGFuaChmbG9hdCk7CitoYWxmIHRhbmgoaGFsZiB4KSB7CisgICAg
cmV0dXJuIGhhbGYodGFuaChmbG9hdCh4KSkpOworfQorbmF0aXZlIGZsb2F0IGNlaWwoZmxvYXQp
OworaGFsZiBjZWlsKGhhbGYgeCkgeworICAgIHJldHVybiBoYWxmKGNlaWwoZmxvYXQoeCkpKTsK
K30KK25hdGl2ZSBmbG9hdCBleHAoZmxvYXQpOworaGFsZiBleHAoaGFsZiB4KSB7CisgICAgcmV0
dXJuIGhhbGYoZXhwKGZsb2F0KHgpKSk7Cit9CituYXRpdmUgZmxvYXQgZmxvb3IoZmxvYXQpOwor
aGFsZiBmbG9vcihoYWxmIHgpIHsKKyAgICByZXR1cm4gaGFsZihmbG9vcihmbG9hdCh4KSkpOwor
fQorbmF0aXZlIGZsb2F0IGxvZyhmbG9hdCk7CitoYWxmIGxvZyhoYWxmIHgpIHsKKyAgICByZXR1
cm4gaGFsZihsb2coZmxvYXQoeCkpKTsKK30KK25hdGl2ZSBmbG9hdCByb3VuZChmbG9hdCk7Cito
YWxmIHJvdW5kKGhhbGYgeCkgeworICAgIHJldHVybiBoYWxmKHJvdW5kKGZsb2F0KHgpKSk7Cit9
CituYXRpdmUgZmxvYXQgdHJ1bmMoZmxvYXQpOworaGFsZiB0cnVuYyhoYWxmIHgpIHsKKyAgICBy
ZXR1cm4gaGFsZih0cnVuYyhmbG9hdCh4KSkpOworfQorbmF0aXZlIGZsb2F0IGRkeChmbG9hdCk7
CitoYWxmIGRkeChoYWxmIHgpIHsKKyAgICByZXR1cm4gaGFsZihkZHgoZmxvYXQoeCkpKTsKK30K
K25hdGl2ZSBmbG9hdCBkZHkoZmxvYXQpOworaGFsZiBkZHkoaGFsZiB4KSB7CisgICAgcmV0dXJu
IGhhbGYoZGR5KGZsb2F0KHgpKSk7Cit9CitoYWxmIHNxcnQoaGFsZiB4KSB7CisgICAgcmV0dXJu
IHBvdyh4LCAwLjUpOworfQoraGFsZiBsb2cyKGhhbGYgeCkgeworICAgIHJldHVybiBsb2coeCkg
LyBsb2coMik7Cit9CitoYWxmIGxvZzEwKGhhbGYgeCkgeworICAgIHJldHVybiBsb2coeCkgLyBs
b2coMTApOworfQoraGFsZiBmcmFjKGhhbGYgeCkgeworICAgIHJldHVybiB4IC0gZmxvb3IoeCk7
Cit9CitoYWxmIGV4cDIoaGFsZiB4KSB7CisgICAgcmV0dXJuIGV4cCh4ICogbG9nKDIpKTsKK30K
K2hhbGYgZGVncmVlcyhoYWxmIHgpIHsKKyAgICByZXR1cm4geCAqIDE4MCAvIDMuMTQxNTk7Cit9
CitoYWxmIHJhZGlhbnMoaGFsZiB4KSB7CisgICAgcmV0dXJuIHggKiAzLjE0MTU5IC8gMTgwOwor
fQoraGFsZiByY3AoaGFsZiB4KSB7CisgICAgcmV0dXJuIDEgLyB4OworfQoraGFsZiByc3FydCho
YWxmIHgpIHsKKyAgICByZXR1cm4gMSAvIHNxcnQoeCk7Cit9CitoYWxmIHNhdHVyYXRlKGhhbGYg
eCkgeworICAgIHJldHVybiBjbGFtcCh4LCAwLCAxKTsKK30KK2hhbGYgZGR4X2NvYXJzZShoYWxm
IHgpIHsKKyAgICByZXR1cm4gZGR4KHgpOworfQoraGFsZiBkZHhfZmluZShoYWxmIHgpIHsKKyAg
ICByZXR1cm4gZGR4KHgpOworfQoraGFsZiBkZHlfY29hcnNlKGhhbGYgeCkgeworICAgIHJldHVy
biBkZHkoeCk7Cit9CitoYWxmIGRkeV9maW5lKGhhbGYgeCkgeworICAgIHJldHVybiBkZHkoeCk7
Cit9CitoYWxmIGZ3aWR0aChoYWxmIHgpIHsKKyAgICByZXR1cm4gYWJzKGRkeCh4KSkgKyBhYnMo
ZGR5KHgpKTsKK30KK2hhbGYyIGNvcyhoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGNvcyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBjb3MoeFsxXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIGNvcyhoYWxmMyB4KSB7CisgICAgaGFsZjMgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IGNvcyh4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBjb3MoeFsxXSk7
CisgICAgcmVzdWx0WzJdID0gY29zKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NCBjb3MoaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjb3Mo
eFswXSk7CisgICAgcmVzdWx0WzFdID0gY29zKHhbMV0pOworICAgIHJlc3VsdFsyXSA9IGNvcyh4
WzJdKTsKKyAgICByZXN1bHRbM10gPSBjb3MoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDIgY29zKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIgcmVzdWx0OworICAgIHJlc3Vs
dFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3MoeFswXVsxXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNv
cyh4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBjb3MoaGFsZjJ4MyB4
KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY29zKHhbMF1bMF0p
OworICAgIHJlc3VsdFswXVsxXSA9IGNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBj
b3MoeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zKHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IGNvcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjb3MoeFsxXVsyXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgY29zKGhhbGYyeDQgeCkgeworICAgIGhh
bGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBjb3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY29zKHhbMF1bMl0p
OworICAgIHJlc3VsdFswXVszXSA9IGNvcyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBj
b3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY29zKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IGNvcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBjb3MoeFsxXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgY29zKGhhbGYzeDIgeCkgeworICAgIGhh
bGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBjb3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IGNvcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBj
b3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY29zKHhbMl1bMV0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmM3gzIGNvcyhoYWxmM3gzIHgpIHsKKyAgICBoYWxmM3gzIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3MoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
Y29zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNvcyh4WzBdWzJdKTsKKyAgICByZXN1
bHRbMV1bMF0gPSBjb3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY29zKHhbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IGNvcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBj
b3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY29zKHhbMl1bMV0pOworICAgIHJlc3Vs
dFsyXVsyXSA9IGNvcyh4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4NCBj
b3MoaGFsZjN4NCB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0g
Y29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvcyh4WzBdWzFdKTsKKyAgICByZXN1
bHRbMF1bMl0gPSBjb3MoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gY29zKHhbMF1bM10p
OworICAgIHJlc3VsdFsxXVswXSA9IGNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBj
b3MoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gY29zKHhbMV1bMl0pOworICAgIHJlc3Vs
dFsxXVszXSA9IGNvcyh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjb3MoeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gY29zKHhbMl1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IGNv
cyh4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBjb3MoeFsyXVszXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0eDIgY29zKGhhbGY0eDIgeCkgeworICAgIGhhbGY0eDIgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBj
b3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zKHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IGNvcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjb3MoeFsyXVswXSk7
CisgICAgcmVzdWx0WzJdWzFdID0gY29zKHhbMl1bMV0pOworICAgIHJlc3VsdFszXVswXSA9IGNv
cyh4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBjb3MoeFszXVsxXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGY0eDMgY29zKGhhbGY0eDMgeCkgeworICAgIGhhbGY0eDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IGNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBj
b3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY29zKHhbMF1bMl0pOworICAgIHJlc3Vs
dFsxXVswXSA9IGNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3MoeFsxXVsxXSk7
CisgICAgcmVzdWx0WzFdWzJdID0gY29zKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9IGNv
cyh4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0
WzJdWzJdID0gY29zKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IGNvcyh4WzNdWzBdKTsK
KyAgICByZXN1bHRbM11bMV0gPSBjb3MoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gY29z
KHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IGNvcyhoYWxmNHg0IHgp
IHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3MoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gY29zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNv
cyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBjb3MoeFswXVszXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gY29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvcyh4WzFdWzFdKTsK
KyAgICByZXN1bHRbMV1bMl0gPSBjb3MoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gY29z
KHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IGNvcyh4WzJdWzBdKTsKKyAgICByZXN1bHRb
Ml1bMV0gPSBjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gY29zKHhbMl1bMl0pOwor
ICAgIHJlc3VsdFsyXVszXSA9IGNvcyh4WzJdWzNdKTsKKyAgICByZXN1bHRbM11bMF0gPSBjb3Mo
eFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gY29zKHhbM11bMV0pOworICAgIHJlc3VsdFsz
XVsyXSA9IGNvcyh4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBjb3MoeFszXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIHNpbihoYWxmMiB4KSB7CisgICAgaGFsZjIgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IHNpbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBzaW4oeFsx
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIHNpbihoYWxmMyB4KSB7CisgICAgaGFs
ZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHNpbih4WzBdKTsKKyAgICByZXN1bHRbMV0gPSBz
aW4oeFsxXSk7CisgICAgcmVzdWx0WzJdID0gc2luKHhbMl0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmNCBzaW4oaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAgICByZXN1bHRb
MF0gPSBzaW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0gc2luKHhbMV0pOworICAgIHJlc3VsdFsy
XSA9IHNpbih4WzJdKTsKKyAgICByZXN1bHRbM10gPSBzaW4oeFszXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYyeDIgc2luKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IHNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzaW4o
eFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsx
XVsxXSA9IHNpbih4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjJ4MyBzaW4o
aGFsZjJ4MyB4KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gc2lu
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRb
MF1bMl0gPSBzaW4oeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzaW4o
eFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgc2luKGhhbGYyeDQgeCkg
eworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbih4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2lu
KHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHNpbih4WzBdWzNdKTsKKyAgICByZXN1bHRb
MV1bMF0gPSBzaW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2luKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IHNpbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzaW4o
eFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgc2luKGhhbGYzeDIgeCkg
eworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbih4WzBdWzBdKTsK
KyAgICByZXN1bHRbMF1bMV0gPSBzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2lu
KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4WzFdWzFdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luKHhbMl1bMV0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIHNpbihoYWxmM3gzIHgpIHsKKyAgICBoYWxm
M3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW4oeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gc2luKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpbih4WzBdWzJdKTsK
KyAgICByZXN1bHRbMV1bMF0gPSBzaW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2lu
KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNpbih4WzFdWzJdKTsKKyAgICByZXN1bHRb
Ml1bMF0gPSBzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luKHhbMl1bMV0pOwor
ICAgIHJlc3VsdFsyXVsyXSA9IHNpbih4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQor
aGFsZjN4NCBzaW4oaGFsZjN4NCB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbih4WzBdWzFdKTsK
KyAgICByZXN1bHRbMF1bMl0gPSBzaW4oeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gc2lu
KHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRb
MV1bMV0gPSBzaW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2luKHhbMV1bMl0pOwor
ICAgIHJlc3VsdFsxXVszXSA9IHNpbih4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzaW4o
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luKHhbMl1bMV0pOworICAgIHJlc3VsdFsy
XVsyXSA9IHNpbih4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBzaW4oeFsyXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgc2luKGhhbGY0eDIgeCkgeworICAgIGhhbGY0
eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzaW4o
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luKHhbMl1bMV0pOworICAgIHJlc3VsdFsz
XVswXSA9IHNpbih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzaW4oeFszXVsxXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDMgc2luKGhhbGY0eDMgeCkgeworICAgIGhhbGY0
eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2luKHhbMF1bMl0pOwor
ICAgIHJlc3VsdFsxXVswXSA9IHNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW4o
eFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2luKHhbMV1bMl0pOworICAgIHJlc3VsdFsy
XVswXSA9IHNpbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSBzaW4oeFsyXVsxXSk7Cisg
ICAgcmVzdWx0WzJdWzJdID0gc2luKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVswXSA9IHNpbih4
WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSBzaW4oeFszXVsxXSk7CisgICAgcmVzdWx0WzNd
WzJdID0gc2luKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmNHg0IHNpbiho
YWxmNHg0IHgpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW4o
eFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gc2luKHhbMF1bMV0pOworICAgIHJlc3VsdFsw
XVsyXSA9IHNpbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSBzaW4oeFswXVszXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gc2luKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHNpbih4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzaW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzFd
WzNdID0gc2luKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHNpbih4WzJdWzBdKTsKKyAg
ICByZXN1bHRbMl1bMV0gPSBzaW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2luKHhb
Ml1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHNpbih4WzJdWzNdKTsKKyAgICByZXN1bHRbM11b
MF0gPSBzaW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc2luKHhbM11bMV0pOworICAg
IHJlc3VsdFszXVsyXSA9IHNpbih4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10gPSBzaW4oeFsz
XVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIHRhbihoYWxmMiB4KSB7CisgICAg
aGFsZjIgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHRhbih4WzBdKTsKKyAgICByZXN1bHRbMV0g
PSB0YW4oeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIHRhbihoYWxmMyB4KSB7
CisgICAgaGFsZjMgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IHRhbih4WzBdKTsKKyAgICByZXN1
bHRbMV0gPSB0YW4oeFsxXSk7CisgICAgcmVzdWx0WzJdID0gdGFuKHhbMl0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmNCB0YW4oaGFsZjQgeCkgeworICAgIGhhbGY0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF0gPSB0YW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0gdGFuKHhbMV0pOworICAg
IHJlc3VsdFsyXSA9IHRhbih4WzJdKTsKKyAgICByZXN1bHRbM10gPSB0YW4oeFszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgdGFuKGhhbGYyeDIgeCkgeworICAgIGhhbGYyeDIg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuKHhbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IHRhbih4WzFdWzFdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFs
ZjJ4MyB0YW4oaGFsZjJ4MyB4KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbih4WzBdWzFdKTsKKyAg
ICByZXN1bHRbMF1bMl0gPSB0YW4oeFswXVsyXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSB0YW4oeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgdGFuKGhh
bGYyeDQgeCkgeworICAgIGhhbGYyeDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gdGFuKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IHRhbih4WzBdWzNdKTsKKyAg
ICByZXN1bHRbMV1bMF0gPSB0YW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdGFuKHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHRhbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1b
M10gPSB0YW4oeFsxXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgdGFuKGhh
bGYzeDIgeCkgeworICAgIGhhbGYzeDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4
WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gdGFuKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHRhbih4WzFdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSB0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuKHhb
Ml1bMV0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmM3gzIHRhbihoYWxmM3gzIHgpIHsK
KyAgICBoYWxmM3gzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW4oeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gdGFuKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHRhbih4
WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFd
WzFdID0gdGFuKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHRhbih4WzFdWzJdKTsKKyAg
ICByZXN1bHRbMl1bMF0gPSB0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuKHhb
Ml1bMV0pOworICAgIHJlc3VsdFsyXVsyXSA9IHRhbih4WzJdWzJdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjN4NCB0YW4oaGFsZjN4NCB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbih4
WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0YW4oeFswXVsyXSk7CisgICAgcmVzdWx0WzBd
WzNdID0gdGFuKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHRhbih4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSB0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdGFuKHhb
MV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHRhbih4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1b
MF0gPSB0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuKHhbMl1bMV0pOworICAg
IHJlc3VsdFsyXVsyXSA9IHRhbih4WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSB0YW4oeFsy
XVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgdGFuKGhhbGY0eDIgeCkgewor
ICAgIGhhbGY0eDIgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IHRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMl1b
MF0gPSB0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuKHhbMl1bMV0pOworICAg
IHJlc3VsdFszXVswXSA9IHRhbih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSB0YW4oeFsz
XVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDMgdGFuKGhhbGY0eDMgeCkgewor
ICAgIGhhbGY0eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbih4WzBdWzBdKTsKKyAg
ICByZXN1bHRbMF1bMV0gPSB0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gdGFuKHhb
MF1bMl0pOworICAgIHJlc3VsdFsxXVswXSA9IHRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1b
MV0gPSB0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdGFuKHhbMV1bMl0pOworICAg
IHJlc3VsdFsyXVswXSA9IHRhbih4WzJdWzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW4oeFsy
XVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gdGFuKHhbMl1bMl0pOworICAgIHJlc3VsdFszXVsw
XSA9IHRhbih4WzNdWzBdKTsKKyAgICByZXN1bHRbM11bMV0gPSB0YW4oeFszXVsxXSk7CisgICAg
cmVzdWx0WzNdWzJdID0gdGFuKHhbM11bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
NHg0IHRhbihoYWxmNHg0IHgpIHsKKyAgICBoYWxmNHg0IHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSB0YW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdGFuKHhbMF1bMV0pOworICAg
IHJlc3VsdFswXVsyXSA9IHRhbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10gPSB0YW4oeFsw
XVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsx
XSA9IHRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0YW4oeFsxXVsyXSk7CisgICAg
cmVzdWx0WzFdWzNdID0gdGFuKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9IHRhbih4WzJd
WzBdKTsKKyAgICByZXN1bHRbMl1bMV0gPSB0YW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJd
ID0gdGFuKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHRhbih4WzJdWzNdKTsKKyAgICBy
ZXN1bHRbM11bMF0gPSB0YW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gdGFuKHhbM11b
MV0pOworICAgIHJlc3VsdFszXVsyXSA9IHRhbih4WzNdWzJdKTsKKyAgICByZXN1bHRbM11bM10g
PSB0YW4oeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIGFjb3MoaGFsZjIg
eCkgeworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhY29zKHhbMF0pOworICAg
IHJlc3VsdFsxXSA9IGFjb3MoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIGFj
b3MoaGFsZjMgeCkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhY29zKHhb
MF0pOworICAgIHJlc3VsdFsxXSA9IGFjb3MoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gYWNvcyh4
WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgYWNvcyhoYWxmNCB4KSB7CisgICAg
aGFsZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFjb3MoeFswXSk7CisgICAgcmVzdWx0WzFd
ID0gYWNvcyh4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhY29zKHhbMl0pOworICAgIHJlc3VsdFsz
XSA9IGFjb3MoeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgYWNvcyhoYWxm
MngyIHgpIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhY29zKHhb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFjb3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gYWNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhY29zKHhbMV1bMV0pOwor
ICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIGFjb3MoaGFsZjJ4MyB4KSB7CisgICAgaGFs
ZjJ4MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYWNvcyh4WzBdWzBdKTsKKyAgICByZXN1
bHRbMF1bMV0gPSBhY29zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFjb3MoeFswXVsy
XSk7CisgICAgcmVzdWx0WzFdWzBdID0gYWNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0g
PSBhY29zKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFjb3MoeFsxXVsyXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgYWNvcyhoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGFjb3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYWNvcyh4WzBdWzJdKTsK
KyAgICByZXN1bHRbMF1bM10gPSBhY29zKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGFj
b3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYWNvcyh4WzFdWzFdKTsKKyAgICByZXN1
bHRbMV1bMl0gPSBhY29zKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGFjb3MoeFsxXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgYWNvcyhoYWxmM3gyIHgpIHsKKyAg
ICBoYWxmM3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhY29zKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IGFjb3MoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYWNvcyh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhY29zKHhbMV1bMV0pOworICAgIHJlc3VsdFsy
XVswXSA9IGFjb3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYWNvcyh4WzJdWzFdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBhY29zKGhhbGYzeDMgeCkgeworICAgIGhh
bGYzeDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFjb3MoeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gYWNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhY29zKHhbMF1b
Ml0pOworICAgIHJlc3VsdFsxXVswXSA9IGFjb3MoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFd
ID0gYWNvcyh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhY29zKHhbMV1bMl0pOworICAg
IHJlc3VsdFsyXVswXSA9IGFjb3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYWNvcyh4
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhY29zKHhbMl1bMl0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmM3g0IGFjb3MoaGFsZjN4NCB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gYWNvcyh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBh
Y29zKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFjb3MoeFswXVsyXSk7CisgICAgcmVz
dWx0WzBdWzNdID0gYWNvcyh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhY29zKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFjb3MoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gYWNvcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhY29zKHhbMV1bM10pOworICAg
IHJlc3VsdFsyXVswXSA9IGFjb3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYWNvcyh4
WzJdWzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhY29zKHhbMl1bMl0pOworICAgIHJlc3VsdFsy
XVszXSA9IGFjb3MoeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgYWNv
cyhoYWxmNHgyIHgpIHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBh
Y29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFjb3MoeFswXVsxXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gYWNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhY29zKHhbMV1b
MV0pOworICAgIHJlc3VsdFsyXVswXSA9IGFjb3MoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFd
ID0gYWNvcyh4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhY29zKHhbM11bMF0pOworICAg
IHJlc3VsdFszXVsxXSA9IGFjb3MoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hh
bGY0eDMgYWNvcyhoYWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRb
MF1bMF0gPSBhY29zKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFjb3MoeFswXVsxXSk7
CisgICAgcmVzdWx0WzBdWzJdID0gYWNvcyh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBh
Y29zKHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFjb3MoeFsxXVsxXSk7CisgICAgcmVz
dWx0WzFdWzJdID0gYWNvcyh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhY29zKHhbMl1b
MF0pOworICAgIHJlc3VsdFsyXVsxXSA9IGFjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJd
ID0gYWNvcyh4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhY29zKHhbM11bMF0pOworICAg
IHJlc3VsdFszXVsxXSA9IGFjb3MoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gYWNvcyh4
WzNdWzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBhY29zKGhhbGY0eDQgeCkg
eworICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFjb3MoeFswXVswXSk7
CisgICAgcmVzdWx0WzBdWzFdID0gYWNvcyh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBh
Y29zKHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGFjb3MoeFswXVszXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gYWNvcyh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhY29zKHhbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFjb3MoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNd
ID0gYWNvcyh4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhY29zKHhbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IGFjb3MoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gYWNvcyh4
WzJdWzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBhY29zKHhbMl1bM10pOworICAgIHJlc3VsdFsz
XVswXSA9IGFjb3MoeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gYWNvcyh4WzNdWzFdKTsK
KyAgICByZXN1bHRbM11bMl0gPSBhY29zKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGFj
b3MoeFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIGFzaW4oaGFsZjIgeCkg
eworICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhc2luKHhbMF0pOworICAgIHJl
c3VsdFsxXSA9IGFzaW4oeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIGFzaW4o
aGFsZjMgeCkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhc2luKHhbMF0p
OworICAgIHJlc3VsdFsxXSA9IGFzaW4oeFsxXSk7CisgICAgcmVzdWx0WzJdID0gYXNpbih4WzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgYXNpbihoYWxmNCB4KSB7CisgICAgaGFs
ZjQgcmVzdWx0OworICAgIHJlc3VsdFswXSA9IGFzaW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0g
YXNpbih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhc2luKHhbMl0pOworICAgIHJlc3VsdFszXSA9
IGFzaW4oeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgYXNpbihoYWxmMngy
IHgpIHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhc2luKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gYXNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhc2luKHhbMV1bMV0pOworICAg
IHJldHVybiByZXN1bHQ7Cit9CitoYWxmMngzIGFzaW4oaGFsZjJ4MyB4KSB7CisgICAgaGFsZjJ4
MyByZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYXNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRb
MF1bMV0gPSBhc2luKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFzaW4oeFswXVsyXSk7
CisgICAgcmVzdWx0WzFdWzBdID0gYXNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBh
c2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGFzaW4oeFsxXVsyXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYyeDQgYXNpbihoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IGFzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYXNpbih4WzBdWzJdKTsKKyAg
ICByZXN1bHRbMF1bM10gPSBhc2luKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGFzaW4o
eFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYXNpbih4WzFdWzFdKTsKKyAgICByZXN1bHRb
MV1bMl0gPSBhc2luKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGFzaW4oeFsxXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgYXNpbihoYWxmM3gyIHgpIHsKKyAgICBo
YWxmM3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhc2luKHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IGFzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXNpbih4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhc2luKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVsw
XSA9IGFzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXNpbih4WzJdWzFdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBhc2luKGhhbGYzeDMgeCkgeworICAgIGhhbGYz
eDMgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFzaW4oeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gYXNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhc2luKHhbMF1bMl0p
OworICAgIHJlc3VsdFsxXVswXSA9IGFzaW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0g
YXNpbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhc2luKHhbMV1bMl0pOworICAgIHJl
c3VsdFsyXVswXSA9IGFzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXNpbih4WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhc2luKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmM3g0IGFzaW4oaGFsZjN4NCB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gYXNpbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhc2lu
KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGFzaW4oeFswXVsyXSk7CisgICAgcmVzdWx0
WzBdWzNdID0gYXNpbih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhc2luKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IGFzaW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
YXNpbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhc2luKHhbMV1bM10pOworICAgIHJl
c3VsdFsyXVswXSA9IGFzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXNpbih4WzJd
WzFdKTsKKyAgICByZXN1bHRbMl1bMl0gPSBhc2luKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVsz
XSA9IGFzaW4oeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgYXNpbiho
YWxmNHgyIHgpIHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhc2lu
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFzaW4oeFswXVsxXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gYXNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhc2luKHhbMV1bMV0p
OworICAgIHJlc3VsdFsyXVswXSA9IGFzaW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0g
YXNpbih4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhc2luKHhbM11bMF0pOworICAgIHJl
c3VsdFszXVsxXSA9IGFzaW4oeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0
eDMgYXNpbihoYWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1b
MF0gPSBhc2luKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGFzaW4oeFswXVsxXSk7Cisg
ICAgcmVzdWx0WzBdWzJdID0gYXNpbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhc2lu
KHhbMV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGFzaW4oeFsxXVsxXSk7CisgICAgcmVzdWx0
WzFdWzJdID0gYXNpbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhc2luKHhbMl1bMF0p
OworICAgIHJlc3VsdFsyXVsxXSA9IGFzaW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0g
YXNpbih4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhc2luKHhbM11bMF0pOworICAgIHJl
c3VsdFszXVsxXSA9IGFzaW4oeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gYXNpbih4WzNd
WzJdKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBhc2luKGhhbGY0eDQgeCkgewor
ICAgIGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGFzaW4oeFswXVswXSk7Cisg
ICAgcmVzdWx0WzBdWzFdID0gYXNpbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhc2lu
KHhbMF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGFzaW4oeFswXVszXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gYXNpbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhc2luKHhbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IGFzaW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0g
YXNpbih4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhc2luKHhbMl1bMF0pOworICAgIHJl
c3VsdFsyXVsxXSA9IGFzaW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gYXNpbih4WzJd
WzJdKTsKKyAgICByZXN1bHRbMl1bM10gPSBhc2luKHhbMl1bM10pOworICAgIHJlc3VsdFszXVsw
XSA9IGFzaW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gYXNpbih4WzNdWzFdKTsKKyAg
ICByZXN1bHRbM11bMl0gPSBhc2luKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGFzaW4o
eFszXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIGF0YW4oaGFsZjIgeCkgewor
ICAgIGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhdGFuKHhbMF0pOworICAgIHJlc3Vs
dFsxXSA9IGF0YW4oeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIGF0YW4oaGFs
ZjMgeCkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBhdGFuKHhbMF0pOwor
ICAgIHJlc3VsdFsxXSA9IGF0YW4oeFsxXSk7CisgICAgcmVzdWx0WzJdID0gYXRhbih4WzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgYXRhbihoYWxmNCB4KSB7CisgICAgaGFsZjQg
cmVzdWx0OworICAgIHJlc3VsdFswXSA9IGF0YW4oeFswXSk7CisgICAgcmVzdWx0WzFdID0gYXRh
bih4WzFdKTsKKyAgICByZXN1bHRbMl0gPSBhdGFuKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGF0
YW4oeFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgYXRhbihoYWxmMngyIHgp
IHsKKyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuKHhbMF1bMF0p
OworICAgIHJlc3VsdFswXVsxXSA9IGF0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
YXRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0pOworICAgIHJl
dHVybiByZXN1bHQ7Cit9CitoYWxmMngzIGF0YW4oaGFsZjJ4MyB4KSB7CisgICAgaGFsZjJ4MyBy
ZXN1bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gYXRhbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1b
MV0gPSBhdGFuKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGF0YW4oeFswXVsyXSk7Cisg
ICAgcmVzdWx0WzFdWzBdID0gYXRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFu
KHhbMV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGF0YW4oeFsxXVsyXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYyeDQgYXRhbihoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IGF0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gYXRhbih4WzBdWzJdKTsKKyAgICBy
ZXN1bHRbMF1bM10gPSBhdGFuKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGF0YW4oeFsx
XVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYXRhbih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1b
Ml0gPSBhdGFuKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGF0YW4oeFsxXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgYXRhbihoYWxmM3gyIHgpIHsKKyAgICBoYWxm
M3gyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuKHhbMF1bMF0pOworICAgIHJlc3Vs
dFswXVsxXSA9IGF0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gYXRhbih4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9
IGF0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXRhbih4WzJdWzFdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjN4MyBhdGFuKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4oeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gYXRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuKHhbMF1bMl0pOwor
ICAgIHJlc3VsdFsxXVswXSA9IGF0YW4oeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gYXRh
bih4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBhdGFuKHhbMV1bMl0pOworICAgIHJlc3Vs
dFsyXVswXSA9IGF0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXRhbih4WzJdWzFd
KTsKKyAgICByZXN1bHRbMl1bMl0gPSBhdGFuKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmM3g0IGF0YW4oaGFsZjN4NCB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gYXRhbih4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBhdGFuKHhb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGF0YW4oeFswXVsyXSk7CisgICAgcmVzdWx0WzBd
WzNdID0gYXRhbih4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gYXRh
bih4WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBhdGFuKHhbMV1bM10pOworICAgIHJlc3Vs
dFsyXVswXSA9IGF0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXRhbih4WzJdWzFd
KTsKKyAgICByZXN1bHRbMl1bMl0gPSBhdGFuKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9
IGF0YW4oeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgYXRhbihoYWxm
NHgyIHgpIHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBhdGFuKHhb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGF0YW4oeFswXVsxXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gYXRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsyXVswXSA9IGF0YW4oeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gYXRh
bih4WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhdGFuKHhbM11bMF0pOworICAgIHJlc3Vs
dFszXVsxXSA9IGF0YW4oeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDMg
YXRhbihoYWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0g
PSBhdGFuKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGF0YW4oeFswXVsxXSk7CisgICAg
cmVzdWx0WzBdWzJdID0gYXRhbih4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBhdGFuKHhb
MV1bMF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGF0YW4oeFsxXVsxXSk7CisgICAgcmVzdWx0WzFd
WzJdID0gYXRhbih4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhdGFuKHhbMl1bMF0pOwor
ICAgIHJlc3VsdFsyXVsxXSA9IGF0YW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gYXRh
bih4WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBhdGFuKHhbM11bMF0pOworICAgIHJlc3Vs
dFszXVsxXSA9IGF0YW4oeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gYXRhbih4WzNdWzJd
KTsKKyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBhdGFuKGhhbGY0eDQgeCkgeworICAg
IGhhbGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGF0YW4oeFswXVswXSk7CisgICAg
cmVzdWx0WzBdWzFdID0gYXRhbih4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBhdGFuKHhb
MF1bMl0pOworICAgIHJlc3VsdFswXVszXSA9IGF0YW4oeFswXVszXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gYXRhbih4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBhdGFuKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IGF0YW4oeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gYXRh
bih4WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBhdGFuKHhbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IGF0YW4oeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gYXRhbih4WzJdWzJd
KTsKKyAgICByZXN1bHRbMl1bM10gPSBhdGFuKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9
IGF0YW4oeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gYXRhbih4WzNdWzFdKTsKKyAgICBy
ZXN1bHRbM11bMl0gPSBhdGFuKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGF0YW4oeFsz
XVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIGNvc2goaGFsZjIgeCkgeworICAg
IGhhbGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjb3NoKHhbMF0pOworICAgIHJlc3VsdFsx
XSA9IGNvc2goeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIGNvc2goaGFsZjMg
eCkgeworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjb3NoKHhbMF0pOworICAg
IHJlc3VsdFsxXSA9IGNvc2goeFsxXSk7CisgICAgcmVzdWx0WzJdID0gY29zaCh4WzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjQgY29zaChoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVz
dWx0OworICAgIHJlc3VsdFswXSA9IGNvc2goeFswXSk7CisgICAgcmVzdWx0WzFdID0gY29zaCh4
WzFdKTsKKyAgICByZXN1bHRbMl0gPSBjb3NoKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGNvc2go
eFszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgY29zaChoYWxmMngyIHgpIHsK
KyAgICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3NoKHhbMF1bMF0pOwor
ICAgIHJlc3VsdFswXVsxXSA9IGNvc2goeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29z
aCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3NoKHhbMV1bMV0pOworICAgIHJldHVy
biByZXN1bHQ7Cit9CitoYWxmMngzIGNvc2goaGFsZjJ4MyB4KSB7CisgICAgaGFsZjJ4MyByZXN1
bHQ7CisgICAgcmVzdWx0WzBdWzBdID0gY29zaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0g
PSBjb3NoKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNvc2goeFswXVsyXSk7CisgICAg
cmVzdWx0WzFdWzBdID0gY29zaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3NoKHhb
MV1bMV0pOworICAgIHJlc3VsdFsxXVsyXSA9IGNvc2goeFsxXVsyXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYyeDQgY29zaChoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBjb3NoKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNv
c2goeFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gY29zaCh4WzBdWzJdKTsKKyAgICByZXN1
bHRbMF1bM10gPSBjb3NoKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGNvc2goeFsxXVsw
XSk7CisgICAgcmVzdWx0WzFdWzFdID0gY29zaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0g
PSBjb3NoKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGNvc2goeFsxXVszXSk7CisgICAg
cmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgY29zaChoYWxmM3gyIHgpIHsKKyAgICBoYWxmM3gy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3NoKHhbMF1bMF0pOworICAgIHJlc3VsdFsw
XVsxXSA9IGNvc2goeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY29zaCh4WzFdWzBdKTsK
KyAgICByZXN1bHRbMV1bMV0gPSBjb3NoKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IGNv
c2goeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY29zaCh4WzJdWzFdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjN4MyBjb3NoKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVz
dWx0OworICAgIHJlc3VsdFswXVswXSA9IGNvc2goeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFd
ID0gY29zaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBjb3NoKHhbMF1bMl0pOworICAg
IHJlc3VsdFsxXVswXSA9IGNvc2goeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gY29zaCh4
WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjb3NoKHhbMV1bMl0pOworICAgIHJlc3VsdFsy
XVswXSA9IGNvc2goeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY29zaCh4WzJdWzFdKTsK
KyAgICByZXN1bHRbMl1bMl0gPSBjb3NoKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9
CitoYWxmM3g0IGNvc2goaGFsZjN4NCB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVz
dWx0WzBdWzBdID0gY29zaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjb3NoKHhbMF1b
MV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNvc2goeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNd
ID0gY29zaCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3NoKHhbMV1bMF0pOworICAg
IHJlc3VsdFsxXVsxXSA9IGNvc2goeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gY29zaCh4
WzFdWzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBjb3NoKHhbMV1bM10pOworICAgIHJlc3VsdFsy
XVswXSA9IGNvc2goeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY29zaCh4WzJdWzFdKTsK
KyAgICByZXN1bHRbMl1bMl0gPSBjb3NoKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IGNv
c2goeFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgY29zaChoYWxmNHgy
IHgpIHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjb3NoKHhbMF1b
MF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvc2goeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gY29zaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3NoKHhbMV1bMV0pOworICAg
IHJlc3VsdFsyXVswXSA9IGNvc2goeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gY29zaCh4
WzJdWzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBjb3NoKHhbM11bMF0pOworICAgIHJlc3VsdFsz
XVsxXSA9IGNvc2goeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDMgY29z
aChoYWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBj
b3NoKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNvc2goeFswXVsxXSk7CisgICAgcmVz
dWx0WzBdWzJdID0gY29zaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBjb3NoKHhbMV1b
MF0pOworICAgIHJlc3VsdFsxXVsxXSA9IGNvc2goeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJd
ID0gY29zaCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjb3NoKHhbMl1bMF0pOworICAg
IHJlc3VsdFsyXVsxXSA9IGNvc2goeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gY29zaCh4
WzJdWzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBjb3NoKHhbM11bMF0pOworICAgIHJlc3VsdFsz
XVsxXSA9IGNvc2goeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gY29zaCh4WzNdWzJdKTsK
KyAgICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBjb3NoKGhhbGY0eDQgeCkgeworICAgIGhh
bGY0eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IGNvc2goeFswXVswXSk7CisgICAgcmVz
dWx0WzBdWzFdID0gY29zaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBjb3NoKHhbMF1b
Ml0pOworICAgIHJlc3VsdFswXVszXSA9IGNvc2goeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBd
ID0gY29zaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjb3NoKHhbMV1bMV0pOworICAg
IHJlc3VsdFsxXVsyXSA9IGNvc2goeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gY29zaCh4
WzFdWzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBjb3NoKHhbMl1bMF0pOworICAgIHJlc3VsdFsy
XVsxXSA9IGNvc2goeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gY29zaCh4WzJdWzJdKTsK
KyAgICByZXN1bHRbMl1bM10gPSBjb3NoKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IGNv
c2goeFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gY29zaCh4WzNdWzFdKTsKKyAgICByZXN1
bHRbM11bMl0gPSBjb3NoKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IGNvc2goeFszXVsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIHNpbmgoaGFsZjIgeCkgeworICAgIGhh
bGYyIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBzaW5oKHhbMF0pOworICAgIHJlc3VsdFsxXSA9
IHNpbmgoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIHNpbmgoaGFsZjMgeCkg
eworICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBzaW5oKHhbMF0pOworICAgIHJl
c3VsdFsxXSA9IHNpbmgoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gc2luaCh4WzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjQgc2luaChoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVzdWx0
OworICAgIHJlc3VsdFswXSA9IHNpbmgoeFswXSk7CisgICAgcmVzdWx0WzFdID0gc2luaCh4WzFd
KTsKKyAgICByZXN1bHRbMl0gPSBzaW5oKHhbMl0pOworICAgIHJlc3VsdFszXSA9IHNpbmgoeFsz
XSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgc2luaChoYWxmMngyIHgpIHsKKyAg
ICBoYWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW5oKHhbMF1bMF0pOworICAg
IHJlc3VsdFswXVsxXSA9IHNpbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luaCh4
WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW5oKHhbMV1bMV0pOworICAgIHJldHVybiBy
ZXN1bHQ7Cit9CitoYWxmMngzIHNpbmgoaGFsZjJ4MyB4KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7
CisgICAgcmVzdWx0WzBdWzBdID0gc2luaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBz
aW5oKHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHNpbmgoeFswXVsyXSk7CisgICAgcmVz
dWx0WzFdWzBdID0gc2luaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW5oKHhbMV1b
MV0pOworICAgIHJlc3VsdFsxXVsyXSA9IHNpbmgoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKK30KK2hhbGYyeDQgc2luaChoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAg
ICByZXN1bHRbMF1bMF0gPSBzaW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbmgo
eFswXVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gc2luaCh4WzBdWzJdKTsKKyAgICByZXN1bHRb
MF1bM10gPSBzaW5oKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHNpbmgoeFsxXVswXSk7
CisgICAgcmVzdWx0WzFdWzFdID0gc2luaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBz
aW5oKHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHNpbmgoeFsxXVszXSk7CisgICAgcmV0
dXJuIHJlc3VsdDsKK30KK2hhbGYzeDIgc2luaChoYWxmM3gyIHgpIHsKKyAgICBoYWxmM3gyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsx
XSA9IHNpbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gc2luaCh4WzFdWzBdKTsKKyAg
ICByZXN1bHRbMV1bMV0gPSBzaW5oKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHNpbmgo
eFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luaCh4WzJdWzFdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjN4MyBzaW5oKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0
OworICAgIHJlc3VsdFswXVswXSA9IHNpbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0g
c2luaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaW5oKHhbMF1bMl0pOworICAgIHJl
c3VsdFsxXVswXSA9IHNpbmgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gc2luaCh4WzFd
WzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBzaW5oKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVsw
XSA9IHNpbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luaCh4WzJdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMl0gPSBzaW5oKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9Cito
YWxmM3g0IHNpbmgoaGFsZjN4NCB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0
WzBdWzBdID0gc2luaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBzaW5oKHhbMF1bMV0p
OworICAgIHJlc3VsdFswXVsyXSA9IHNpbmgoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0g
c2luaCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW5oKHhbMV1bMF0pOworICAgIHJl
c3VsdFsxXVsxXSA9IHNpbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gc2luaCh4WzFd
WzJdKTsKKyAgICByZXN1bHRbMV1bM10gPSBzaW5oKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVsw
XSA9IHNpbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luaCh4WzJdWzFdKTsKKyAg
ICByZXN1bHRbMl1bMl0gPSBzaW5oKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHNpbmgo
eFsyXVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgc2luaChoYWxmNHgyIHgp
IHsKKyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW5oKHhbMF1bMF0p
OworICAgIHJlc3VsdFswXVsxXSA9IHNpbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
c2luaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW5oKHhbMV1bMV0pOworICAgIHJl
c3VsdFsyXVswXSA9IHNpbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gc2luaCh4WzJd
WzFdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzaW5oKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsx
XSA9IHNpbmgoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDMgc2luaCho
YWxmNHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBzaW5o
KHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHNpbmgoeFswXVsxXSk7CisgICAgcmVzdWx0
WzBdWzJdID0gc2luaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSBzaW5oKHhbMV1bMF0p
OworICAgIHJlc3VsdFsxXVsxXSA9IHNpbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0g
c2luaCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzaW5oKHhbMl1bMF0pOworICAgIHJl
c3VsdFsyXVsxXSA9IHNpbmgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2luaCh4WzJd
WzJdKTsKKyAgICByZXN1bHRbM11bMF0gPSBzaW5oKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsx
XSA9IHNpbmgoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gc2luaCh4WzNdWzJdKTsKKyAg
ICByZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCBzaW5oKGhhbGY0eDQgeCkgeworICAgIGhhbGY0
eDQgcmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHNpbmgoeFswXVswXSk7CisgICAgcmVzdWx0
WzBdWzFdID0gc2luaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSBzaW5oKHhbMF1bMl0p
OworICAgIHJlc3VsdFswXVszXSA9IHNpbmgoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0g
c2luaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBzaW5oKHhbMV1bMV0pOworICAgIHJl
c3VsdFsxXVsyXSA9IHNpbmgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gc2luaCh4WzFd
WzNdKTsKKyAgICByZXN1bHRbMl1bMF0gPSBzaW5oKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsx
XSA9IHNpbmgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gc2luaCh4WzJdWzJdKTsKKyAg
ICByZXN1bHRbMl1bM10gPSBzaW5oKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IHNpbmgo
eFszXVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gc2luaCh4WzNdWzFdKTsKKyAgICByZXN1bHRb
M11bMl0gPSBzaW5oKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IHNpbmgoeFszXVszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIHRhbmgoaGFsZjIgeCkgeworICAgIGhhbGYy
IHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB0YW5oKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IHRh
bmgoeFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIHRhbmgoaGFsZjMgeCkgewor
ICAgIGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSB0YW5oKHhbMF0pOworICAgIHJlc3Vs
dFsxXSA9IHRhbmgoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gdGFuaCh4WzJdKTsKKyAgICByZXR1
cm4gcmVzdWx0OworfQoraGFsZjQgdGFuaChoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVzdWx0Owor
ICAgIHJlc3VsdFswXSA9IHRhbmgoeFswXSk7CisgICAgcmVzdWx0WzFdID0gdGFuaCh4WzFdKTsK
KyAgICByZXN1bHRbMl0gPSB0YW5oKHhbMl0pOworICAgIHJlc3VsdFszXSA9IHRhbmgoeFszXSk7
CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgdGFuaChoYWxmMngyIHgpIHsKKyAgICBo
YWxmMngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW5oKHhbMF1bMF0pOworICAgIHJl
c3VsdFswXVsxXSA9IHRhbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuaCh4WzFd
WzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1
bHQ7Cit9CitoYWxmMngzIHRhbmgoaGFsZjJ4MyB4KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7Cisg
ICAgcmVzdWx0WzBdWzBdID0gdGFuaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW5o
KHhbMF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IHRhbmgoeFswXVsyXSk7CisgICAgcmVzdWx0
WzFdWzBdID0gdGFuaCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW5oKHhbMV1bMV0p
OworICAgIHJlc3VsdFsxXVsyXSA9IHRhbmgoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsK
K30KK2hhbGYyeDQgdGFuaChoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICBy
ZXN1bHRbMF1bMF0gPSB0YW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbmgoeFsw
XVsxXSk7CisgICAgcmVzdWx0WzBdWzJdID0gdGFuaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1b
M10gPSB0YW5oKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IHRhbmgoeFsxXVswXSk7Cisg
ICAgcmVzdWx0WzFdWzFdID0gdGFuaCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSB0YW5o
KHhbMV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IHRhbmgoeFsxXVszXSk7CisgICAgcmV0dXJu
IHJlc3VsdDsKK30KK2hhbGYzeDIgdGFuaChoYWxmM3gyIHgpIHsKKyAgICBoYWxmM3gyIHJlc3Vs
dDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW5oKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9
IHRhbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFuaCh4WzFdWzBdKTsKKyAgICBy
ZXN1bHRbMV1bMV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJlc3VsdFsyXVswXSA9IHRhbmgoeFsy
XVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuaCh4WzJdWzFdKTsKKyAgICByZXR1cm4gcmVz
dWx0OworfQoraGFsZjN4MyB0YW5oKGhhbGYzeDMgeCkgeworICAgIGhhbGYzeDMgcmVzdWx0Owor
ICAgIHJlc3VsdFswXVswXSA9IHRhbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBdWzFdID0gdGFu
aCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0YW5oKHhbMF1bMl0pOworICAgIHJlc3Vs
dFsxXVswXSA9IHRhbmgoeFsxXVswXSk7CisgICAgcmVzdWx0WzFdWzFdID0gdGFuaCh4WzFdWzFd
KTsKKyAgICByZXN1bHRbMV1bMl0gPSB0YW5oKHhbMV1bMl0pOworICAgIHJlc3VsdFsyXVswXSA9
IHRhbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuaCh4WzJdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSB0YW5oKHhbMl1bMl0pOworICAgIHJldHVybiByZXN1bHQ7Cit9CitoYWxm
M3g0IHRhbmgoaGFsZjN4NCB4KSB7CisgICAgaGFsZjN4NCByZXN1bHQ7CisgICAgcmVzdWx0WzBd
WzBdID0gdGFuaCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSB0YW5oKHhbMF1bMV0pOwor
ICAgIHJlc3VsdFswXVsyXSA9IHRhbmgoeFswXVsyXSk7CisgICAgcmVzdWx0WzBdWzNdID0gdGFu
aCh4WzBdWzNdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW5oKHhbMV1bMF0pOworICAgIHJlc3Vs
dFsxXVsxXSA9IHRhbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdGFuaCh4WzFdWzJd
KTsKKyAgICByZXN1bHRbMV1bM10gPSB0YW5oKHhbMV1bM10pOworICAgIHJlc3VsdFsyXVswXSA9
IHRhbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuaCh4WzJdWzFdKTsKKyAgICBy
ZXN1bHRbMl1bMl0gPSB0YW5oKHhbMl1bMl0pOworICAgIHJlc3VsdFsyXVszXSA9IHRhbmgoeFsy
XVszXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDIgdGFuaChoYWxmNHgyIHgpIHsK
KyAgICBoYWxmNHgyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW5oKHhbMF1bMF0pOwor
ICAgIHJlc3VsdFswXVsxXSA9IHRhbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFu
aCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsyXVswXSA9IHRhbmgoeFsyXVswXSk7CisgICAgcmVzdWx0WzJdWzFdID0gdGFuaCh4WzJdWzFd
KTsKKyAgICByZXN1bHRbM11bMF0gPSB0YW5oKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9
IHRhbmgoeFszXVsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGY0eDMgdGFuaChoYWxm
NHgzIHgpIHsKKyAgICBoYWxmNHgzIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSB0YW5oKHhb
MF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IHRhbmgoeFswXVsxXSk7CisgICAgcmVzdWx0WzBd
WzJdID0gdGFuaCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMV1bMF0gPSB0YW5oKHhbMV1bMF0pOwor
ICAgIHJlc3VsdFsxXVsxXSA9IHRhbmgoeFsxXVsxXSk7CisgICAgcmVzdWx0WzFdWzJdID0gdGFu
aCh4WzFdWzJdKTsKKyAgICByZXN1bHRbMl1bMF0gPSB0YW5oKHhbMl1bMF0pOworICAgIHJlc3Vs
dFsyXVsxXSA9IHRhbmgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gdGFuaCh4WzJdWzJd
KTsKKyAgICByZXN1bHRbM11bMF0gPSB0YW5oKHhbM11bMF0pOworICAgIHJlc3VsdFszXVsxXSA9
IHRhbmgoeFszXVsxXSk7CisgICAgcmVzdWx0WzNdWzJdID0gdGFuaCh4WzNdWzJdKTsKKyAgICBy
ZXR1cm4gcmVzdWx0OworfQoraGFsZjR4NCB0YW5oKGhhbGY0eDQgeCkgeworICAgIGhhbGY0eDQg
cmVzdWx0OworICAgIHJlc3VsdFswXVswXSA9IHRhbmgoeFswXVswXSk7CisgICAgcmVzdWx0WzBd
WzFdID0gdGFuaCh4WzBdWzFdKTsKKyAgICByZXN1bHRbMF1bMl0gPSB0YW5oKHhbMF1bMl0pOwor
ICAgIHJlc3VsdFswXVszXSA9IHRhbmgoeFswXVszXSk7CisgICAgcmVzdWx0WzFdWzBdID0gdGFu
aCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSB0YW5oKHhbMV1bMV0pOworICAgIHJlc3Vs
dFsxXVsyXSA9IHRhbmgoeFsxXVsyXSk7CisgICAgcmVzdWx0WzFdWzNdID0gdGFuaCh4WzFdWzNd
KTsKKyAgICByZXN1bHRbMl1bMF0gPSB0YW5oKHhbMl1bMF0pOworICAgIHJlc3VsdFsyXVsxXSA9
IHRhbmgoeFsyXVsxXSk7CisgICAgcmVzdWx0WzJdWzJdID0gdGFuaCh4WzJdWzJdKTsKKyAgICBy
ZXN1bHRbMl1bM10gPSB0YW5oKHhbMl1bM10pOworICAgIHJlc3VsdFszXVswXSA9IHRhbmgoeFsz
XVswXSk7CisgICAgcmVzdWx0WzNdWzFdID0gdGFuaCh4WzNdWzFdKTsKKyAgICByZXN1bHRbM11b
Ml0gPSB0YW5oKHhbM11bMl0pOworICAgIHJlc3VsdFszXVszXSA9IHRhbmgoeFszXVszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyIGNlaWwoaGFsZjIgeCkgeworICAgIGhhbGYyIHJl
c3VsdDsKKyAgICByZXN1bHRbMF0gPSBjZWlsKHhbMF0pOworICAgIHJlc3VsdFsxXSA9IGNlaWwo
eFsxXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYzIGNlaWwoaGFsZjMgeCkgeworICAg
IGhhbGYzIHJlc3VsdDsKKyAgICByZXN1bHRbMF0gPSBjZWlsKHhbMF0pOworICAgIHJlc3VsdFsx
XSA9IGNlaWwoeFsxXSk7CisgICAgcmVzdWx0WzJdID0gY2VpbCh4WzJdKTsKKyAgICByZXR1cm4g
cmVzdWx0OworfQoraGFsZjQgY2VpbChoYWxmNCB4KSB7CisgICAgaGFsZjQgcmVzdWx0OworICAg
IHJlc3VsdFswXSA9IGNlaWwoeFswXSk7CisgICAgcmVzdWx0WzFdID0gY2VpbCh4WzFdKTsKKyAg
ICByZXN1bHRbMl0gPSBjZWlsKHhbMl0pOworICAgIHJlc3VsdFszXSA9IGNlaWwoeFszXSk7Cisg
ICAgcmV0dXJuIHJlc3VsdDsKK30KK2hhbGYyeDIgY2VpbChoYWxmMngyIHgpIHsKKyAgICBoYWxm
MngyIHJlc3VsdDsKKyAgICByZXN1bHRbMF1bMF0gPSBjZWlsKHhbMF1bMF0pOworICAgIHJlc3Vs
dFswXVsxXSA9IGNlaWwoeFswXVsxXSk7CisgICAgcmVzdWx0WzFdWzBdID0gY2VpbCh4WzFdWzBd
KTsKKyAgICByZXN1bHRbMV1bMV0gPSBjZWlsKHhbMV1bMV0pOworICAgIHJldHVybiByZXN1bHQ7
Cit9CitoYWxmMngzIGNlaWwoaGFsZjJ4MyB4KSB7CisgICAgaGFsZjJ4MyByZXN1bHQ7CisgICAg
cmVzdWx0WzBdWzBdID0gY2VpbCh4WzBdWzBdKTsKKyAgICByZXN1bHRbMF1bMV0gPSBjZWlsKHhb
MF1bMV0pOworICAgIHJlc3VsdFswXVsyXSA9IGNlaWwoeFswXVsyXSk7CisgICAgcmVzdWx0WzFd
WzBdID0gY2VpbCh4WzFdWzBdKTsKKyAgICByZXN1bHRbMV1bMV0gPSBjZWlsKHhbMV1bMV0pOwor
ICAgIHJlc3VsdFsxXVsyXSA9IGNlaWwoeFsxXVsyXSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30K
K2hhbGYyeDQgY2VpbChoYWxmMng0IHgpIHsKKyAgICBoYWxmMng0IHJlc3VsdDsKKyAgICByZXN1
bHRbMF1bMF0gPSBjZWlsKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNlaWwoeFswXVsx
XSk7CisgICAgcmVzdWx0WzBdWzJdID0gY2VpbCh4WzBdWzJdKTsKKyAgICByZXN1bHRbMF1bM10g
PSBjZWlsKHhbMF1bM10pOworICAgIHJlc3VsdFsxXVswXSA9IGNlaWwoeFsxXVswXSk7CisgICAg
cmVzdWx0WzFdWzFdID0gY2VpbCh4WzFdWzFdKTsKKyAgICByZXN1bHRbMV1bMl0gPSBjZWlsKHhb
MV1bMl0pOworICAgIHJlc3VsdFsxXVszXSA9IGNlaWwoeFsxXVszXSk7CisgICAgcmV0dXJuIHJl
c3VsdDsKK30KK2hhbGYzeDIgY2VpbChoYWxmM3gyIHgpIHsKKyAgICBoYWxmM3gyIHJlc3VsdDsK
KyAgICByZXN1bHRbMF1bMF0gPSBjZWlsKHhbMF1bMF0pOworICAgIHJlc3VsdFswXVsxXSA9IGNl
aWw